Spec-Zone.ru › OpenJDK 25

Интерфейс GSSCredential

Все суперинтерфейсы:
Cloneable
Все известные подинтерфейсы:
ExtendedGSSCredential
public interface GSSCredential extends Cloneable
Этот интерфейс инкапсулирует учетные данные GSS-API для сущности. Учетные данные содержат всю необходимую криптографическую информацию, позволяющую создать контекст от имени представляемой ими сущности. Они могут содержать несколько отдельных элементов учетных данных, специфичных для механизмов; каждый из них содержит информацию для определенного механизма безопасности, но все они относятся к одной и той же сущности. Учетные данные можно использовать для инициирования контекста, его принятия или для обеих операций.

Учетные данные создаются с помощью одного из методов createCredential класса GSSManager. Создание учетных данных GSS-API не предназначено для выполнения функции «входа в сеть», поскольку такая функция предполагает создание новых учетных данных, а не просто получение дескриптора уже существующих. В разделе о получении учетных данных описания пакета объясняется, как получать существующие учетные данные на платформе Java. Реализации GSS-API должны применять локальную политику контроля доступа к вызывающим объектам, чтобы предотвратить получение неуполномоченными вызывающими объектами учетных данных, на которые у них нет прав.

Приложения создают объект учетных данных, передавая необходимые параметры. Затем приложение может использовать методы запросов, чтобы получить определенную информацию о созданном объекте учетных данных. Когда учетные данные больше не нужны, приложение должно вызвать метод dispose, чтобы освободить ресурсы, удерживаемые объектом учетных данных, и уничтожить конфиденциальную криптографическую информацию.

В этом примере кода показано создание реализации GSSCredential для определенной сущности, получение значений ее полей и освобождение ресурсов, когда она больше не нужна:

   GSSManager manager = GSSManager.getInstance();

   // start by creating a name object for the entity
   GSSName name = manager.createName("myusername", GSSName.NT_USER_NAME);

   // now acquire credentials for the entity
   GSSCredential cred = manager.createCredential(name,
                   GSSCredential.ACCEPT_ONLY);

   // display credential information - name, remaining lifetime,
   // and the mechanisms it has been acquired over
   System.out.println(cred.getName().toString());
   System.out.println(cred.getRemainingLifetime());

   Oid [] mechs = cred.getMechs();
   if (mechs != null) {
           for (int i = 0; i< mechs.length; i++)
                   System.out.println(mechs[i].toString());
   }

   // release system resources held by the credential
   cred.dispose();
Начиная с:
1.4
См. также:
  • GSSManager.createCredential(int)
  • GSSManager.createCredential(GSSName, int, Oid, int)
  • GSSManager.createCredential(GSSName, int, Oid[], int)
  • dispose()

Краткое описание полей

Модификатор и тип Поле Описание
static final int ACCEPT_ONLY
Флаг использования учетных данных, указывающий, что их можно использовать только для принятия контекста.
static final int DEFAULT_LIFETIME
Константа срока действия, обозначающая срок действия учетных данных по умолчанию.
static final int INDEFINITE_LIFETIME
Константа срока действия, обозначающая неограниченный срок действия учетных данных.
static final int INITIATE_AND_ACCEPT
Флаг использования учетных данных, указывающий, что их можно использовать как для инициирования, так и для принятия контекста.
static final int INITIATE_ONLY
Флаг использования учетных данных, указывающий, что их можно использовать только для инициирования контекста.

Краткое описание методов

Модификатор и тип Метод Описание
void add(GSSName name, int initLifetime, int acceptLifetime, Oid mech, int usage)
Добавляет к существующим учетным данным элемент, специфичный для механизма.
void dispose()
Освобождает всю конфиденциальную информацию, которая может содержаться в объекте GSSCredential.
boolean equals(Object another)
Проверяет, представляют ли эти учетные данные GSSCredential ту же сущность, что и переданный объект.
Oid[] getMechs()
Возвращает список механизмов, поддерживаемых этими учетными данными.
GSSName getName()
Получает имя сущности, представляемой этими учетными данными.
GSSName getName(Oid mech)
Получает имя механизма сущности, представляемой этими учетными данными.
int getRemainingAcceptLifetime(Oid mech)
Возвращает срок в секундах, в течение которого учетные данные сохраняют возможность принимать контексты безопасности с использованием указанного механизма.
int getRemainingInitLifetime(Oid mech)
Возвращает срок в секундах, в течение которого учетные данные сохраняют возможность инициировать контексты безопасности с использованием указанного механизма.
int getRemainingLifetime()
Возвращает оставшийся срок действия учетных данных в секундах.
int getUsage()
Возвращает режим использования учетных данных.
int getUsage(Oid mech)
Возвращает режим использования учетных данных для определенного механизма.
int hashCode()
Возвращает хеш-код этих учетных данных GSSCredential.

Подробное описание полей

INITIATE_AND_ACCEPT

