javax.security.jacc
Класс PolicyContext

java.lang.Object
  расширенный javax.security.jacc.PolicyContext

public final class PolicyContext
расширяет java.lang. Объект

Эта утилита class используется контейнерами, чтобы передать идентификаторы контекста политики и другую политику соответствующий контекст к Policy провайдеры. Policy провайдеры используют идентификатор контекста политики, чтобы выбрать подмножество политики применяться в решениях о предоставлении доступа.

Значение идентификатора контекста политики является a String и у каждого потока есть независимо установленный идентификатор контекста политики. Контейнер установит определяющее контекст потоком значение идентификатора контекста политики, вызывая помехи setContextID метод. Значение определяющего контекст потоком идентификатора контекста политики доступно (к Policy) вызывая помехи getContextID метод.

Этот class также используется Policy провайдеры, чтобы запросить дополнительную определяющую контекст потоком политику соответствующие объекты контекста от контейнера вызова. Контейнерно-специфичный регистр контейнеров PolicyContext обработчики используя помехи registerHandler метод. Регистрация обработчика является определяющей контекст к class, так, что та же самая регистрация обработчика является активной во всех контекстах потока. Контейнеры могут использовать статический метод setHandlerData установить определяющий контекст потоком параметр, который передадут к обработчикам, когда ими активируют Policy провайдеры. Помехи getContext метод используется, чтобы активировать обработчик и получить соответствующий объект контекста.

Статические функции средства доступа, обеспеченные этим class, позволяют значениям контекста политики на поток быть установленными и переданными независимые от общей ссылки на определенный экземпляр PolicyContext.

PolicyContext class может инкапсулировать статические переменные экземпляра ThreadLocal, чтобы представить идентификатор контекста политики и значения данных обработчика.

Сервер приложений должен связать или установить PolicyContext class, и контейнеры сервера приложений должны предотвратить методы PolicyContext class от того, чтобы быть вызванным от вызова контекстов, которые не разрешаются вызвать эти методы. За исключением getContextID и методов GetHandlerKeys, контейнеры должны ограничить и предоставить доступ к методам PolicyContext class к вызову контекстов, которым доверяет контейнер, чтобы выполнить контейнерные решения о предоставлении доступа. class PolicyContext может удовлетворить это требование (от имени его контейнера), отклоняя требования, сделанные из AccessControlContext, которому не предоставили "setPolicy" SecurityPermission, и гарантируя, что провайдерам Политики, используемым, чтобы выполнить контейнерные решения о предоставлении доступа, предоставляют "setPolicy" разрешение.

Автор:
Рон Монзилло, Гари Эллисон
См. Также:
PolicyContextHandler

Сводка метода
static java.lang.Object getContext(java.lang.String key)
          Этот метод может использоваться a Policy провайдер, чтобы активироваться PolicyContextHandler зарегистрированный к ключу объекта контекста и причине это, чтобы возвратить соответствующий объект контекста политики из контейнера.
static java.lang.String getContextID()
          Этот статический метод возвращает значение идентификатора контекста политики, связанного с потоком, на котором вызывают средство доступа.
static java.util.Set getHandlerKeys()
          Этот метод может использоваться, чтобы получить ключи, которые идентифицируют контейнерные определенные обработчики контекста, зарегистрированные контейнером.
static void registerHandler(java.lang.String key, PolicyContextHandler handler, boolean replace)
          Авторизация защищенный метод, используемый, чтобы зарегистрировать определенный контейнер PolicyContext обработчик.
static void setContextID(java.lang.String contextID)
          Защищенный метод авторизации, используемый, чтобы изменить значение идентификатора контекста политики, связанного с потоком, на котором вызывают этот метод.
static void setHandlerData(java.lang.Object data)
          Защищенный метод авторизации, который может использоваться, чтобы связать определяющий контекст потоком объект данных обработчика с PolicyContext.
 
Методы, наследованные от class java.lang. Объект
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Деталь метода

setContextID

public static void setContextID(java.lang.String contextID)
Защищенный метод авторизации, используемый, чтобы изменить значение идентификатора контекста политики, связанного с потоком, на котором вызывают этот метод.

Параметры:
contextID - a String это представляет значение идентификатора контекста политики, который будет присвоен PolicyContext для вызывающего потока. Значение null законное значение для этого параметра.
Броски:
java.lang.SecurityException - если вызов AccessControlContext не разрешается контейнером вызвать этот метод.

getContextID

public static java.lang.String getContextID()
Этот статический метод возвращает значение идентификатора контекста политики, связанного с потоком, на котором вызывают средство доступа.

