Интерфейс ExtendedGSSContext
- Все суперинтерфейсы:
GSSContext
public interface ExtendedGSSContext extends GSSContext
org.ietf.jgss.GSSContext, таких как запрос атрибутов, специфичных для контекста.Краткое описание полей
Поля, объявленные в интерфейсе org.ietf.jgss.GSSContext
DEFAULT_LIFETIME, INDEFINITE_LIFETIME
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
getDelegPolicyState() |
Возвращает ответ по политике делегирования. |
Object |
inquireSecContext |
Возвращает атрибут, специфичный для механизма, связанный с type. |
void |
requestDelegPolicy |
Запрашивает соблюдение политики делегирования. |
Методы, объявленные в интерфейсе org.ietf.jgss.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
Подробное описание методов
inquireSecContext
Object inquireSecContext(InquireType type) throws GSSException
type. Если существует менеджер безопасности, необходимо предоставить разрешение InquireSecContextPermission с именем type.mech. В противном случае это может привести к исключению SecurityException.
Пример:
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для других неопределенных ошибок. -
SecurityException- если менеджер безопасности существует и соответствующее разрешениеInquireSecContextPermissionне предоставлено. - См. также:
requestDelegPolicy
void requestDelegPolicy(boolean state) throws GSSException
initSecContext. При значении false, делегирование будет пробоваться только если credentials delegation flag равно true.
При значении true, но credentials delegation flag равно false, делегирование будет пробоваться только если политика делегирования разрешает делегирование.
При обоих значениях true, делегирование будет всегда пробоваться. Однако, если политика делегирования не разрешает делегирование, значение getDelegPolicyState() будет false, даже если делегирование успешно выполнено.
В любом случае, если делегирование не успешно, значение, возвращаемое GSSContext.getCredDelegState(), будет false, и значение, возвращаемое getDelegPolicyState(), также будет false.
Не все механизмы поддерживают политику делегирования. Поэтому приложение должно проверить, было ли запрос выполнено с помощью метода getDelegPolicyState. Когда политика делегирования не поддерживается, requestDelegPolicy должно возвращаться без исключения.
Примечание: для механизма Kerberos 5 политика делегирования выражается через флаг OK-AS-DELEGATE в билете службы. Если он true, KDC разрешает делегирование целевому серверу. В кросс-доменной среде для разрешения делегирования все кросс-доменные TGT на пути аутентификации должны также иметь флаги OK-AS-DELEGATE.
- Параметры:
-
state- true, если политика должна соблюдаться - Исключения:
-
GSSException- содержащий следующие основные коды ошибок:GSSException.FAILURE
getDelegPolicyState
boolean getDelegPolicyState()
requestDelegPolicy(boolean).- Возвращает:
- ответ по политике делегирования
© 1993, 2021, 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/17/docs/api/jdk.security.jgss/com/sun/security/jgss/ExtendedGSSContext.html