Класс 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 (фактическое имя принципала не имеет значения). Например, следующее разрешение предоставляет доступ к 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 . Информация возвращается в виде двумерного массива (массив[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, 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/java.base/javax/security/auth/PrivateCredentialPermission.html

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