Spec-Zone.ru › OpenJDK 17

Класс AccessControlContext

java.lang.Object
java.security.AccessControlContext
@Deprecated(since="17", forRemoval=true) public final class AccessControlContext extends Object
Устаревший, подлежит удалению: Этот элемент API может быть удален в будущей версии.
Этот класс полезен только в сочетании с менеджером безопасности, который устарел и может быть удален в будущей версии. Следовательно, этот класс также устарел и может быть удалён. Замены для менеджера безопасности или этого класса нет.
Объект AccessControlContext используется для принятия решений о доступе к системным ресурсам на основе контекста, который он инкапсулирует.

Более конкретно, он инкапсулирует контекст и имеет единственный метод, checkPermission, который эквивалентен методу checkPermission в классе AccessController, с одним отличием: метод AccessControlContext checkPermission принимает решения о доступе на основе контекста, который он инкапсулирует, а не контекста текущей потоковой нити выполнения.

Таким образом, AccessControlContext предназначен для ситуаций, когда проверка безопасности, которая должна выполняться в рамках заданного контекста, фактически должна выполняться из другого контекста (например, из потока-рабочего).

Объект AccessControlContext создаётся путём вызова метода AccessController.getContext. Метод getContext делает «снимок» текущего контекста вызова и помещает его в объект AccessControlContext, который он возвращает. Пример вызова:

   AccessControlContext acc = AccessController.getContext()
 

Код в другом контексте может впоследствии вызвать метод checkPermission на ранее сохранённом объекте AccessControlContext. Пример вызова:

   acc.checkPermission(permission)
 
Since:
1.2
See Also:
  • AccessController

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

Конструктор Описание
AccessControlContext(AccessControlContext acc, DomainCombiner combiner)
Устаревший, подлежит удалению: Этот элемент API может быть удален в будущей версии.
Создаёт новый AccessControlContext с заданными AccessControlContext и DomainCombiner.
AccessControlContext(ProtectionDomain[] context)
Устаревший, подлежит удалению: Этот элемент API может быть удален в будущей версии.
Создаёт AccessControlContext с заданным массивом ProtectionDomains.

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

Модификатор и тип Метод Описание
void checkPermission(Permission perm)
Устаревший, подлежит удалению: Этот элемент API может быть удален в будущей версии.
Определяет, следует ли разрешить или запретить запрос доступа, указанный заданным разрешением, на основе текущей политики безопасности и контекста в этом объекте.
boolean equals(Object obj)
Устаревший, подлежит удалению: Этот элемент API может быть удален в будущей версии.
Проверяет два объекта AccessControlContext на равенство.
DomainCombiner getDomainCombiner()
Устаревший, подлежит удалению: Этот элемент API может быть удален в будущей версии.
Получить DomainCombiner ассоциированный с этим AccessControlContext.
int hashCode()
Устаревший, подлежит удалению: Этот элемент API может быть удален в будущей версии.
Возвращает значение хэш-кода для этого контекста.

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

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

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

AccessControlContext

public AccessControlContext(ProtectionDomain[] context)
Устаревший, подлежит удалению: Этот элемент API может быть удален в будущей версии.
Создаёт AccessControlContext с заданным массивом ProtectionDomains. Контекст не должен быть null. Дублирующиеся домены будут удалены из контекста.
Parameters:
context - ProtectionDomains, связанные с этим контекстом. Недублирующиеся домены копируются из массива. Последующие изменения в массиве не повлияют на этот AccessControlContext.
Throws:
NullPointerException - если context равен null

AccessControlContext

public AccessControlContext(AccessControlContext acc, DomainCombiner combiner)
Устаревший, подлежит удалению: Этот элемент API может быть удален в будущей версии.
Создаёт новый AccessControlContext с заданным AccessControlContext и DomainCombiner. Этот конструктор связывает предоставленный DomainCombiner с предоставленным AccessControlContext.
Parameters:
acc - AccessControlContext , связанный с предоставленным DomainCombiner.
combiner - DomainCombiner, который будет связан с предоставленным AccessControlContext.
Throws:
NullPointerException - если предоставленный context равен null.
SecurityException - если установлен менеджер безопасности и у вызывающего объекта отсутствует разрешение "createAccessControlContext" SecurityPermission
Since:
1.3

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

getDomainCombiner

public DomainCombiner getDomainCombiner()
Устаревший, подлежит удалению: Этот элемент API может быть удален в будущей версии.
Получить DomainCombiner , связанный с этим AccessControlContext.
Returns:
DomainCombiner , связанный с этим AccessControlContext, или null, если его нет.
Throws:
SecurityException - если установлен менеджер безопасности и у вызывающего объекта отсутствует разрешение "getDomainCombiner" SecurityPermission
Since:
1.3

checkPermission

public void checkPermission(Permission perm) throws AccessControlException
Устаревший, подлежит удалению: Этот элемент API может быть удален в будущей версии.
Определяет, следует ли разрешить или запретить запрос доступа, указанный заданным разрешением, на основе текущей политики безопасности и контекста в этом объекте. Запрос разрешается только в том случае, если каждый ProtectionDomain в контексте подразумевает разрешение. В противном случае запрос отклоняется.

Этот метод молчаливо возвращает, если запрос доступа разрешён, или вызывает соответствующее AccessControlException в противном случае.

Parameters:
perm - запрашиваемое разрешение.
Throws:
AccessControlException - если указанное разрешение не разрешено на основе текущей политики безопасности и контекста, инкапсулированного этим объектом.
NullPointerException - если разрешение для проверки равно null.

equals

public boolean equals(Object obj)
Устаревший, подлежит удалению: Этот элемент API может быть удален в будущей версии.
Проверяет два объекта AccessControlContext на равенство. Проверяет, что obj является объектом AccessControlContext и имеет тот же набор ProtectionDomains, что и этот контекст.
Overrides:
equals в классе Object
Parameters:
obj - объект, с которым мы проверяем равенство с этим объектом.
Returns:
true, если obj является объектом AccessControlContext и имеет тот же набор ProtectionDomains, что и этот контекст; false в противном случае.
See Also:
  • Object.hashCode()
  • HashMap

hashCode

public int hashCode()
Устаревший, подлежит удалению: Этот элемент API может быть удален в будущей версии.
Возвращает значение хэш-кода для этого контекста. Хэш-код вычисляется путём побитового исключающего ИЛИ хэш-кодов всех protection domains в контексте.
Overrides:
hashCode в классе Object
Returns:
значение хэш-кода для этого контекста.
See Also:
  • Object.equals(java.lang.Object)
  • System.identityHashCode(java.lang.Object)

© 1993, 2021, 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/17/docs/api/java.base/java/security/AccessControlContext.html

Spec-Zone.ru

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