Module java.base
Package java.security

Class Identity

java.lang.Object
java.security.Identity
所有已实现的接口:
Serializable, Principal
直接已知的子类:
IdentityScope, Signer

@Deprecated(since="1.2", forRemoval=true) public abstract class Identity extends Object implements Principal, Serializable
Deprecated, for removal: This API element is subject to removal in a future version.
This class is deprecated and subject to removal in a future version of Java SE. It has been replaced by java.security.KeyStore, the java.security.cert package, and java.security.Principal.

此类表示身份:现实世界中的对象,如人员、公司或组织,其身份可以使用其公钥进行身份验证。身份也可以是更抽象(或具体)的构造,如守护线程或智能卡。

所有Identity对象都有一个名称和一个公钥。名称是不可变的。身份也可以被范围化。也就是说,如果指定Identity具有特定范围,则Identity的名称和公钥在该范围内是唯一的。

Identity还具有一组证书(所有证明其自身公钥的证书)。这些证书中指定的Principal名称不需要相同,只需要密钥相同。

Identity可以被子类化,以包括邮政地址、电子邮件地址、电话号码、面部和标志的图像等。

自版本:
1.1
参见:
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    已弃用,用于移除:此API元素可能在将来的版本中被移除。
    仅用于序列化的构造函数。
     
    Identity(String name)
    已弃用,用于移除:此API元素可能在将来的版本中被移除。
    使用指定的名称和无范围构造一个Identity
     
    Identity(String name, IdentityScope scope)
    已弃用,用于移除:此API元素可能在将来的版本中被移除。
    使用指定的名称和范围构造一个Identity
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addCertificate(Certificate certificate)
    已弃用,用于移除:此API元素可能在将来的版本中被移除。
    为此Identity添加证书。
    已弃用,用于移除:此API元素可能在将来的版本中被移除。
    返回此Identity的所有证书的副本。
    final boolean
    equals(Object identity)
    已弃用,用于移除:此API元素可能在将来的版本中被移除。
    检查指定对象与此Identity之间的相等性。
    已弃用,用于移除:此API元素可能在将来的版本中被移除。
    返回先前为此Identity指定的一般信息。
    final String
    已弃用,用于移除:此API元素可能在将来的版本中被移除。
    返回此身份的名称。
    已弃用,用于移除:此API元素可能在将来的版本中被移除。
    返回此身份的公钥。
    已弃用,用于移除:此API元素可能在将来的版本中被移除。
    返回此身份的范围。
    int
    已弃用,用于移除:此API元素可能在将来的版本中被移除。
    返回此Identity的哈希码。
    protected boolean
    已弃用,用于移除:此API元素可能在将来的版本中被移除。
    检查指定的Identity对象与此Identity之间的相等性。
    void
    已弃用,用于移除:此API元素可能在将来的版本中被移除。
    从此Identity中移除证书。
    void
    setInfo(String info)
    已弃用,用于移除:此API元素可能在将来的版本中被移除。
    为此Identity指定一般信息字符串。
    void
    已弃用,用于移除:此API元素可能在将来的版本中被移除。
    设置此身份的公钥。
    已弃用,用于移除:此API元素可能在将来的版本中被移除。
    返回描述此Identity的简短字符串,告知其名称及其范围(如果有)。
    toString(boolean detailed)
    已弃用,用于移除:此API元素可能在将来的版本中被移除。
    返回此Identity的字符串表示形式,可选择提供比不带任何参数的toString方法更多的细节。

    Methods declared in class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods declared in interface java.security.Principal

    implies
  • Constructor Details

    • Identity

      protected Identity()
      Deprecated, for removal: This API element is subject to removal in a future version.
      仅用于序列化的构造函数。
    • Identity

      public Identity(String name, IdentityScope scope) throws KeyManagementException
      Deprecated, for removal: This API element is subject to removal in a future version.
      使用指定的名称和范围构造一个Identity
      参数:
      name - Identity的名称。
      scope - Identity的范围。
      抛出:
      KeyManagementException - 如果范围中已经存在具有相同名称的Identity
    • Identity

      public Identity(String name)
      Deprecated, for removal: This API element is subject to removal in a future version.
      使用指定的名称和无范围构造一个Identity
      参数:
      name - 身份名称。
  • Method Details

    • getName

      public final String getName()
      Deprecated, for removal: This API element is subject to removal in a future version.
      返回此身份的名称。
      指定者:
      getName 在接口 Principal
      返回:
      Identity的名称。
    • getScope

      public final IdentityScope getScope()
      Deprecated, for removal: This API element is subject to removal in a future version.
      返回此身份的范围。
      返回:
      Identity的范围。
    • getPublicKey

      public PublicKey getPublicKey()
      Deprecated, for removal: This API element is subject to removal in a future version.
      返回此身份的公钥。
      返回:
      Identity的公钥。
      参见:
    • setPublicKey

      public void setPublicKey(PublicKey key) throws KeyManagementException
      Deprecated, for removal: This API element is subject to removal in a future version.
      设置此身份的公钥。此操作将删除旧密钥和此身份的所有证书。

      首先,如果存在安全管理器,则将以"setIdentityPublicKey"作为参数调用其checkSecurityAccess方法,以查看是否可以设置公钥。

      参数:
      key - 此Identity的公钥。
      抛出:
      KeyManagementException - 如果范围中另一个身份具有相同的公钥,或者发生其他异常。
      SecurityException - 如果存在安全管理器且其checkSecurityAccess方法不允许设置公钥。
      参见:
    • setInfo

      public void setInfo(String info)
      Deprecated, for removal: This API element is subject to removal in a future version.
      为此Identity指定一般信息字符串。

      首先,如果存在安全管理器,则将以"setIdentityInfo"作为参数调用其checkSecurityAccess方法,以查看是否可以指定信息字符串。

      参数:
      info - 信息字符串。
      抛出:
      SecurityException - 如果存在安全管理器且其checkSecurityAccess方法不允许设置信息字符串。
      参见:
    • getInfo

      public String getInfo()
      Deprecated, for removal: This API element is subject to removal in a future version.
      返回先前为此Identity指定的一般信息。
      返回:
      关于此Identity的一般信息。
      参见:
    • addCertificate

      public void addCertificate(Certificate certificate) throws KeyManagementException
      Deprecated, for removal: This API element is subject to removal in a future version.
      为此Identity添加证书。如果Identity具有公钥,则证书中的公钥必须相同,如果Identity没有公钥,则将设置身份的公钥为证书中指定的公钥。

      首先,如果存在安全管理器,则将以"addIdentityCertificate"作为参数调用其checkSecurityAccess方法,以查看是否可以添加证书。

      参数:
      certificate - 要添加的证书。
      抛出:
      KeyManagementException - 如果证书无效,要添加的证书中的公钥与此身份的公钥冲突,或者发生其他异常。
      SecurityException - 如果存在安全管理器且其checkSecurityAccess方法不允许添加证书。
      参见:
    • removeCertificate

      public void removeCertificate(Certificate certificate) throws KeyManagementException
      Deprecated, for removal: This API element is subject to removal in a future version.
      从此Identity中删除证书。

      首先,如果存在安全管理器,则调用其checkSecurityAccess方法,参数为"removeIdentityCertificate",以查看是否可以删除证书。

      参数:
      certificate - 要删除的证书。
      抛出:
      KeyManagementException - 如果缺少证书,或者发生其他异常。
      SecurityException - 如果存在安全管理器且其checkSecurityAccess方法不允许删除证书。
      参见:
    • certificates

      public Certificate[] certificates()
      Deprecated, for removal: This API element is subject to removal in a future version.
      返回此Identity的所有证书的副本。
      返回:
      Identity的所有证书的副本。
    • equals

      public final boolean equals(Object identity)
      Deprecated, for removal: This API element is subject to removal in a future version.
      测试指定对象与此Identity之间的相等性。首先检查实体是否实际引用相同对象,如果是,则返回true。接下来,检查实体是否具有相同的名称和相同的范围。如果是,则方法返回true。否则,调用identityEquals,子类应该重写该方法。
      指定者:
      equals 在接口 Principal
      覆盖:
      equals 在类 Object
      参数:
      identity - 用于与此Identity进行相等性测试的对象。
      返回:
      如果对象被视为相等,则返回true,否则返回false
      参见:
    • identityEquals

      protected boolean identityEquals(Identity identity)
      Deprecated, for removal: This API element is subject to removal in a future version.
      测试指定的Identity与此Identity之间的相等性。应该由子类重写此方法以进行相等性测试。默认行为是如果名称和公钥相等则返回true
      参数:
      identity - 用于与此identity进行相等性测试的身份。
      返回:
      如果身份被视为相等,则返回true,否则返回false
      参见:
    • toString

      public String toString()
      Deprecated, for removal: This API element is subject to removal in a future version.
      返回描述此Identity的简短字符串,告知其名称和其范围(如果有)。

      首先,如果存在安全管理器,则调用其checkSecurityAccess方法,参数为"printIdentity",以查看是否可以返回该字符串。

      指定者:
      toString 在接口 Principal
      覆盖:
      toString 在类 Object
      返回:
      关于此Identity的信息,例如其名称和其范围的名称(如果有)。
      抛出:
      SecurityException - 如果存在安全管理器且其checkSecurityAccess方法不允许返回描述此Identity的字符串。
      参见:
    • toString

      public String toString(boolean detailed)
      Deprecated, for removal: This API element is subject to removal in a future version.
      返回此Identity的字符串表示形式,可选择提供比不带任何参数的toString方法更多的细节。

      首先,如果存在安全管理器,则调用其checkSecurityAccess方法,参数为"printIdentity",以查看是否可以返回该字符串。

      参数:
      detailed - 是否提供详细信息。
      返回:
      关于此Identity的信息。如果detailedtrue,则此方法返回比不带任何参数的toString方法更多的信息。
      抛出:
      SecurityException - 如果存在安全管理器且其checkSecurityAccess方法不允许返回描述此Identity的字符串。
      参见:
    • hashCode

      public int hashCode()
      Deprecated, for removal: This API element is subject to removal in a future version.
      返回此Identity的哈希码。
      指定者:
      hashCode 在接口 Principal
      覆盖:
      hashCode 在类 Object
      返回:
      Identity的哈希码。
      参见: