所有类


javax.security.auth.kerberos
类 KerberosKey

java.lang.Object
  继承者 javax.security.auth.kerberos.KerberosKey
所有已实现的接口:
Serializable, Key, SecretKey, Destroyable

public class KerberosKey
   
   
   
   
   
extends Object
implements SecretKey, Destroyable

此类为 Kerberos 主体封装一个长期秘密密钥。

获取主体的密码和从主体生成秘密密钥的所有 Kerberos JAAS 登录模块都应该使用此类。在任何可以使用的地方,登录模块甚至可以直接从 Kerberos "keytab" 读取此秘密密钥。有时,例如在没有用户到用户 (user-to-user) 身份验证的情况下对服务器进行身份验证时,在身份验证过程的提交阶段,登录模块将在 Subject 的私有证书集中存储此类的实例。

如果应用程序需要从 Subject 访问 KerberosKey 实例,可能必须授予应用程序 PrivateCredentialPermission 权限。当应用程序依靠默认的 JGSS Kerberos 机制去访问 KerberosKey 时,不需要此权限。但在这种情况下,应用程序将需要适当的 ServicePermission 权限。

从以下版本开始:
1.4
另请参见:
序列化表格

构造方法摘要
KerberosKey(KerberosPrincipal principal, byte[] keyBytes, int keyType, int versionNum)
          当已知密钥类型和密钥版本号时,根据给出的字节构造 KerberosKey。
KerberosKey(KerberosPrincipal principal, char[] password, String algorithm)
          根据主体的密码构造 KerberosKey。
 
方法摘要
 void destroy()
          销毁此密钥。
 String getAlgorithm()
          返回此密钥的标准算法名称。
 byte[] getEncoded()
          返回秘密密钥的密钥材料。
 String getFormat()
          返回此秘密密钥的编码格式的名称。
 int getKeyType()
          返回此长期密钥的密钥类型。
 KerberosPrincipal getPrincipal()
          返回此密钥所属的主体。
 int getVersionNumber()
          返回密钥版本号。
 boolean isDestroyed()
          确定此密钥是否已经销毁。
 String toString()
          返回该对象的字符串表示。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

构造方法详细信息

KerberosKey

public KerberosKey(KerberosPrincipal principal,
                   byte[] keyBytes,
                   int keyType,
                   int versionNum)
当已知密钥类型和密钥版本号时,根据给出的字节构造 KerberosKey。当从 Kerberos "keytab" 读取秘密密钥信息时,可以使用此 KerberosKey。

参数:
principal - 此秘密密钥所属的主体
keyBytes - 秘密密钥的原始字节
keyType - 秘密密钥的密钥类型,由 Kerberos 协议规范定义。
versionNum - 此秘密密钥的版本号。

KerberosKey

public KerberosKey(KerberosPrincipal principal,
                   char[] password,
                   String algorithm)
根据主体的密码构造 KerberosKey。

参数:
principal - 此密码所属的主体
password - 应该用于计算密钥的密码
algorithm - 此密钥将使用的算法的名称。在假定默认算法为 "DES" 的情况下此参数可以为 null。
抛出:
IllegalArgumentException - 如果不支持传递的算法名称。
方法详细信息

getPrincipal

public final KerberosPrincipal getPrincipal()
返回此密钥所属的主体。

返回:
此密钥所属的主体。

getVersionNumber

public final int getVersionNumber()
返回密钥版本号。

返回:
密钥版本号。

getKeyType

public final int getKeyType()
返回此长期密钥的密钥类型。

返回:
密钥类型。

getAlgorithm

public final String getAlgorithm()
返回此密钥的标准算法名称。例如,"DES" 指示此密钥是一个 DES 密钥。有关标准算法名称的信息,请参阅 Java Cryptography Architecture API Specification & Reference 中的附录 A。 与此密钥有关联的算法的名称。

指定者:
接口 Key 中的 getAlgorithm
返回:
与此密钥关联的算法名称。

getFormat

public final String getFormat()
返回此秘密密钥的编码格式的名称。

指定者:
接口 Key 中的 getFormat
返回:
字符串 "RAW"。

getEncoded

public final byte[] getEncoded()
返回秘密密钥的密钥材料。

指定者:
接口 Key 中的 getEncoded
返回:
密钥材料。

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部