java.net.NetPermission Class in Java
Last Updated :
13 Jun, 2022
NetPermission class is used to allow network permissions. NetPermission class extends BasicPermission class. It is a “named” permission i.e it contains a name but no action.
Permission name |
What permission allows |
Risks associated with this permission |
allowHttpTrace |
This permission allows using the HTTP TRACE method in HttpURLConnection |
Attackers may use HTTP TRACE to access security in the HTTP headers |
getCookieHandler |
This permission allows getting the cookie handler that processes highly secure cookie information for this HTTP session |
Attackers may get a cookie handler and get access to highly secure cookie information |
getNetworkInformation |
This permission allows getting information about local network interfaces |
Attackers may get information about local hardware |
getProxySelector |
This permission allows the proxy selector to select which proxies to use when making network connections |
Attackers may get a ProxySelector and get information about the proxy hosts and ports of internal networks |
getResponseCache |
The permission allows accessing the local response cache |
Attackers may get access the local cache which may contain security information |
requestPasswordAuthentication |
This permission grants the ability to ask the authenticator for a password |
Attackers may steal this password |
setCookieHandler |
This permission allows setting the cookie handler that processes highly secure cookie information for this HTTP session |
Attackers may get a cookie handler and get access to highly secure cookie information |
setDefaultAuthenticator |
This allows to set an authenticator |
Attackers may set an authenticator and get security information |
setProxySelector |
This permission allows the proxy selector to set which proxies to use when making network connections |
Attackers may set a ProxySelector and get information about the proxy hosts and ports of internal networks |
setResponseCache |
The permission allows setting the local response cache |
Attackers may get access the local cache which may contain security information |
specifyStreamHandler |
The permission allows specifying a StreamHandler to create URLs |
Attackers may create a URL and get access to resources to which they normally not have access |
Syntax: Class declaration
public final class NetPermission
extends BasicPermission
Constructors of this class
Constructor |
Description |
NetPermission(String name) |
Used for creating a new NetPermission object with the given name |
NetPermission(String name, String action) |
Used for creating a new NetPermission object with the given name and action |
Methods inherited from class java.security.BasicPermission
Method |
Description |
equals(Object obj) |
Checks whether the two BasicPermission objects are equal or not |
getActions() |
Returns the actions in String format |
hashCode() |
Returns the hash value for this object |
implies(Permission permission) |
Checks whether the given permission is implied by this object or not |
newPermissionCollection() |
Returns a new PermissionCollection object |
Methods inherited from class java.security.Permission
Method |
Description |
checkGuard() |
Used to implement guard interface |
getName() |
Returns name of this permission object |
toString() |
Returns string representation of this permission object |
Methods inherited from class java.lang.Object |
clone(), finalize(), getClass(), notify(), notifyAll(), wait(), wait(), wait() |
Example 1:
Java
import java.net.NetPermission;
import java.security.Permission;
public class GFG {
public static void main(String[] args)
{
try {
Permission permission
= new NetPermission( "allowHttpTrace" );
System.out.println(permission.getName());
System.out.println(permission.getClass());
System.out.println(permission.hashCode());
}
catch (Exception e) {
e.printStackTrace();
}
}
}
|
Output:
allowHttpTrace
class java.net.NetPermission
303901780
Example 2:
Java
import java.net.NetPermission;
import java.security.Permission;
public class GFG {
public static void main(String[] args)
{
try {
Permission permission
= new NetPermission( "getCookieHandler" );
System.out.println(permission.getName());
System.out.println(permission.getClass());
System.out.println(permission.hashCode());
}
catch (Exception e) {
e.printStackTrace();
}
}
}
|
Output:
getCookieHandler
class java.net.NetPermission
1381623952
Example 3:
Java
import java.net.NetPermission;
import java.security.Permission;
public class GFG {
public static void main(String[] args)
{
try {
Permission Permission1 = new NetPermission(
"getNetworkInformation" );
Permission Permission2
= new NetPermission( "getProxySelector" );
if (Permission1.equals(Permission2)) {
System.out.println(
"Both permission are equal" );
}
else {
System.out.println(
"Both permission are not equal" );
}
}
catch (Exception e) {
e.printStackTrace();
}
}
}
|
Output:
Both permission are not equal
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...