|
JavaTM Platform Standard Ed. 6 |
|||||||||
��һ���� ��һ���� | ��� ��� ������ | |||||||||
ժҪ�� Ƕ�� | �ֶ� | ���췽�� | ���� | ��ϸ��Ϣ�� �ֶ� | ���췽�� | ���� |
java.lang.Objectjava.security.Policy
public abstract class Policy
Policy ������ȷ���� Java ����ʱ������ִ�еĴ����Ƿ���Ȩִ�а�ȫ���еIJ�����
�������ʱ��ֻ��һ�� Policy ����װ������ʱ�С�����ͨ������ setPolicy
������װ Policy ����װ�� Policy �������ͨ������ getPolicy
������á�
�����δ������ʱ�а�װ�κ� Policy ������ô������ getPolicy
��װĬ�� Policy ʵ�ֵ�ʵ�����˳������Ĭ������ʵ�֣���
ͨ���� "policy.provider" ��ȫ���ԣ��� Java ��ȫ�����ļ��У���ֵ����Ϊ���� Policy ����ʵ�ֵ���ȫ���������Ը���Ĭ�� Policy ʵ�֡�Java ��ȫ�����ļ�λ����Ϊ <JAVA_HOME>/lib/security/java.security ���ļ��С�
<JAVA_HOME> ���� java.home ϵͳ���Ե�ֵ����ָ�� JRE �İ�װĿ¼��
Ӧ�ó���������ֱ����� Policy���ṩ���Ƶ�ʵ�֡����⣬ͨ������ijһ�� getInstance
����������ʹ�ñ�������Ϊ���������Թ���һ�� Policy �����ʵ�֡�Ĭ�ϲ��������� "JavaPolicy"���йر� Policy �����б��������
Java Cryptography Architecture API Specification & Reference �ĸ�¼ A��
��װ�� Policy ʵ����ͨ��Ĭ�ϰ�װ����� setPolicy
��������Ҫȷ��ִ�д��루��װ�� ProtectionDomain �У��Ƿ����ִ���ܱ��� SecurityManager ����ʱ��Java ����ʱ�������� implies
��Policy ������λ�ȡ����������� Policy ʵ�ֱ����������������ݿ��Դ洢�ڴ� ASCII �ļ��С�Policy ������л��������ļ��С����ݿ��еȵȡ�
refresh
����ʹ Policy ����ˢ��/���������ݡ� �˲�����ʵ���йء����磬��� Policy ���������ݴ洢�������ļ��У���ô���� refresh
�������ض����Ʋ����ļ��������֧��ˢ�²�������ô�˷�����ִ���κβ�����ע�⣬ˢ�²��Զ��ض� ProtectionDomain �е��������Ч����ȡ���� Policy �ṩ�ߵ� implies
����ʵ�ּ��� PermissionCollection ������ԡ�
Provider
,
ProtectionDomain
,
Permission
Ƕ����ժҪ | |
---|---|
static interface |
Policy.Parameters
�����ʾ���� Policy �����ı�ǽӿڡ� |
�ֶ�ժҪ | |
---|---|
static PermissionCollection |
UNSUPPORTED_EMPTY_COLLECTION
һ���յ�ֻ�� PermissionCollection ʵ���� |
���췽��ժҪ | |
---|---|
Policy()
|
����ժҪ | |
---|---|
static Policy |
getInstance(String type,
Policy.Parameters params)
����ָ�����͵� Policy ���� |
static Policy |
getInstance(String type,
Policy.Parameters params,
Provider provider)
����ָ�����͵� Policy ���� |
static Policy |
getInstance(String type,
Policy.Parameters params,
String provider)
����ָ�����͵� Policy ���� |
Policy.Parameters |
getParameters()
���� Policy ������ |
PermissionCollection |
getPermissions(CodeSource codesource)
����һ�� PermissionCollection ��������������ָ�� CodeSource ��Ȩ���� |
PermissionCollection |
getPermissions(ProtectionDomain domain)
����һ�� PermissionCollection ��������������ָ�� ProtectionDomain ��Ȩ���� |
static Policy |
getPolicy()
���ذ�װ�� Policy ���� |
Provider |
getProvider()
���ش� Policy �� Provider�� |
String |
getType()
���ش� Policy �����͡� |
boolean |
implies(ProtectionDomain domain,
Permission permission)
�������� ProtectionDomain ��Ȩ��ȫ�ֲ��ԣ��������Ƿ������˸�Ȩ�ޡ� |
void |
refresh()
ˢ��/���¼��ز������á� |
static void |
setPolicy(Policy p)
����ϵͳ��Χ�� Policy ���� |
���� java.lang.Object �̳еķ��� |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
�ֶ���ϸ��Ϣ |
---|
public static final PermissionCollection UNSUPPORTED_EMPTY_COLLECTION
���췽����ϸ��Ϣ |
---|
public Policy()
������ϸ��Ϣ |
---|
public static Policy getPolicy()
setPolicy
���ġ��˷�������ʹ�� SecurityPermission("getPolicy")
Ȩ���� SecurityManager.checkPermission
����֤���Ի�ȡ Policy ����
SecurityException
- �����ȫ���������ڲ����� checkPermission
������������ȡ Policy ����SecurityManager.checkPermission(Permission)
,
setPolicy(java.security.Policy)
public static void setPolicy(Policy p)
SecurityPermission("setPolicy")
Ȩ���� SecurityManager.checkPermission
����֤�������� Policy��
p
- �µ�ϵͳ Policy ����
SecurityException
- �����ȫ���������ڲ����� checkPermission
�������������� Policy��SecurityManager.checkPermission(Permission)
,
getPolicy()
public static Policy getInstance(String type, Policy.Parameters params) throws NoSuchAlgorithmException
�˷�������ѡ Provider ��ʼ��������ע�ᰲȫ�ṩ���б�������һ����װ PolicySpi ʵ�ֵ��� Policy ����ʵ��ȡ�Ե�һ��֧��ָ�����͵� Provider��
ע�⣬��ע���ṩ���б�����ͨ�� Security.getProviders()
������á�
type
- ָ���� Policy ���͡��йر� Policy �����б��������
Java Cryptography Architecture API Specification & Reference �ĸ�¼ A��params
- Policy �IJ���������Ϊ null��
SecurityException
- �����������Ȩ��ȡָ�����͵� Policy ʵ����
NullPointerException
- ���ָ������Ϊ null��
IllegalArgumentException
- ���ѡ�� Provider �� PolicySpi ʵ�ֲ�����ָ���IJ�����
NoSuchAlgorithmException
- ���û���κ� Provider ֧��ָ�����͵� PolicySpi ʵ�֡�Provider
public static Policy getInstance(String type, Policy.Parameters params, String provider) throws NoSuchProviderException, NoSuchAlgorithmException
����һ����װ PolicySpi ʵ�ֵ��� Policy ����ʵ��ȡ��ָ���ṩ�ߡ�ע�⣬ָ�����ṩ�߱������ڰ�ȫ�ṩ���б���ע�ᡣ
ע�⣬��ע���ṩ���б�����ʹ�� Security.getProviders()
������á�
type
- ָ���� Policy ���͡��йر� Policy �����б��������
Java Cryptography Architecture API Specification & Reference �ĸ�¼ A��params
- Policy �IJ���������Ϊ null��provider
- �ṩ�ߡ�
SecurityException
- �����������Ȩ��ȡָ�����͵� Policy ʵ����
NullPointerException
- ���ָ������Ϊ null��
IllegalArgumentException
- ���ָ���ṩ��Ϊ null ��գ�����ָ���ṩ�ߵ� PolicySpi ʵ�ֲ�����ָ���IJ�����
NoSuchProviderException
- ���ָ���ṩ��û���ڰ�ȫ�ṩ���б���ע�ᡣ
NoSuchAlgorithmException
- ���ָ���ṩ�߲�֧��ָ�����͵� PolicySpi ʵ�֡�Provider
public static Policy getInstance(String type, Policy.Parameters params, Provider provider) throws NoSuchAlgorithmException
����һ����װ PolicySpi ʵ�ֵ��� Policy ����ʵ��ȡ��ָ�� Provider ����ע�⣬ָ���� Provider �����������ṩ���б���ע�ᡣ
type
- ָ���� Policy ���͡��йر� Policy �����б��������
Java Cryptography Architecture API Specification & Reference �ĸ�¼ A��params
- Policy �IJ���������Ϊ null��provider
- Provider��
SecurityException
- �����������Ȩ��ȡָ�����͵� Policy ʵ����
NullPointerException
- ���ָ������Ϊ null��
IllegalArgumentException
- ���ָ���� Provider Ϊ null������ָ�� Provider �� PolicySpi ʵ�ֲ�����ָ���IJ�����
NoSuchAlgorithmException
- ���ָ���� Provider ��֧��ָ�����͵� PolicySpi ʵ�֡�Provider
public Provider getProvider()
ֻ��ͨ������ Policy.getInstance
��ȡ�� Policy ʵ������ Provider������˷������� null��
public String getType()
ֻ��ͨ������ Policy.getInstance
��ȡ�� Policy ʵ���������͡�����˷������� null��
public Policy.Parameters getParameters()
ֻ��ͨ������ Policy.getInstance
��ȡ�� Policy ʵ�����в���������˷������� null��
public PermissionCollection getPermissions(CodeSource codesource)
����Ӧ�ó���Ҫ���ô˷�������˲������в���ʵ�ֶ�֧�ִ˲�����
Ӧ�ó���ֻ������ implies
����ִ�в��Լ�顣���Ӧ�ó��ò����� getPermissions ��������ô��Ӧ�õ��� getPermissions(ProtectionDomain)
��
�˷�����Ĭ��ʵ�ַ��� Policy.UNSUPPORTED_EMPTY_COLLECTION���������ʵ�ֿ��Է������� CodeSource ��Ȩ���飬�������д�˷�����
codesource
- �����践�� PermissionCollection �� CodeSource��
public PermissionCollection getPermissions(ProtectionDomain domain)
����Ӧ�ó���Ҫ���ô˷�������˲������в���ʵ�ֶ�֧�ִ˲�����
Ӧ�ó���Ӧ���� implies
����ִ�в��Լ�顣
�˷�����Ĭ��ʵ�����Ȼ�ȡ getPermissions(CodeSource)
��CodeSource ȡ��ָ���� ProtectionDomain�����ص�Ȩ�ޣ��Լ�λ��ָ�� ProtectionDomain �е�Ȩ�ޡ�
Ȼ�����������ЩȨ�ޣ�����һ���µ� PermissionCollection �����з��ء���� getPermissions(CodeSource)
���� Policy.UNSUPPORTED_EMPTY_COLLECTION����ô�˷�����һ���µ� PermissionCollection �����з��ذ�����ָ�� ProtectionDomain �е�Ȩ�ޡ�
�������ʵ��֧�ַ������� ProtectionDomain ��Ȩ���飬�������д�˷�����
domain
- �����践�� PermissionCollection �� ProtectionDomain��
ProtectionDomain
,
SecureClassLoader
public boolean implies(ProtectionDomain domain, Permission permission)
domain
- Ҫ���Ե� ProtectionDomainpermission
- Ҫ�����䰵��Ȩ�� Permission ����
ProtectionDomain
public void refresh()
refresh
���������¶�ȡ���ļ���
�˷�����Ĭ��ʵ�ֲ�ִ���κβ������������ʵ��֧��ˢ�²������������д�˷�����
|
JavaTM Platform Standard Ed. 6 |
|||||||||
��һ���� ��һ���� | ��� ��� ������ | |||||||||
ժҪ�� Ƕ�� | �ֶ� | ���췽�� | ���� | ��ϸ��Ϣ�� �ֶ� | ���췽�� | ���� |
��Ȩ���� 2007 Sun Microsystems, Inc. ��������Ȩ���� ����������֤��������������ĵ����·ַ�������