Класс KerberosPrincipal
- Все реализованные интерфейсы:
-
Serializable,Principal
public final class KerberosPrincipal extends Object implements Principal, Serializable
- С момента:
- 1.4
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
KRB_NT_ENTERPRISE |
Имя предприятия (псевдоним) |
static final int |
KRB_NT_PRINCIPAL |
Тип имени пользователя. |
static final int |
KRB_NT_SRV_HST |
Тип имени службы с именем хоста в качестве экземпляра (telnet, rcommands). |
static final int |
KRB_NT_SRV_INST |
Тип имени службы и других уникальных экземпляров (krbtgt). |
static final int |
KRB_NT_SRV_XHST |
Тип имени службы с хостом в качестве оставшихся компонентов. |
static final int |
KRB_NT_UID |
Тип имени уникального идентификатора. |
static final int |
KRB_NT_UNKNOWN |
Неизвестный тип имени. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
KerberosPrincipal |
Создает KerberosPrincipal из предоставленного строкового ввода. |
KerberosPrincipal |
Создает KerberosPrincipal из предоставленной строки и типа имени. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
equals |
Сравнивает указанный объект с данным субъектом на равенство. |
String |
getName() |
Возвращаемая строка соответствует однострочному представлению имени субъекта Kerberos, как указано в разделе 2.1 RFC 1964. |
int |
getNameType() |
Возвращает тип имени KerberosPrincipal. |
String |
getRealm() |
Возвращает компонент домена данного субъекта Kerberos. |
int |
hashCode() |
Возвращает хэш-код для данного KerberosPrincipal. |
String |
toString() |
Возвращает информативное текстовое представление данного 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
- См. также:
KRB_NT_SRV_HST
public static final int KRB_NT_SRV_HST
- См. также:
KRB_NT_SRV_XHST
public static final int KRB_NT_SRV_XHST
- См. также:
KRB_NT_UID
public static final int KRB_NT_UID
- См. также:
KRB_NT_ENTERPRISE
public static final int KRB_NT_ENTERPRISE
- С:
- 13
- См. также:
Подробное описание конструкторов
KerberosPrincipal
public KerberosPrincipal(String name)
KerberosPrincipal из предоставленного строкового ввода. Тип имени для этого принципала по умолчанию равен KRB_NT_PRINCIPAL. Предполагается, что эта строка содержит имя в формате, указанном в разделе 2.1.1. (Форма имени принципала Kerberos) спецификации RFC 1964 (например, duke@FOO.COM, где duke представляет принципала, а FOO.COM — область). Если имя ввода не содержит области, используется область по умолчанию. Область по умолчанию может быть указана в файле конфигурации Kerberos или через системное свойство java.security.krb5.realm. Дополнительную информацию см. в разделе Требования к Kerberos.
Обратите внимание, что при первоначальной загрузке и инициализации этого класса или любого другого класса, связанного с Kerberos, он может читать и кэшировать область по умолчанию из файла конфигурации Kerberos или через системное свойство java.security.krb5.realm (значение будет пустым, если область по умолчанию не указана), поэтому любые последующие попытки установить или изменить область по умолчанию путём изменения системного свойства java.security.krb5.realm могут быть проигнорированы.
Кроме того, если установлен менеджер безопасности, необходимо предоставить ServicePermission и служба принципала в разрешении должна быть как минимум в области KerberosPrincipal. Например, если результат new KerberosPrincipal("user") равен user@EXAMPLE.COM, то необходимо предоставить ServicePermission с принципалом службы host/www.example.com@EXAMPLE.COM (и любым действием).
- Параметры:
-
name- имя принципала - Исключения:
-
IllegalArgumentException- если имя отформатировано неправильно, если имя равно null или если имя не содержит используемую область, и область по умолчанию не указана ни в файле конфигурации Kerberos, ни через системное свойство java.security.krb5.realm. -
SecurityException- если установлен менеджер безопасности иnameне содержит используемую область, и надлежащееServicePermission, как описано выше, не предоставлено.
KerberosPrincipal
public KerberosPrincipal(String name, int nameType)
KerberosPrincipal из предоставленной строки и типа имени. Предполагается, что строка содержит имя в формате, указанном в разделе 2.1 (Обязательные формы имени) спецификации RFC 1964. Допустимые типы имён указаны в разделе 6.2 (Имена принципалов) спецификации RFC 4120. Введённое имя должно быть совместимо с указанным типом имени. (например, duke@FOO.COM, — допустимая входная строка для типа имени KRB_NT_PRINCIPAL, где duke представляет принципала, а FOO.COM — область). Если имя ввода не содержит области, используется область по умолчанию. Область по умолчанию может быть указана в файле конфигурации Kerberos или через системное свойство java.security.krb5.realm. Дополнительную информацию см. в разделе Требования к Kerberos.
Обратите внимание, что при первоначальной загрузке и инициализации этого класса или любого другого класса, связанного с Kerberos, он может читать и кэшировать область по умолчанию из файла конфигурации Kerberos или через системное свойство java.security.krb5.realm (значение будет пустым, если область по умолчанию не указана), поэтому любые последующие попытки установить или изменить область по умолчанию путём изменения системного свойства java.security.krb5.realm могут быть проигнорированы.
Кроме того, если установлен менеджер безопасности, необходимо предоставить ServicePermission и служба принципала в разрешении должна быть как минимум в области KerberosPrincipal. Например, если результат new KerberosPrincipal("user") равен user@EXAMPLE.COM, то необходимо предоставить ServicePermission с принципалом службы host/www.example.com@EXAMPLE.COM (и любым действием).
- Параметры:
-
name- имя принципала -
nameType- тип имени принципала - Исключения:
-
IllegalArgumentException- если имя отформатировано неправильно, если имя равно null, если тип имени не поддерживается или если имя не содержит используемую область, и область по умолчанию не указана ни в файле конфигурации Kerberos, ни через системное свойство java.security.krb5.realm. -
SecurityException- если установлен менеджер безопасности иnameне содержит используемую область, и надлежащееServicePermission, как описано выше, не предоставлено.
Подробное описание методов
getRealm
public String getRealm()
- Возвращает:
- компонент области этого принципала Kerberos.
hashCode
public int hashCode()
KerberosPrincipal. Хэш-код определяется как результат следующего вычисления:
hashCode = getName().hashCode();
- Унаследовано от:
-
hashCodeв интерфейсеPrincipal - Переопределяет:
-
hashCodeв классеObject - Возвращает:
- хэш-код для этого
KerberosPrincipal. - См. также:
equals
public boolean equals(Object other)
KerberosPrincipal и два объекта принципала эквивалентны. Более формально, два объекта принципала равны, если значения, возвращаемые getName(), равны.- Унаследовано от:
-
equalsв интерфейсеPrincipal - Переопределяет:
-
equalsв классеObject - Параметры:
-
other- объект для сравнения - Возвращает:
- true, если переданный объект представляет тот же принципал, что и этот, в противном случае false.
- См. также:
getName
public String getName()
- Унаследовано от:
-
getNameв интерфейсеPrincipal - Возвращает:
- имя принципала.
getNameType
public int getNameType()
KerberosPrincipal. Допустимые типы имен указаны в разделе 6.2 спецификации RFC4120.- Возвращает:
- тип имени.
toString
public String toString()
KerberosPrincipal.- Определено в:
-
toStringв интерфейсеPrincipal - Переопределяет:
-
toStringв классеObject - Возвращает:
- информативное текстовое представление этого
KerberosPrincipal.
© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.security.jgss/javax/security/auth/kerberos/KerberosPrincipal.html