Возвраты:
String (или null) идентификатор контекста политики устанавливается для потока. Этот метод должен возвратить идентификатор контекста политики значения по умолчанию, null, если идентификатор контекста политики потока не был установлен через setContext к другому значению.
Броски:
java.lang.SecurityException - если вызов AccessControlContext не разрешается контейнером вызвать этот метод. Контейнеры могут хотеть авторизовывать звонки в этот метод любым AccessControlContext.

setHandlerData

public static void setHandlerData(java.lang.Object data)
Защищенный метод авторизации, который может использоваться, чтобы связать определяющий контекст потоком объект данных обработчика с PolicyContext. Объект данных обработчика будет сделан доступным для обработчиков, где он может служить, чтобы предоставить или связать обработчик с вызовом определяющее контекст состояние в пределах контейнера.

Параметры:
data - контейнерно-специфичный объект, который будет связан с вызывающим потоком и передан к любому обработчику, активированному a Policy провайдер (на потоке). Значение null законное значение для этого параметра, и значение, которое будет использоваться в активации обработчиков если setHandlerData не был вызван на потоке.
Броски:
java.lang.SecurityException - если вызов AccessControlContext не разрешается контейнером вызвать этот метод.

registerHandler

public static void registerHandler(java.lang.String key,
                                   PolicyContextHandler handler,
                                   boolean replace)
                            throws PolicyContextException
Авторизация защищенный метод, используемый, чтобы зарегистрировать определенный контейнер PolicyContext обработчик. Обработчик может быть зарегистрирован, чтобы обработать многократные ключи, но в любое время, самое большее один обработчик может быть зарегистрирован для ключа.

Параметры:
key - (чувствительный к регистру) String это идентифицирует объект контекста, обработанный обработчиком. Значение этого параметра не должно быть нулем.
handler - объект, который реализует PolicyContextHandler интерфейс. Значение этого параметра не должно быть нулем.
replace - это булево значение определяет поведение этого метода, если, когда это вызывают, a PolicyContextHandler был уже зарегистрирован, чтобы обработать тот же самый ключ. В этом случае, и если значение этого параметра true, существующий обработчик заменяется обработчиком параметра. Если значение этого параметра является ложью, существующая регистрация сохраняется, и исключение выдается.
Броски:
java.lang.IllegalArgumentException - если значение или обработчика или ключевых параметров является нулем, или значение параметра замены false и обработчик с тем же самым ключом как обработчик параметра уже регистрируется.
java.lang.SecurityException - если вызов AccessControlContext не разрешается контейнером вызвать этот метод.
PolicyContextException - если работа этим методом на параметре, PolicyContextHandler заставляет это выдавать проверенное исключение, которое не учитывается в подписи этого метода.

getHandlerKeys

public static java.util.Set getHandlerKeys()
Этот метод может использоваться, чтобы получить ключи, которые идентифицируют контейнерные определенные обработчики контекста, зарегистрированные контейнером.

Возвраты:
A Set, элементы который, String значения ключа, которые идентифицируют обработчики, которые были зарегистрированы и поэтому могут быть активированы на PolicyContext.
Броски:
java.lang.SecurityException - если вызов AccessControlContext не разрешается контейнером вызвать этот метод. Контейнеры могут хотеть авторизовывать звонки в этот метод любым AccessControlContext.

getContext

public static java.lang.Object getContext(java.lang.String key)
                                   throws PolicyContextException
Этот метод может использоваться a Policy провайдер, чтобы активироваться PolicyContextHandler зарегистрированный к ключу объекта контекста и причине это, чтобы возвратить соответствующий объект контекста политики из контейнера. Когда этот метод активирует обработчик, он передает к обработчику ключ объекта контекста и данные обработчика, связанные с вызывающим потоком.

Параметры:
key - a String это идентифицирует PolicyContextHandler активироваться и объект контекста, который будет получен от обработчика. Значение этого параметра не должно быть нулем.
Возвраты:
контейнер и конкретная цель обработчика, содержащая требуемый контекст. A null значение возвращается, если соответствующий обработчик был зарегистрирован, и значение соответствующего контекста является нулем.
Броски:
java.lang.IllegalArgumentException - если a PolicyContextHandler не был зарегистрирован для ключа, или зарегистрированный обработчик больше не поддерживает ключ.
java.lang.SecurityException - если вызов AccessControlContext не разрешается контейнером вызвать этот метод.
PolicyContextException - если работа этим методом на идентифицированном PolicyContextHandler заставляет это выдавать проверенное исключение, которое не учитывается в подписи этого метода.


Представьте ошибку или функцию

Авторское право © 2009-2011, Oracle Corporation и/или его филиалы. Все права защищены. Использование подвергается срокам действия лицензии.

Сгенерированный на 10-February-2011 12:41


Spec-Zone.ru - all specs in one place



free hit counter