Class KerberosPrincipal

    • 字段详细信息

      • KRB_NT_UNKNOWN

        public static final int KRB_NT_UNKNOWN
        未知的名称类型。
        另请参见:
        常数字段值
      • KRB_NT_PRINCIPAL

        public static final int KRB_NT_PRINCIPAL
        用户主体名称类型。
        另请参见:
        常数字段值
      • KRB_NT_SRV_INST

        public static final int KRB_NT_SRV_INST
        服务和其他唯一实例(krbtgt)名称类型。
        另请参见:
        常数字段值
      • KRB_NT_SRV_HST

        public static final int KRB_NT_SRV_HST
        使用主机名作为实例(telnet,rcommands)名称类型的服务。
        另请参见:
        常数字段值
      • KRB_NT_SRV_XHST

        public static final int KRB_NT_SRV_XHST
        使用主机作为剩余组件名称类型的服务。
        另请参见:
        常数字段值
      • KRB_NT_UID

        public static final int KRB_NT_UID
        唯一ID名称类型。
        另请参见:
        常数字段值
    • 构造方法详细信息

      • KerberosPrincipal

        public KerberosPrincipal​(String name)
        根据提供的字符串输入构造KerberosPrincipal 此主体的名称类型默认为KRB_NT_PRINCIPAL假定此字符串包含第2.1.1节中指定格式的名称。 (Kerberos主要名称表格) RFC 1964 (例如, duke @ FOO.COM ,其中公爵代表委托人,而FOO.COM代表领域)。

        如果输入名称不包含领域,则使用默认领域。 可以在Kerberos配置文件中或通过java.security.krb5.realm系统属性指定默认域。 有关更多信息,请参阅Kerberos Requirements 此外,如果安装了安全管理器, 必须授予ServicePermission并且该权限的服务主体必须至少在KerberosPrincipal的范围内。 例如,如果结果new KerberosPrincipal("user")[email protected] ,则ServicePermission与服务主体host/[email protected] (和任何动作)必须被授予。

        参数
        name - 主要名称
        异常
        IllegalArgumentException - 如果name格式不正确,如果name为null,或者name不包含要使用的域,并且未在Kerberos配置文件中或通过java.security.krb5.realm系统属性指定默认域。
        SecurityException - 如果安装了安全管理器且name不包含要使用的域,则不会授予如上所述的正确ServicePermission
      • KerberosPrincipal

        public KerberosPrincipal​(String name,
                                 int nameType)
        根据提供的字符串和名称类型输入构造一个KerberosPrincipal 假定该字符串包含的格式为RFC 1964的第2.1节(强制名称格式)中指定的格式。 有效的名称类型在第508节(主要名称) RFC 4120中指定 输入名称必须与提供的名称类型一致。 (例如, [email protected] ,是名称类型的有效输入字符串,KRB_NT_PRINCIPAL,其中duke代表主体,而FOO.COM代表领域)。

        如果输入名称不包含领域,则使用默认领域。 可以在Kerberos配置文件中或通过java.security.krb5.realm系统属性指定默认域。 有关更多信息,请参阅Kerberos Requirements 此外,如果安装了安全管理器, 必须授予ServicePermission并且该权限的服务主体必须至少在KerberosPrincipal的范围内。 例如,如果结果new KerberosPrincipal("user")[email protected] ,则ServicePermission与服务主体host/[email protected] (和任何动作)必须被授予。

        参数
        name - 主要名称
        nameType - 主体的名称类型
        异常
        IllegalArgumentException - 如果name格式不正确,如果name为null,如果不支持nameType,或者name不包含要使用的域,并且未在Kerberos配置文件中或通过java.security指定默认域。 krb5.realm系统属性。
        SecurityException - 如果安装了安全管理器且name不包含要使用的域,则不会授予如上所述的正确ServicePermission
    • 方法详细信息

      • getRealm

        public String getRealm()
        返回此Kerberos主体的领域组件。
        结果
        此Kerberos主体的领域组件。
      • equals

        public boolean equals​(Object other)
        将指定对象与此主体进行比较以获得相等性。 如果给定对象也是KerberosPrincipal并且两个KerberosPrincipal实例是等效的,则返回true。 更正式地KerberosPrincipal如果getName()返回的值相等,则两个KerberosPrincipal实例相等。
        Specified by:
        equals在接口 Principal
        重写:
        equalsObject
        参数
        other - 要比较的对象
        结果
        如果传入的对象表示与此对象相同的主体,则返回true,否则返回false。
        另请参见:
        Object.hashCode()HashMap
      • getName

        public String getName()
        返回的字符串对应于 RFC 1964的第2.1节中指定的Kerberos主体名称的单字符串表示 形式
        Specified by:
        getName在接口 Principal
        结果
        主要名称。
      • getNameType

        public int getNameType()
        返回KerberosPrincipal的名称类型。 有效的名称类型在第RFC4120节中指定。
        结果
        名称类型。
      • toString

        public String toString()
        返回此 KerberosPrincipal的信息性文本表示 KerberosPrincipal
        Specified by:
        toString在接口 Principal
        重写:
        toString在类 Object
        结果
        an informative textual representation of this KerberosPrincipal.