Интерфейс ExtendedGSSContext
- Все суперинтерфейсы:
GSSContext
public interface ExtendedGSSContext extends GSSContext
org.ietf.jgss.GSSContext, например запросов атрибутов, относящихся к контексту.- Начиная с:
- 1.7
Краткое описание полей
Поля, объявленные в интерфейсе GSSContext
DEFAULT_LIFETIME, INDEFINITE_LIFETIME | Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
DEFAULT_LIFETIME |
Константа времени жизни, представляющая время жизни контекста по умолчанию. |
static final int |
INDEFINITE_LIFETIME |
Константа времени жизни, представляющая неограниченное время жизни контекста. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
getDelegPolicyState() |
Возвращает результат проверки политики делегирования. |
Object |
inquireSecContext |
Возвращает специфичный для механизма атрибут, связанный с type. |
void |
requestDelegPolicy |
Запрашивает соблюдение политики делегирования. |
Методы, объявленные в интерфейсе GSSContext
acceptSecContext, acceptSecContext, dispose, export, getAnonymityState, getConfState, getCredDelegState, getDelegCred, getIntegState, getLifetime, getMech, getMIC, getMIC, getMutualAuthState, getReplayDetState, getSequenceDetState, getSrcName, getTargName, getWrapSizeLimit, initSecContext, initSecContext, isEstablished, isInitiator, isProtReady, isTransferable, requestAnonymity, requestConf, requestCredDeleg, requestInteg, requestLifetime, requestMutualAuth, requestReplayDet, requestSequenceDet, setChannelBinding, unwrap, unwrap, verifyMIC, verifyMIC, wrap, wrap | Модификатор и тип | Метод | Описание |
|---|---|---|
byte[] |
acceptSecContext |
Вызывается принимающей стороной контекста при получении токена от партнёра. |
void |
acceptSecContext |
Устарело. Методы на основе потоков удалены из RFC 8353. |
void |
dispose() |
Освобождает все системные ресурсы и криптографическую информацию, сохранённые в объекте контекста, и делает контекст недействительным. |
byte[] |
export() |
Экспортирует этот контекст, чтобы другой процесс мог его импортировать. |
boolean |
getAnonymityState() |
Определяет, прошёл ли инициатор контекста анонимную аутентификацию у принимающей стороны контекста. |
boolean |
getConfState() |
Определяет, доступна ли в контексте конфиденциальность данных. |
boolean |
getCredDelegState() |
Определяет, включено ли делегирование учётных данных в этом контексте. |
GSSCredential |
getDelegCred() |
Получает учётные данные, делегированные инициатором контекста принимающей стороне контекста. |
boolean |
getIntegState() |
Определяет, доступна ли в контексте целостность данных. |
int |
getLifetime() |
Определяет оставшееся время жизни этого контекста. |
Oid |
getMech() |
Определяет, какой механизм используется для этого контекста. |
byte[] |
getMIC |
Возвращает токен, содержащий криптографический код проверки целостности сообщения (MIC) для указанного сообщения, предназначенный для передачи приложению-партнёру. |
void |
getMIC |
Устарело. Методы на основе потоков удалены из RFC 8353. |
boolean |
getMutualAuthState() |
Определяет, включена ли взаимная аутентификация в этом контексте. |
boolean |
getReplayDetState() |
Определяет, включено ли обнаружение повторов для служб безопасности сообщений в этом контексте. |
boolean |
getSequenceDetState() |
Определяет, включена ли проверка последовательности для служб безопасности сообщений в этом контексте. |
GSSName |
getSrcName() |
Возвращает имя инициатора контекста. |
GSSName |
getTargName() |
Возвращает имя принимающей стороны контекста. |
int |
getWrapSizeLimit |
Используется для определения ограничений на размер сообщения, которое можно передать в wrap. |
byte[] |
initSecContext |
Вызывается инициатором контекста для запуска этапа создания контекста и обработки любых токенов, созданных методом acceptSecContext партнёра. |
int |
initSecContext |
Устарело. Методы на основе потоков удалены из RFC 8353. |
boolean |
isEstablished() |
Используется при установлении контекста для определения его состояния. |
boolean |
isInitiator() |
Определяет, является ли эта сторона инициатором контекста. |
boolean |
isProtReady() |
Определяет, готов ли контекст к выполнению операций над отдельными сообщениями. |
boolean |
isTransferable() |
Определяет, можно ли передать контекст другим процессам с помощью метода export. |
void |
requestAnonymity |
Запрашивает, чтобы личность инициатора не раскрывалась принимающей стороне. |
void |
requestConf |
Запрашивает включение конфиденциальности данных для метода wrap. |
void |
requestCredDeleg |
Запрашивает делегирование учётных данных инициатора принимающей стороне при установлении контекста. |
void |
requestInteg |
Запрашивает включение целостности данных для методов wrap и getMIC. |
void |
requestLifetime |
Запрашивает время жизни контекста в секундах. |
void |
requestMutualAuth |
Запрашивает выполнение взаимной аутентификации при установлении контекста. |
void |
requestReplayDet |
Запрашивает включение обнаружения повторов для служб безопасности сообщений после установления контекста. |
void |
requestSequenceDet |
Запрашивает включение проверки последовательности для служб безопасности сообщений после установления контекста. |
void |
setChannelBinding |
Задаёт привязки канала, которые будут использоваться при установлении контекста. |
byte[] |
unwrap |
Используется для обработки токенов, созданных методом wrap на другой стороне контекста. |
void |
unwrap |
Устарело. Методы на основе потоков удалены из RFC 8353. |
void |
verifyMIC |
Проверяет криптографический MIC, содержащийся в параметре токена, для указанного сообщения. |
void |
verifyMIC |
Устарело. Методы на основе потоков удалены из RFC 8353. |
byte[] |
wrap |
Применяет службы безопасности для отдельных сообщений к установленному контексту безопасности. |
void |
wrap |
Устарело. Методы на основе потоков удалены из RFC 8353. |
Подробное описание методов
inquireSecContext
Object inquireSecContext(InquireType type) throws GSSException
type. Пример:
GSSContext ctxt = m.createContext(...)
// Establishing the context
if (ctxt instanceof ExtendedGSSContext) {
ExtendedGSSContext ex = (ExtendedGSSContext)ctxt;
try {
Key key = (key)ex.inquireSecContext(
InquireType.KRB5_GET_SESSION_KEY);
// read key info
} catch (GSSException gsse) {
// deal with exception
}
}
- Параметры:
-
type— тип запрашиваемого атрибута - Возвращает:
- атрибут; подробности см. в документации метода.
- Исключения:
-
GSSException— содержит следующие основные коды ошибок:GSSException.BAD_MECH, если механизм не поддерживает этот метод;GSSException.UNAVAILABLE, если указанный тип не поддерживается;GSSException.NO_CONTEXT, если контекст безопасности недействителен;GSSException.FAILURE— при других неуказанных сбоях. - См. также:
requestDelegPolicy
void requestDelegPolicy(boolean state) throws GSSException
initSecContext. Если этот флаг имеет значение false, делегирование будет выполняться только при значении true для credentials delegation flag.
Если этот флаг имеет значение true, а credentials delegation flag — false, делегирование будет выполняться только в том случае, если политика делегирования разрешает его.
Если и этот флаг, и credentials delegation flag имеют значение true, делегирование будет выполняться всегда. Однако если политика делегирования не разрешает делегирование, значение getDelegPolicyState() будет false, даже если делегирование выполнено успешно.
В любом случае, если делегирование завершится неудачно, значение, возвращаемое методом GSSContext.getCredDelegState(), будет false, а значение, возвращаемое методом getDelegPolicyState(), также будет false.
Не все механизмы поддерживают политику делегирования. Поэтому приложению следует проверить, был ли запрос выполнен, с помощью метода getDelegPolicyState. Если политика делегирования не поддерживается, requestDelegPolicy должен без уведомления завершить работу, не выбрасывая исключение.
Примечание: для механизма Kerberos 5 политика делегирования задаётся флагом OK-AS-DELEGATE в билете службы. Если он установлен, KDC разрешает делегирование целевому серверу. В среде с несколькими областями для разрешения делегирования флаг OK-AS-DELAGATE должен быть установлен также во всех межобластных TGT на пути аутентификации.
- Параметры:
-
state— true, если политику следует соблюдать - Исключения:
-
GSSException— содержит следующие основные коды ошибок:GSSException.FAILURE
getDelegPolicyState
boolean getDelegPolicyState()
requestDelegPolicy(boolean).- Возвращает:
- результат проверки политики делегирования
© 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.