Spec-Zone.ru › OpenJDK 21

Интерфейс 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 в данных идентификации.

Parameters:
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.
Throws:
GSSException - содержащий следующие основные коды ошибок: GSSException.DUPLICATE_ELEMENT, GSSException.BAD_MECH, GSSException.BAD_NAMETYPE, GSSException.NO_CRED, GSSException.CREDENTIALS_EXPIRED, GSSException.FAILURE

equals

boolean equals(Object another)
Проверяет, утверждает ли этот GSSCredential ту же сущность, что и переданный объект. Два набора данных идентификации должны быть получены через одни и те же механизмы и должны относиться к одному и тому же принципалу.
Overrides:
equals в классе Object
Parameters:
another - другой GSSCredential для сравнения с этим
Returns:
true если два GSSCredential утверждают одну и ту же сущность; false в противном случае.
See Also:
  • Object.hashCode()
  • HashMap

hashCode

int hashCode()
Возвращает значение хэш-кода для этого GSSCredential.
Overrides:
hashCode в классе Object
Returns:
значение хэш-кода
See Also:
  • Object.equals(java.lang.Object)
  • System.identityHashCode(java.lang.Object)

© 1993, 2023, 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/21/docs/api/java.security.jgss/org/ietf/jgss/GSSCredential.html

Spec-Zone.ru

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