| java.lang.Object java.security.Identity
All known Subclasses: java.security.Signer, java.security.IdentityScope, sun.security.provider.SystemIdentity,
Identity | abstract public class Identity implements Principal,Serializable(Code) | | This class represents identities: real-world objects such as people,
companies or organizations whose identities can be authenticated using
their public keys. Identities may also be more abstract (or concrete)
constructs, such as daemon threads or smart cards.
All Identity objects have a name and a public key. Names are
immutable. Identities may also be scoped. That is, if an Identity is
specified to have a particular scope, then the name and public
key of the Identity are unique within that scope.
An Identity also has a set of certificates (all certifying its own
public key). The Principal names specified in these certificates need
not be the same, only the key.
An Identity can be subclassed, to include postal and email addresses,
telephone numbers, images of faces and logos, and so on.
See Also: IdentityScope See Also: Signer See Also: Principal version: 1.56 author: Benjamin Renaud |
Constructor Summary | |
protected | Identity() Constructor for serialization only. | public | Identity(String name, IdentityScope scope) Constructs an identity with the specified name and scope.
Parameters: name - the identity name. | public | Identity(String name) Constructs an identity with the specified name and no scope. |
Method Summary | |
public void | addCertificate(Certificate certificate) Adds a certificate for this identity. | public Certificate[] | certificates() Returns a copy of all the certificates for this identity. | final public boolean | equals(Object identity) Tests for equality between the specified object and this identity.
This first tests to see if the entities actually refer to the same
object, in which case it returns true. | String | fullName() | public String | getInfo() Returns general information previously specified for this identity. | final public String | getName() Returns this identity's name. | public PublicKey | getPublicKey() Returns this identity's public key. | final public IdentityScope | getScope() Returns this identity's scope. | public int | hashCode() Returns a hashcode for this identity. | protected boolean | identityEquals(Identity identity) Tests for equality between the specified identity and this identity.
This method should be overriden by subclasses to test for equality. | String | printCertificates() | String | printKeys() | public void | removeCertificate(Certificate certificate) Removes a certificate from this identity.
First, if there is a security manager, its checkSecurityAccess
method is called with "removeIdentityCertificate"
as its argument to see if it's ok to remove a certificate. | public void | setInfo(String info) Specifies a general information string for this identity.
First, if there is a security manager, its checkSecurityAccess
method is called with "setIdentityInfo"
as its argument to see if it's ok to specify the information string. | public void | setPublicKey(PublicKey key) Sets this identity's public key. | public String | toString() Returns a short string describing this identity, telling its
name and its scope (if any).
First, if there is a security manager, its checkSecurityAccess
method is called with "printIdentity"
as its argument to see if it's ok to return the string. | public String | toString(boolean detailed) Returns a string representation of this identity, with
optionally more details than that provided by the
toString method without any arguments.
First, if there is a security manager, its checkSecurityAccess
method is called with "printIdentity"
as its argument to see if it's ok to return the string. |
certificates | Vector certificates(Code) | | The certificates for this identity.
|
info | String info(Code) | | Generic, descriptive information about the identity.
|
Identity | protected Identity()(Code) | | Constructor for serialization only.
|
Identity | public Identity(String name)(Code) | | Constructs an identity with the specified name and no scope.
Parameters: name - the identity name. |
addCertificate | public void addCertificate(Certificate certificate) throws KeyManagementException(Code) | | Adds a certificate for this identity. If the identity has a public
key, the public key in the certificate must be the same, and if
the identity does not have a public key, the identity's
public key is set to be that specified in the certificate.
First, if there is a security manager, its checkSecurityAccess
method is called with "addIdentityCertificate"
as its argument to see if it's ok to add a certificate.
Parameters: certificate - the certificate to be added. exception: KeyManagementException - if the certificate is not valid,if the public key in the certificate being added conflicts withthis identity's public key, or if another exception occurs. exception: SecurityException - if a security manager exists and its checkSecurityAccess method doesn't allow adding a certificate. See Also: SecurityManager.checkSecurityAccess |
certificates | public Certificate[] certificates()(Code) | | Returns a copy of all the certificates for this identity.
a copy of all the certificates for this identity. |
equals | final public boolean equals(Object identity)(Code) | | Tests for equality between the specified object and this identity.
This first tests to see if the entities actually refer to the same
object, in which case it returns true. Next, it checks to see if
the entities have the same name and the same scope. If they do,
the method returns true. Otherwise, it calls
Identity.identityEquals(Identity) identityEquals , which subclasses should
override.
Parameters: identity - the object to test for equality with this identity. true if the objects are considered equal, false otherwise. See Also: Identity.identityEquals See Also: |
fullName | String fullName()(Code) | | Returns a parsable name for identity: identityName.scopeName
|
getInfo | public String getInfo()(Code) | | Returns general information previously specified for this identity.
general information about this identity. See Also: Identity.setInfo |
getName | final public String getName()(Code) | | Returns this identity's name.
the name of this identity. |
getScope | final public IdentityScope getScope()(Code) | | Returns this identity's scope.
the scope of this identity. |
hashCode | public int hashCode()(Code) | | Returns a hashcode for this identity.
a hashcode for this identity. |
identityEquals | protected boolean identityEquals(Identity identity)(Code) | | Tests for equality between the specified identity and this identity.
This method should be overriden by subclasses to test for equality.
The default behavior is to return true if the names and public keys
are equal.
Parameters: identity - the identity to test for equality with this identity. true if the identities are considered equal, falseotherwise. See Also: Identity.equals See Also: |
removeCertificate | public void removeCertificate(Certificate certificate) throws KeyManagementException(Code) | | Removes a certificate from this identity.
First, if there is a security manager, its checkSecurityAccess
method is called with "removeIdentityCertificate"
as its argument to see if it's ok to remove a certificate.
Parameters: certificate - the certificate to be removed. exception: KeyManagementException - if the certificate ismissing, or if another exception occurs. exception: SecurityException - if a security manager exists and its checkSecurityAccess method doesn't allow removing a certificate. See Also: SecurityManager.checkSecurityAccess |
setInfo | public void setInfo(String info)(Code) | | Specifies a general information string for this identity.
First, if there is a security manager, its checkSecurityAccess
method is called with "setIdentityInfo"
as its argument to see if it's ok to specify the information string.
Parameters: info - the information string. exception: SecurityException - if a security manager exists and its checkSecurityAccess method doesn't allow setting the information string. See Also: Identity.getInfo See Also: SecurityManager.checkSecurityAccess |
setPublicKey | public void setPublicKey(PublicKey key) throws KeyManagementException(Code) | | Sets this identity's public key. The old key and all of this
identity's certificates are removed by this operation.
First, if there is a security manager, its checkSecurityAccess
method is called with "setIdentityPublicKey"
as its argument to see if it's ok to set the public key.
Parameters: key - the public key for this identity. exception: KeyManagementException - if another identity in the identity's scope has the same public key, or if another exception occurs. exception: SecurityException - if a security manager exists and its checkSecurityAccess method doesn't allow setting the public key. See Also: Identity.getPublicKey See Also: SecurityManager.checkSecurityAccess |
toString | public String toString()(Code) | | Returns a short string describing this identity, telling its
name and its scope (if any).
First, if there is a security manager, its checkSecurityAccess
method is called with "printIdentity"
as its argument to see if it's ok to return the string.
information about this identity, such as its name and the name of its scope (if any). exception: SecurityException - if a security manager exists and its checkSecurityAccess method doesn't allow returning a string describing this identity. See Also: SecurityManager.checkSecurityAccess |
toString | public String toString(boolean detailed)(Code) | | Returns a string representation of this identity, with
optionally more details than that provided by the
toString method without any arguments.
First, if there is a security manager, its checkSecurityAccess
method is called with "printIdentity"
as its argument to see if it's ok to return the string.
Parameters: detailed - whether or not to provide detailed information. information about this identity. If detailed is true, then this method returns more information than that provided by the toString method without any arguments. exception: SecurityException - if a security manager exists and its checkSecurityAccess method doesn't allow returning a string describing this identity. See Also: Identity.toString See Also: SecurityManager.checkSecurityAccess |
|
|