Java SecurityManager checkPropertiesAccess()方法与示例

SecurityManager类的checkPropertiesAccess()方法 (SecurityManager Class checkPropertiesAccess() method)

  • checkPropertiesAccess() method is available in java.lang package.

    checkPropertiesAccess()方法在java.lang包中可用。

  • checkPropertiesAccess() method invokes checkPermission with the PropertyPermission("*", "read, write") permission to give access to properties.

    checkPropertiesAccess()方法使用PropertyPermission(“ *”,“ read,write”)权限调用checkPermission,以授予对属性的访问权限。

  • checkPropertiesAccess() method is a non-static method, it is accessible with the class object only and if we try to access the method with the class name then we will get an error.

    checkPropertiesAccess()方法是一个非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。

  • checkPropertiesAccess() method may throw an exception at the time of accessing properties.

    在访问属性时, checkPropertiesAccess()方法可能会引发异常。

    SecurityException – This exception may throw when the calling thread does not have the right to access or update system properties.

    SecurityException-当调用线程无权访问或更新系统属性时,可能引发此异常。

Syntax:

句法:

    public void checkPropertiesAccess();

Parameter(s):

参数:

  • It does not accept any parameter.

    它不接受任何参数。

Return value:

返回值:

The return type of this method is void, it returns nothing.

此方法的返回类型为void ,不返回任何内容。

Example:

例:

// Java program to demonstrate the example 
// of void checkPropertiesAccess ()
// method of SecurityManager 

public class CheckPropertiesAccess extends SecurityManager {
     
    public static void main(String[] args) {
     
        // By using setProperty() method is to set the policy property 
        // with security manager
        System.setProperty("java.security.policy", "file:/C:/java.policy");

        // Instantiating a CheckPropertiesAccess object
        CheckPropertiesAccess cpa = new CheckPropertiesAccess();

        // By using setSecurityManager() method is to set the
        // security manager
        System.setSecurityManager(cpa);

        // By using checkPropertiesAccess() method is to check
        // accessing of system properties
        cpa.checkPropertiesAccess();

        // Display the message
        System.out.println("Not Restricted..");
    }
}

Output

输出量

Exception in thread "main" java.security.AccessControlException: access denied ("java.util.PropertyPermission" "*" "read,write")
	at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:472)
	at java.base/java.security.AccessController.checkPermission(AccessController.java:897)
	at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:322)
	at java.base/java.lang.SecurityManager.checkPropertiesAccess(SecurityManager.java:1034)
	at CheckPropertiesAccess.main(CheckPropertiesAccess.java:20)


翻译自: https://www.includehelp.com/java/securitymanager-checkpropertiesaccess-method-with-example.aspx

你可能感兴趣的:(java,python,jvm,多线程,spring)