Интерфейс ExtendedGSSContext

Все суперинтерфейсы:
GSSContext
public interface ExtendedGSSContext
extends GSSContext

Расширенный интерфейс GSSContext для поддержки дополнительных функциональных возможностей, не определенных org.ietf.jgss.GSSContext, таких как запросы атрибутов, специфичных для контекста.

Поля

Поля, объявленные в интерфейсе org.ietf.jgss.GSSContext

DEFAULT_LIFETIME, INDEFINITE_LIFETIME

Методы

Модификатор и типМетодОписание
booleangetDelegPolicyState()

Возвращает ответ по политике делегирования.

ObjectinquireSecContext​(InquireType type)

Возвращает атрибут, специфичный для механизма, связанный с type.

voidrequestDelegPolicy​(boolean state)

Запрашивает соблюдение политики делегирования.

Методы, объявленные в интерфейсе 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 не предоставлена.
См. также:
InquireSecContextPermission, InquireType

requestDelegPolicy

void requestDelegPolicy(boolean state)
                 throws GSSException

Запрашивает соблюдение политики делегирования. При запросе значения true, контекст использует политику делегирования, определенную средой, как подсказку, чтобы определить, нужно ли выполнять делегирование учетных данных. Этот запрос может быть выполнен только со стороны инициатора контекста и должен быть выполнен до первого вызова initSecContext.

Если этот флаг равен false, делегирование будет выполнено только тогда, когда credentials delegation flag имеет значение true.

Если этот флаг равен true, но credentials delegation flag равен false, делегирование будет выполнено только если политика делегирования допускает делегирование.

Если оба флага, этот и credentials delegation flag, равны true, делегирование будет всегда выполнено. Однако, если политика делегирования не допускает делегирование, значение getDelegPolicyState() будет false, даже если делегирование выполнено успешно.

В любом случае, если делегирование не выполнено успешно, значение, возвращаемое GSSContext.getCredDelegState(), равно false, а значение, возвращаемое getDelegPolicyState(), также равно false.

Не все механизмы поддерживают политику делегирования. Поэтому приложение должно проверить, было ли выполнено требование с помощью метода getDelegPolicyState. Если политика делегирования не поддерживается, requestDelegPolicy должно выполняться без исключения.

Примечание: для механизма Kerberos 5 политика делегирования выражается флагом OK-AS-DELEGATE в билете сервиса. Если он равен true, KDC разрешает делегирование целевому серверу. В среде кросс-домена, для разрешения делегирования, все TGT кросс-домена в пути аутентификации должны также иметь установленные флаги OK-AS-DELAGATE.

Параметры:
state - true, если политика должна быть соблюдена
Исключения:
GSSException - содержащий следующие основные коды ошибок: GSSException.FAILURE

getDelegPolicyState

boolean getDelegPolicyState()

Возвращает ответ по политике делегирования. Вызывается после установления контекста безопасности. Этот метод может быть вызван только со стороны инициатора. См. requestDelegPolicy(boolean).

Возвращает:
ответ по политике делегирования

© 1993, 2020, 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/11/docs/api/jdk.security.jgss/com/sun/security/jgss/ExtendedGSSContext.html

Spec-Zone .ru
спецификации, руководства, описания, API