static final int INITIATE_AND_ACCEPT
Флаг использования учетных данных, указывающий, что их можно использовать как для инициирования, так и для принятия контекста.
См. также:
  • Значения констант полей

INITIATE_ONLY

static final int INITIATE_ONLY
Флаг использования учетных данных, указывающий, что их можно использовать только для инициирования контекста.
См. также:
  • Значения констант полей

ACCEPT_ONLY

static final int ACCEPT_ONLY
Флаг использования учетных данных, указывающий, что их можно использовать только для принятия контекста.
См. также:
  • Значения констант полей

DEFAULT_LIFETIME

static final int DEFAULT_LIFETIME
Константа срока действия, обозначающая срок действия учетных данных по умолчанию. Это значение установлено равным 0.
См. также:
  • Значения констант полей

INDEFINITE_LIFETIME

static final int INDEFINITE_LIFETIME
Константа срока действия, обозначающая неограниченный срок действия учетных данных. Это значение должно быть установлено равным максимальному целочисленному значению в Java — Integer.MAX_VALUE.
См. также:
  • Значения констант полей

Подробное описание методов

dispose

void dispose() throws GSSException
Освобождает всю конфиденциальную информацию, которая может содержаться в объекте GSSCredential. Приложениям следует вызывать этот метод сразу после того, как учетные данные больше не нужны, чтобы свести к минимуму время хранения конфиденциальной информации.
Выбрасывает:
GSSException — содержит следующие основные коды ошибок: GSSException.FAILURE

getName

GSSName getName() throws GSSException
Получает имя сущности, представляемой этими учетными данными.
Возвращает:
GSSName, представляющее сущность
Выбрасывает:
GSSException — содержит следующие основные коды ошибок: GSSException.FAILURE

getName

GSSName getName(Oid mech) throws GSSException
Получает имя механизма сущности, представляемой этими учетными данными. Это эквивалентно вызову canonicalize для значения, возвращенного другой формой метода getName.
Параметры:
mech — Oid механизма, для которого следует вернуть имя механизма.
Возвращает:
GSSName, представляющее сущность, канонизированную для нужного механизма
Выбрасывает:
GSSException — содержит следующие основные коды ошибок: GSSException.BAD_MECH, GSSException.FAILURE

getRemainingLifetime

int getRemainingLifetime() throws GSSException
Возвращает оставшийся срок действия учетных данных в секундах. Оставшийся срок действия — это минимальный срок действия среди всех элементов учетных данных, относящихся к отдельным механизмам.
Возвращает:
минимальный оставшийся срок действия этих учетных данных в секундах. Возвращаемое значение INDEFINITE_LIFETIME означает, что срок действия учетных данных не ограничен. Возвращаемое значение 0 означает, что срок действия учетных данных уже истек.
Выбрасывает:
GSSException — содержит следующие основные коды ошибок: GSSException.FAILURE
См. также:
  • getRemainingInitLifetime(Oid)
  • getRemainingAcceptLifetime(Oid)

getRemainingInitLifetime

int getRemainingInitLifetime(Oid mech) throws GSSException
Возвращает срок в секундах, в течение которого учетные данные сохраняют возможность инициировать контексты безопасности с использованием указанного механизма. Этот метод запрашивает элемент учетных данных инициатора, относящийся к указанному механизму.
Параметры:
mech — Oid механизма, элемент учетных данных инициатора которого следует запросить.
Возвращает:
количество секунд, оставшихся до истечения срока действия этого элемента учетных данных. Возвращаемое значение INDEFINITE_LIFETIME означает, что срок действия элемента учетных данных не ограничен. Возвращаемое значение 0 означает, что срок действия элемента учетных данных уже истек.
Выбрасывает:
GSSException — содержит следующие основные коды ошибок: GSSException.BAD_MECH, GSSException.FAILURE

getRemainingAcceptLifetime

int getRemainingAcceptLifetime(Oid mech) throws GSSException
Возвращает срок в секундах, в течение которого учетные данные сохраняют возможность принимать контексты безопасности с использованием указанного механизма. Этот метод запрашивает элемент учетных данных принимающей стороны, относящийся к указанному механизму.
Параметры:
mech — Oid механизма, элемент учетных данных принимающей стороны которого следует запросить.
Возвращает:
количество секунд, оставшихся до истечения срока действия этого элемента учетных данных. Возвращаемое значение INDEFINITE_LIFETIME означает, что срок действия элемента учетных данных не ограничен. Возвращаемое значение 0 означает, что срок действия элемента учетных данных уже истек.
Выбрасывает:
GSSException — содержит следующие основные коды ошибок: GSSException.BAD_MECH, GSSException.FAILURE

getUsage

