Spec-Zone.ru › OpenJDK 8

Интерфейс GSSCredential

Все суперинтерфейсы:
Cloneable

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 int ACCEPT_ONLY

Флаг использования данных аутентификации, запрашивающий их использование только для принятия контекста.

static int DEFAULT_LIFETIME

Константа времени жизни, представляющая стандартный срок действия данных аутентификации.

static int INDEFINITE_LIFETIME

Константа времени жизни, представляющая неопределённый срок действия данных аутентификации.

static int INITIATE_AND_ACCEPT

Флаг использования данных аутентификации, запрашивающий их использование как для инициирования, так и для принятия контекста.

static 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.

См. также:
Значения постоянных полей

БЕССРОЧНЫЙ_СРОК_ДЕЙСТВИЯ

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()

Возвращает значение hashcode для этого GSSCredential.

Переопределяет:
hashCode в классе Object
Возвращает:
значение hashCode
См. также:
Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)

© 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.

Spec-Zone.ru

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