Класс KerberosTicket
- Все реализуемые интерфейсы:
Serializable, Destroyable, Refreshable
public class KerberosTicket extends Object implements Destroyable, Refreshable, Serializable
Все модули входа JAAS для Kerberos, выполняющие аутентификацию пользователя в KDC, должны использовать этот класс. Если это возможно, модуль входа может считывать эти сведения из кэша билетов операционной системы, а не взаимодействовать напрямую с KDC. На этапе фиксации процесса аутентификации JAAS модуль входа JAAS должен создать экземпляр этого класса и сохранить его в наборе закрытых учетных данных объекта Subject.
Обратите внимание, что этот класс применим как к билетам на выдачу билетов, так и к другим обычным служебным билетам. Билет на выдачу билетов — это лишь особый случай более обобщенного служебного билета.
- Примечание по реализации:
- Модуль входа JAAS в эталонной реализации JDK уничтожает все билеты после выхода из системы.
- С момента выпуска:
- 1.4
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
KerberosTicket |
Создает KerberosTicket, используя сведения об учетных данных, полученные клиентом от KDC или считанные из кэша. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
destroy() |
Уничтожает билет и любые сохраненные в нем конфиденциальные сведения. |
boolean |
equals |
Сравнивает указанный объект с этим KerberosTicket на равенство. |
final Date |
getAuthTime() |
Возвращает время аутентификации клиента. |
final KerberosPrincipal |
getClient() |
Возвращает субъект клиента, связанный с этим билетом. |
final InetAddress[] |
getClientAddresses() |
Возвращает список адресов, с которых можно использовать билет. |
final byte[] |
getEncoded() |
Возвращает ASN.1-кодировку всего билета. |
final Date |
getEndTime() |
Возвращает время истечения срока действия этого билета. |
final boolean[] |
getFlags() |
Возвращает флаги, связанные с этим билетом. |
final Date |
getRenewTill() |
Возвращает самый поздний срок истечения действия этого билета с учетом всех продлений. |
final KerberosPrincipal |
getServer() |
Возвращает субъект службы, связанный с этим билетом. |
final SecretKey |
getSessionKey() |
Возвращает ключ сеанса, связанный с этим билетом. |
final int |
getSessionKeyType() |
Возвращает тип ключа сеансового ключа, связанного с этим билетом, как определено в спецификации протокола Kerberos. |
final Date |
getStartTime() |
Возвращает время начала срока действия этого билета. |
int |
hashCode() |
Возвращает хеш-код для этого KerberosTicket. |
boolean |
isCurrent() |
Определяет, действует ли еще этот билет. |
boolean |
isDestroyed() |
Определяет, был ли уничтожен этот билет. |
final boolean |
isForwardable() |
Определяет, можно ли перенаправить этот билет. |
final boolean |
isForwarded() |
Определяет, был ли этот билет перенаправлен или выдан на основании аутентификации с использованием перенаправленного билета на выдачу билетов. |
final boolean |
isInitial() |
Определяет, был ли этот билет выдан с использованием протокола обмена AS Kerberos, а не на основании какого-либо билета на выдачу билетов. |
final boolean |
isPostdated() |
Определяет, является ли этот билет отложенным. |
final boolean |
isProxiable() |
Определяет, можно ли использовать этот билет в качестве прокси. |
final boolean |
isProxy() |
Определяет, является ли этот билет прокси-билетом. |
final boolean |
isRenewable() |
Определяет, можно ли продлить этот билет. |
void |
refresh() |
Продлевает срок действия этого билета. |
String |
toString() |
Возвращает информативное текстовое представление этого KerberosTicket. |
Методы, объявленные в классе Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создает и возвращает копию этого объекта. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API может быть удален в будущей версии. Финализация устарела и может быть удалена в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
final void |
wait() |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения заданного периода реального времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения заданного периода реального времени. |
Подробное описание конструкторов
KerberosTicket
public KerberosTicket(byte[] asn1Encoding, KerberosPrincipal client, KerberosPrincipal server, byte[] sessionKey, int keyType, boolean[] flags, Date authTime, Date startTime, Date endTime, Date renewTill, InetAddress[] clientAddresses)
KerberosTicket, используя сведения об учетных данных, полученные клиентом от KDC или считанные из кэша.- Параметры:
-
asn1Encoding— ASN.1-кодировка билета, определенная в спецификации протокола Kerberos. -
client— клиент, которому принадлежит этот служебный билет -
server— служба, для которой предназначен этот билет -
sessionKey— необработанные байты сеансового ключа, который должен использоваться для шифрования аутентификатора, отправляемого серверу -
keyType— тип сеансового ключа, определенный в спецификации протокола Kerberos. -
flags— флаги билета. Каждый элемент этого массива указывает значение соответствующего бита в ASN.1 BitString, представляющей флаги билета. Если количество элементов в этом массиве меньше числа флагов, используемых протоколом Kerberos, отсутствующие флаги будут заполнены значением false. -
authTime— время начальной аутентификации клиента -
startTime— время, после которого билет будет действителен. Может иметь значение null; в этом случае значение authTime рассматривается как startTime. -
endTime— время, после которого билет перестанет быть действительным -
renewTill— абсолютное время истечения срока действия билета с учетом всех возможных продлений. Это поле может иметь значение null для билетов, которые нельзя продлить. -
clientAddresses— адреса, с которых клиент может использовать билет. Это поле может иметь значение null, если билет можно использовать с любого адреса.
Подробное описание методов
getClient
public final KerberosPrincipal getClient()
- Возвращает:
- субъект клиента или
null, если билет уничтожен.
getServer
public final KerberosPrincipal getServer()
- Возвращает:
- субъект службы или
null, если билет уничтожен.
getSessionKey
public final SecretKey getSessionKey()
EncryptionKey.- Возвращает:
- сеансовый ключ.
- Вызывает исключение:
-
IllegalStateException— если этот билет уничтожен
getSessionKeyType
public final int getSessionKeyType()
- Возвращает:
- тип сеансового ключа, связанного с этим билетом.
- Вызывает исключение:
-
IllegalStateException— если этот билет уничтожен - См. также:
isForwardable
public final boolean isForwardable()
- Возвращает:
- true, если этот билет можно перенаправить; false, если его нельзя перенаправить или он уничтожен.
isForwarded
public final boolean isForwarded()
- Возвращает:
- true, если этот билет был перенаправлен или выдан на основании аутентификации с использованием перенаправленного билета на выдачу билетов; в противном случае — false, в том числе если билет уничтожен.
isProxiable
public final boolean isProxiable()
- Возвращает:
- true, если этот билет можно использовать в качестве прокси; false, если его нельзя использовать в качестве прокси или он уничтожен.
isProxy
public final boolean isProxy()
- Возвращает:
- true, если этот билет является прокси-билетом; false, если он не является прокси-билетом или уничтожен.
isPostdated
public final boolean isPostdated()
- Возвращает:
- true, если этот билет отложенный; false, если он не отложенный или уничтожен.
isRenewable
public final boolean isRenewable()
refresh, при условии что срок, в течение которого возможно продление, еще не истек.- Возвращает:
- true, если этот билет можно продлить; false, если его нельзя продлить или он уничтожен.
isInitial
public final boolean isInitial()
- Возвращает:
- true, если этот билет был выдан с использованием протокола обмена AS Kerberos; false, если он был выдан другим способом или уничтожен.
getFlags
public final boolean[] getFlags()
- Возвращает:
- флаги, связанные с этим билетом, или
null, если билет уничтожен.
getAuthTime
public final Date getAuthTime()
- Возвращает:
- время аутентификации клиента или
null, если поле не задано или билет уничтожен.
getStartTime
public final Date getStartTime()
- Возвращает:
- время начала срока действия этого билета или
null, если поле не задано или билет уничтожен.
getEndTime
public final Date getEndTime()
- Возвращает:
- время истечения срока действия этого билета или
null, если билет уничтожен.
getRenewTill
public final Date getRenewTill()
- Возвращает:
- самый поздний срок истечения действия этого билета или
null, если билет уничтожен.
getClientAddresses
public final InetAddress[] getClientAddresses()
- Возвращает:
- список адресов или
null, если поле не было задано или билет уничтожен.
getEncoded
public final byte[] getEncoded()
- Возвращает:
- ASN.1-кодировку всего билета. При каждом вызове этого метода возвращается новый байтовый массив.
- Вызывает исключение:
-
IllegalStateException— если этот билет уничтожен
isCurrent
public boolean isCurrent()
- Определено в:
-
isCurrentв интерфейсеRefreshable - Возвращает:
- true, если этот билет еще действует; false, если он больше не действует или уничтожен.
refresh
public void refresh() throws RefreshFailedException
- Определено в:
-
refreshв интерфейсеRefreshable - Вызывает исключение:
-
IllegalStateException— если этот билет уничтожен -
RefreshFailedException— если билет нельзя продлить, истек самый поздний допустимый срок продления или KDC возвращает ошибку. - См. также:
destroy
public void destroy() throws DestroyFailedException
- Определено в:
-
destroyв интерфейсеDestroyable - Вызывает исключение:
-
DestroyFailedException— если операция уничтожения завершилась неудачей.
isDestroyed
public boolean isDestroyed()
- Определено в:
-
isDestroyedв интерфейсеDestroyable - Возвращает:
- true, если этот
Objectбыл уничтожен; в противном случае — false.
toString
hashCode
equals
public boolean equals(Object other)
KerberosTicket на равенство. Возвращает true, если заданный объект также является KerberosTicket и два экземпляра KerberosTicket эквивалентны. Уничтоженный объект KerberosTicket равен только самому себе.
© 1993, 2025, 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.