int getUsage() throws GSSException
Возвращает режим использования учетных данных. Иными словами, метод сообщает, можно ли использовать эти учетные данные для инициирования или принятия контекстов безопасности. Он не сообщает, какие механизмы следует использовать для этого. Предполагается, что после вызова этого метода приложение позволит GSS-API выбрать механизм по умолчанию.
Возвращает:
Возвращаемое значение будет одним из следующих: INITIATE_ONLY, ACCEPT_ONLY или INITIATE_AND_ACCEPT.
Выбрасывает:
GSSException — содержит следующие основные коды ошибок: GSSException.FAILURE

getUsage

int getUsage(Oid mech) throws GSSException
Возвращает режим использования учетных данных для определенного механизма. Иными словами, метод сообщает, можно ли использовать эти учетные данные для инициирования или принятия контекстов безопасности с помощью указанного механизма.
Параметры:
mech — Oid механизма, режим использования учетных данных которого необходимо определить.
Возвращает:
Возвращаемое значение будет одним из следующих: INITIATE_ONLY, ACCEPT_ONLY или INITIATE_AND_ACCEPT.
Выбрасывает:
GSSException — содержит следующие основные коды ошибок: GSSException.BAD_MECH, GSSException.FAILURE

getMechs

Oid[] getMechs() throws GSSException
Возвращает список механизмов, поддерживаемых этими учетными данными. Метод не сообщает, какие из них можно использовать для инициирования контекстов, а какие — для их принятия. Чтобы определить возможные режимы использования, приложение должно вызвать метод getUsage для каждого из возвращенных Oid.
Возвращает:
массив Oid, соответствующих поддерживаемым механизмам.
Выбрасывает:
GSSException — содержит следующие основные коды ошибок: GSSException.FAILURE

add

void add(GSSName name, int initLifetime, int acceptLifetime, Oid mech, int usage) throws GSSException
Добавляет к существующим учетным данным элемент, специфичный для механизма. Этот метод позволяет создавать учетные данные, добавляя по одному механизму за раз.

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

Эта процедура добавляет новый элемент к существующим учетным данным. Чтобы добавить элемент в новые учетные данные, сначала вызовите clone для получения копии этих учетных данных, а затем вызовите для копии метод add.

Как и всегда, реализации GSS-API должны применять локальную политику контроля доступа к вызывающим объектам, чтобы предотвратить получение неуполномоченными вызывающими объектами учетных данных, на которые у них нет прав. Базовые механизмы не всегда могут обеспечить значения initLifetime и acceptLifetime, отличные от значений по умолчанию, поэтому вызывающим объектам следует быть готовыми вызвать для учетных данных методы getRemainingInitLifetime и getRemainingAcceptLifetime.

Параметры:
name — имя субъекта, для которого необходимо получить эти учетные данные. Чтобы указать субъект по умолчанию, используйте null.
initLifetime — количество секунд, в течение которых элемент учетных данных должен оставаться действительным для инициирования контекстов безопасности. Используйте GSSCredential.INDEFINITE_LIFETIME, чтобы запросить максимально допустимый срок действия учетных данных. Используйте GSSCredential.DEFAULT_LIFETIME, чтобы запросить срок действия учетных данных по умолчанию.
acceptLifetime — количество секунд, в течение которых элемент учетных данных должен оставаться действительным для принятия контекстов безопасности. Используйте GSSCredential.INDEFINITE_LIFETIME, чтобы запросить максимально допустимый срок действия учетных данных. Используйте GSSCredential.DEFAULT_LIFETIME, чтобы запросить срок действия учетных данных по умолчанию.
mech — механизм, для которого необходимо получить учетные данные.
usage — режим использования, который следует добавить к учетным данным вместе с этим элементом. Значение этого параметра должно быть одним из следующих: INITIATE_AND_ACCEPT, ACCEPT_ONLY или INITIATE_ONLY.
Выбрасывает:
GSSException — содержит следующие основные коды ошибок: GSSException.DUPLICATE_ELEMENT, GSSException.BAD_MECH, GSSException.BAD_NAMETYPE, GSSException.NO_CRED, GSSException.CREDENTIALS_EXPIRED, GSSException.FAILURE

equals

boolean equals(Object another)
Проверяет, представляют ли эти учетные данные GSSCredential ту же сущность, что и переданный объект. Оба набора учетных данных должны быть получены для одних и тех же механизмов и относиться к одному и тому же субъекту.
Переопределяет:
equals в классе Object
Параметры:
another — другие учетные данные GSSCredential для сравнения с этими
Возвращает:
true, если оба набора учетных данных GSSCredential представляют одну и ту же сущность; в противном случае — false.
См. также:
  • Object.hashCode()
  • HashMap

hashCode

int hashCode()
Возвращает хеш-код этих учетных данных GSSCredential.
Переопределяет:
hashCode в классе Object
Возвращает:
хеш-код этих учетных данных GSSCredential
См. также:
  • Object.equals(java.lang.Object)
  • System.identityHashCode(Object)

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.
https://docs.oracle.com/en/java/javase/25/docs/api/java.security.jgss/org/ietf/jgss/GSSCredential.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API