Класс PrivateCredentialPermission
- java.lang.Object
-
- java.security.Permission
-
- javax.security.auth.PrivateCredentialPermission
- Все реализуемые интерфейсы:
- Serializable, Guard
public final class PrivateCredentialPermission extends Permission
Этот класс используется для защиты доступа к закрытым учетным данным, принадлежащим конкретной Subject.
Subject представлен набором принципалов.
Имя целевого объекта этого Permission указывает имя класса Credential и набор принципалов. Единственное
допустимое значение для действий этого разрешения — "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".
- См. также:
- Сериализованная форма
Конструкторы
| Конструктор и описание |
|---|
PrivateCredentialPermission(String name,
String actions)
Создает новый |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
boolean |
equals(Object obj) Проверяет два объекта |
String |
getActions() Возвращает «каноническое строковое представление» действий. |
String |
getCredentialClass() Возвращает имя класса Credential, связанное с этим |
String[][] |
getPrincipals() Возвращает классы и имена |
int |
hashCode() Возвращает хэш-код для этого объекта. |
boolean |
implies(Permission p) Проверяет, подразумевает ли этот |
PermissionCollection |
newPermissionCollection() Возвращает однородный набор PrivateCredentialPermissions в |
Методы, унаследованные от класса 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
указывает как класс Credential, так и Principal набор.
- Параметры:
-
name- имя, указывающее класс Credential иPrincipalнабор. -
actions- действия, указывающие, что Credential может быть прочитан. - Исключения:
-
IllegalArgumentException- еслиnameне соответствует правильному синтаксису или еслиactionsне равно "read".
Подробное описание методов
getCredentialClass
public String getCredentialClass()
Возвращает имя класса Credential, связанное с этим PrivateCredentialPermission.
- Возвращает:
- имя класса Credential, связанное с этим
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, имеет тот же класс credential, что и этот объект, а также те же принципалы, что и этот
объект. Порядок принципалов в именах целевых объектов соответствующих разрешений не имеет значения.
- Задано:
-
equalsв классеPermission - Параметры:
-
obj- объект, с которым мы проверяем равенство с этим объектом. - Возвращает:
- true, если obj является
PrivateCredentialPermission, имеет тот же класс credential, что и этот объект, и имеет те же принципалы, что и этот объект. - См. также:
-
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.