|
|||||||||
| Home >> All >> java >> [ net overview ] | PREV CLASS NEXT CLASS | ||||||||
SUMMARY: JAVADOC | SOURCE | DOWNLOAD | NESTED | FIELD | CONSTR | METHOD |
DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.net
Class SocketPermission

java.lang.Objectjava.security.Permission
java.net.SocketPermission
- All Implemented Interfaces:
- java.security.Guard, java.io.Serializable
- public final class SocketPermission
- extends java.security.Permission
- implements java.io.Serializable
- extends java.security.Permission
This class models a specific set of permssions for connecting to a host. There are two elements to this, the host/port combination and the permission list.
The host/port combination is specified as followed
hostname[:[-]port[-[port]]]
The hostname portion can be either a hostname or IP address. If it is a hostname, a wildcard is allowed in hostnames. This wildcard is a "*" and matches one or more characters. Only one "*" may appear in the host and it must be the leftmost character. For example, "*.urbanophile.com" matches all hosts in the "urbanophile.com" domain.
The port portion can be either a single value, or a range of values treated as inclusive. The first or the last port value in the range can be omitted in which case either the minimum or maximum legal value for a port (respectively) is used by default. Here are some examples:
- 8080 - Represents port 8080 only
- 2000-3000 - Represents ports 2000 through 3000 inclusive
- -4000 - Represents ports 0 through 4000 inclusive
- 1024- - Represents ports 1024 through 65535 inclusive
The permission list is a comma separated list of individual permissions. These individual permissions are:
accept connect listen resolve
The "listen" permission is only relevant if the host is localhost. If any permission at all is specified, then resolve permission is implied to exist.
Here are a variety of examples of how to create SocketPermission's
SocketPermission("www.urbanophile.com", "connect");
Can connect to any port on www.urbanophile.com
SocketPermission("www.urbanophile.com:80", "connect,accept");
Can connect to or accept connections from www.urbanophile.com on port 80
SocketPermission("localhost:1024-", "listen,accept,connect");
Can connect to, accept from, an listen on any local port number 1024
and up.
SocketPermission("*.edu", "connect");
Can connect to any host in the edu domain
SocketPermission("197.197.20.1", "accept");
Can accept connections from 197.197.20.1
This class also supports IPv6 addresses. These should be specified in either RFC 2732 format or in full uncompressed form.
- Since:
- 1.2
| Field Summary | |
private java.lang.String |
actions
A comma separated list of actions for which we have permission |
private java.lang.String |
hostport
A hostname/port combination as described above |
(package private) static long |
serialVersionUID
|
| Fields inherited from class java.security.Permission |
|
| Constructor Summary | |
SocketPermission(java.lang.String hostport,
java.lang.String actions)
Initializes a new instance of SocketPermission with the
specified host/port combination and actions string. |
|
| Method Summary | |
boolean |
equals(java.lang.Object obj)
Tests this object for equality against another. |
java.lang.String |
getActions()
Returns the list of permission actions in this object in canonical order. |
int |
hashCode()
Returns a hash code value for this object. |
boolean |
implies(java.security.Permission perm)
Returns true if the permission object passed it is implied by the this permission. |
java.security.PermissionCollection |
newPermissionCollection()
Returns a new PermissionCollection object that can hold
SocketPermission's. |
| Methods inherited from class java.security.Permission |
checkGuard, getName, toString |
| Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Field Detail |
serialVersionUID
static final long serialVersionUID
- See Also:
- Constant Field Values
hostport
private transient java.lang.String hostport
- A hostname/port combination as described above
actions
private java.lang.String actions
- A comma separated list of actions for which we have permission
| Constructor Detail |
SocketPermission
public SocketPermission(java.lang.String hostport, java.lang.String actions)
- Initializes a new instance of
SocketPermissionwith the specified host/port combination and actions string.
| Method Detail |
equals
public boolean equals(java.lang.Object obj)
- Tests this object for equality against another. This will be true if
and only if the passed object is an instance of
SocketPermissionand both its hostname/port combination and permissions string are identical.
hashCode
public int hashCode()
- Returns a hash code value for this object. Overrides the
Permission.hashCode().
getActions
public java.lang.String getActions()
- Returns the list of permission actions in this object in canonical
order. The canonical order is "connect,listen,accept,resolve"
newPermissionCollection
public java.security.PermissionCollection newPermissionCollection()
- Returns a new
PermissionCollectionobject that can holdSocketPermission's.
implies
public boolean implies(java.security.Permission perm)
- Returns true if the permission object passed it is implied by the
this permission. This will be true if:
- The argument is of type
SocketPermission - The actions list of the argument are in this object's actions
- The port range of the argument is within this objects port range
- The hostname is equal to or a subset of this objects hostname
The argument's hostname will be a subset of this object's hostname if:
- The argument's hostname or IP address is equal to this object's.
- The argument's canonical hostname is equal to this object's.
- The argument's canonical name matches this domains hostname with wildcards
- The argument is of type
|
|||||||||
| Home >> All >> java >> [ net overview ] | PREV CLASS NEXT CLASS | ||||||||
SUMMARY: JAVADOC | SOURCE | DOWNLOAD | NESTED | FIELD | CONSTR | METHOD |
DETAIL: FIELD | CONSTR | METHOD | ||||||||
JAVADOC