Spec-Zone.ru › OpenJDK 21

Класс PrivateCredentialPermission

java.lang.Object
java.security.Permission
javax.security.auth.PrivateCredentialPermission
Все реализованные интерфейсы:
Serializable, Guard
public final class PrivateCredentialPermission extends Permission
Этот класс используется для защиты доступа к закрытым учетным данным, принадлежащим конкретному Subject. Subject представлен набором принципалов.

Имя целевого объекта этого Permission указывает имя класса учетных данных и набор принципалов. Единственное допустимое значение для действий данного разрешения — «read». Имя целевого объекта должно соответствовать следующему синтаксису:

      CredentialClass {PrincipalClass "PrincipalName"}*
 
Например, следующее разрешение предоставляет доступ к com.sun.PrivateCredential, которому принадлежат субъекты, имеющие com.sun.Principal с именем «duke». Обратите внимание, что, хотя в этом примере, как и во всех примерах ниже, информация о Codebase, SignedBy или Principal в утверждении разрешения отсутствует (для простоты), в реальных конфигурациях политики эта информация должна указываться при необходимости.

    grant {
      permission javax.security.auth.PrivateCredentialPermission
              "com.sun.PrivateCredential com.sun.Principal \"duke\"",
              "read";
    };
 
Если CredentialClass — «*», то доступ предоставляется ко всем закрытым учетным данным, принадлежащим указанному Subject. Если «PrincipalName» — «*», то доступ предоставляется к указанным учетным данным, принадлежащим любому Subject, который имеет указанный Principal (фактическое PrincipalName не имеет значения). Например, следующее разрешение предоставляет доступ к a.b.Credential, которому принадлежат любые Subject с a.b.Principal.
    grant {
      permission javax.security.auth.PrivateCredentialPermission
              "a.b.Credential a.b.Principal "*"",
              "read";
    };
 
Если и PrincipalClass, и «PrincipalName» равны «*», то доступ предоставляется к указанным учетным данным, принадлежащим любому Subject.

Кроме того, пара PrincipalClass/PrincipalName может повторяться:

    grant {
      permission javax.security.auth.PrivateCredentialPermission
              "a.b.Credential a.b.Principal "duke" c.d.Principal "dukette"",
              "read";
    };
 
Вышеприведенное разрешение предоставляет доступ к закрытым учетным данным «a.b.Credential», принадлежащим Subject с как минимум двумя связанными принципалами: «a.b.Principal» с именем «duke» и «c.d.Principal» с именем «dukette».
С момента:
1.4
См. также:
  • Сериализованная форма

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

Конструктор Описание
PrivateCredentialPermission(String name, String actions)
Создает новый PrivateCredentialPermission со значениями name.

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

Модификатор и тип Метод Описание
boolean equals(Object obj)
Сравнивает два объекта PrivateCredentialPermission на равенство.
String getActions()
Возвращает «каноническое строковое представление» действий.
String getCredentialClass()
Возвращает имя класса учетных данных, связанных с этим PrivateCredentialPermission.
String[][] getPrincipals()
Возвращает классы и имена Principal, связанные с этим PrivateCredentialPermission.
int hashCode()
Возвращает хэш-код для этого объекта.
boolean implies(Permission p)
Проверяет, подразумевает ли этот PrivateCredentialPermission указанный Permission.
PermissionCollection newPermissionCollection()
Возвращает однородную коллекцию PrivateCredentialPermissions в PermissionCollection.

Методы, объявленные в классе java.security.Permission

checkGuard, getName, toString

Методы, объявленные в классе java.lang.Object

clone, finalize, getClass, notify, notifyAll, wait, wait, wait

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

PrivateCredentialPermission

public PrivateCredentialPermission(String name, String actions)
Создает новый PrivateCredentialPermission со значениями name. name задаёт как класс учетных данных, так и набор Principal.
Параметры:
name - имя, задающее класс учетных данных и набор Principal.
actions - действия, указывающие, что учетные данные могут быть прочитаны.
Исключения:
IllegalArgumentException - если name не соответствует правильному синтаксису или actions не равно «read».

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

getCredentialClass

public String getCredentialClass()
Возвращает имя класса учетных данных, связанных с этим PrivateCredentialPermission.
Возвращает:
имя класса учетных данных, связанных с этим PrivateCredentialPermission.

getPrincipals

public String[][] getPrincipals()
Возвращает классы и имена Principal , связанные с этим PrivateCredentialPermission. Информация возвращается в виде двумерного массива (array[x][y]). Значение 'x' соответствует количеству пар класса и имени Principal. При (y==0) оно соответствует значению класса Principal, а при (y==1) — значению имени Principal. Например, array[0][0] соответствует имени класса первого Principal в массиве. array[0][1] соответствует имени Principal первого Principal в массиве.
Возвращает:
классы и имена Principal , связанные с этим PrivateCredentialPermission.

implies

public boolean implies(Permission p)
Проверяет, подразумевает ли этот PrivateCredentialPermission указанный Permission.

Этот метод возвращает true, если:

  • p является экземпляром PrivateCredentialPermission и
  • имя целевого объекта p подразумевается именем целевого объекта этого объекта. Например:
      [* P1 "duke"] implies [a.b.Credential P1 "duke"].
      [C1 P1 "duke"] implies [C1 P1 "duke" P2 "dukette"].
      [C1 P2 "dukette"] implies [C1 P1 "duke" P2 "dukette"].
     
Указано в:
implies в классе Permission
Параметры:
p - Permission для проверки.
Возвращает:
true, если этот PrivateCredentialPermission подразумевает указанный Permission, false — в противном случае.

equals

public boolean equals(Object obj)
Сравнивает два объекта PrivateCredentialPermission на равенство. Проверяет, что obj является PrivateCredentialPermission, имеет тот же класс учетных данных, что и этот объект, а также те же принципалы, что и этот объект. Порядок принципалов в соответствующих именах разрешений не имеет значения.
Указано в:
equals в классе Permission
Параметры:
obj - объект, с которым мы сравниваем на равенство с этим объектом.
Возвращает:
true, если obj является PrivateCredentialPermission, имеет тот же класс учетных данных, что и этот объект, и имеет те же принципалы, что и этот объект.
См. также:
  • Object.hashCode()
  • HashMap

hashCode

public int hashCode()
Возвращает хэш-код для этого объекта.
Указано в:
hashCode в классе Permission
Возвращает:
хэш-код для этого объекта.
См. также:
  • Object.equals(java.lang.Object)
  • System.identityHashCode(java.lang.Object)

getActions

public String getActions()
Возвращает «каноническое строковое представление» действий. Этот метод всегда возвращает строку «read».
Указано в:
getActions в классе Permission
Возвращает:
действия (всегда возвращает «read»).

newPermissionCollection

public PermissionCollection newPermissionCollection()
Возвращает однородную коллекцию PrivateCredentialPermissions в PermissionCollection. Такой PermissionCollection не определён, поэтому этот метод всегда возвращает null.
Переопределяет:
newPermissionCollection в классе Permission
Возвращает:
null во всех случаях.

© 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.base/javax/security/auth/PrivateCredentialPermission.html

Spec-Zone.ru

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