diff --git a/jdk/src/java.base/share/classes/java/lang/RuntimePermission.java b/jdk/src/java.base/share/classes/java/lang/RuntimePermission.java index 0df77f5e520..36b48b75d39 100644 --- a/jdk/src/java.base/share/classes/java/lang/RuntimePermission.java +++ b/jdk/src/java.base/share/classes/java/lang/RuntimePermission.java @@ -31,22 +31,19 @@ import java.util.Hashtable; import java.util.StringTokenizer; /** - * This class is for runtime permissions. A RuntimePermission - * contains a name (also referred to as a "target name") but - * no actions list; you either have the named permission - * or you don't. - * - *
+ * This class is for runtime permissions. A {@code RuntimePermission} + * contains a name (also referred to as a "target name") but no actions + * list; you either have the named permission or you don't. + *
* The target name is the name of the runtime permission (see below). The * naming convention follows the hierarchical property naming convention. - * Also, an asterisk - * may appear at the end of the name, following a ".", or by itself, to - * signify a wildcard match. For example: "loadLibrary.*" and "*" signify a - * wildcard match, while "*loadLibrary" and "a*b" do not. - *
- * The following table lists all the possible RuntimePermission target names, - * and for each provides a description of what the permission allows - * and a discussion of the risks of granting code the permission. + * Also, an asterisk may appear at the end of the name, following a ".", + * or by itself, to signify a wildcard match. For example: "loadLibrary.*" + * and "*" signify a wildcard match, while "*loadLibrary" and "a*b" do not. + *
+ * The following table lists the standard {@code RuntimePermission} + * target names, and for each provides a description of what the permission + * allows and a discussion of the risks of granting code the permission. * *
- * The target name is the name of a security configuration parameter (see below). - * Currently the SecurityPermission object is used to guard access - * to the Policy, Security, Provider, Signer, and Identity + * This class is for security permissions. A {@code SecurityPermission} + * contains a name (also referred to as a "target name") but no actions list; + * you either have the named permission or you don't. + *
+ * The target name is the name of a security configuration parameter + * (see below). Currently the {@code SecurityPermission} object is used to + * guard access to the {@link AccessControlContext}, {@link Policy}, + * {@link Provider}, {@link Security}, {@link Signer}, and {@link Identity} * objects. - *
- * The following table lists all the possible SecurityPermission target names, - * and for each provides a description of what the permission allows - * and a discussion of the risks of granting code the permission. + *
+ * The following table lists the standard {@code SecurityPermission} + * target names, and for each provides a description of what the permission + * allows and a discussion of the risks of granting code the permission. * *
The target name is the name of a security configuration parameter - * (see below). Currently the AuthPermission object is used to - * guard access to the Policy, Subject, LoginContext, - * and Configuration objects. + * (see below). Currently the {@code AuthPermission} object is used to + * guard access to the {@link Policy}, {@link Subject}, + * {@link javax.security.auth.login.LoginContext}, and + * {@link javax.security.auth.login.Configuration} objects. * - *
The possible target names for an Authentication Permission are: + *
The standard target names for an Authentication Permission are: * *
* doAs - allow the caller to invoke the @@ -125,6 +124,9 @@ package javax.security.auth; * Subject-based access control policy. ** + * @implNote + * Implementations may define additional target names, but should use naming + * conventions such as reverse domain name notation to avoid name clashes. */ public final class AuthPermission extends java.security.BasicPermission {