Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The permission java.security.AllPermission grants all possible permissions to code. This facility was included to reduce the burden of managing a multitude of permissions during routine testing, as well as when a body of code is completely trusted. Code is typically granted AllPermission via the security policy file; it is also possible to programmatically associate AllPermission with a ProtectionDomain. This permission is dangerous in production environments; never grant AllPermission to untrusted code.

ReflectPermission

...

, suppressAccessChecks

Wiki Markup
The {{suppressAccessChecksReflectPermission}} permission when granted inon the contexttarget of {{java.lang.reflect.ReflectPermissionsuppressAccessChecks}} suppresses all standard Java language access checks when the permitted class attempts to operate on {{public}}, default, {{protected}}, or {{private}} members of another class. Consequently, the permitted class can obtain permissions to examine any field or invoke any method belonging to an arbitrary class \[[Reflect 2006|AA. Bibliography#Ref 06]\]. Consequently the {{suppressAccessChecksReflectPErmission}} permision must never be granted with target {{ReflectPermissionsuppressAccessChecks}}.

Wiki Markup
According to the technical note, Permissions in the Java SE 6 Development Kit \[[Permissions 2008|AA. Bibliography#Permissions 08]\], Section [ReflectPermission|http://java.sun.com/javase/6/docs/technotes/guides/security/permissions.html#ReflectPermission], target {{suppressAccessChecks}}:

Warning: Extreme caution should be taken before granting this permission to code, for it provides the ability to access fields and invoke methods in a class. This includes not only public, but protected and private fields and methods as well.

RuntimePermission

...

, createClassLoader

The java.lang.RuntimePermission permission applied to target createClassLoader grants permission to code so that it can create a ClassLoader object. This is extremely dangerous because malicious code can create its own custom class loader and load classes by assigning them arbitrary permissions. A custom class loader can define a class (or ProtectionDomain) with permissions that override any restrictions specified in the system-wide security policy file.

...

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="99e52c3a6e8503fe-4539f97f-4a9949a4-aec3af37-e3bea5dc0545ffd5253ab200"><ac:plain-text-body><![CDATA[

[[API 2006

AA. Bibliography#API 06]]

[Class AllPermission

http://java.sun.com/javase/6/docs/api/java/security/AllPermission.html], [ReflectPermission

http://java.sun.com/javase/6/docs/api/java/lang/reflect/ReflectPermission.html], [RuntimePermission

http://java.sun.com/javase/6/docs/api/java/lang/reflect/RuntimePermission.html]

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="2766db1de9f2e186-21c6dd22-40fc4e09-be848ad3-5955b13fa56c6930f3be5149"><ac:plain-text-body><![CDATA[

[[Gong 2003

AA. Bibliography#Gong 03]]

 

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="a505fe8a9bec0c5d-3cff2f1b-4f784925-b6538d70-aa1f0ebfc6caa1aa14922979"><ac:plain-text-body><![CDATA[

[[Long 2005

AA. Bibliography#Long 05]]

Section 2.5, Reflection

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="405aed68b89a37bb-08d3af04-4482449a-97c48dbe-2c2df03ae341b96471e0d55e"><ac:plain-text-body><![CDATA[

[[Permissions 2008

AA. Bibliography#Permissions 08]]

Section [ReflectPermission

http://java.sun.com/javase/6/docs/technotes/guides/security/permissions.html#ReflectPermission]

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="b2800474a8fd987a-180f050d-4ee94651-b8bea37b-d55b153b70f7664ab1662cab"><ac:plain-text-body><![CDATA[

[[Reflect 2006

AA. Bibliography#Ref 06]]

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="2c9894306c5a60b5-a4f5b4a6-40484b85-9a35b63e-893bb8cb878d1d10e12099b9"><ac:plain-text-body><![CDATA[

[[Security 2006

AA. Bibliography#Security 06]]

[Security Architecture

http://java.sun.com/javase/6/docs/technotes/guides/security/spec/security-spec.doc.html], Section [RuntimePermission

http://java.sun.com/javase/6/docs/technotes/guides/security/permissions.html#RuntimePermission]

]]></ac:plain-text-body></ac:structured-macro>

...