Java.util.PropertyPermission.newPermission Collection() 方法


Java.util.PropertyPermission.newPermission Collection() 方法

package com.codingdict;

import java.security.PermissionCollection;
import java.util.PropertyPermission;

public class PropertyPermissionDemo {
   private static PermissionCollection permissions;

   public static void main(String[] args) {

      // Build property permissions collection
      PropertyPermission permission =
      new PropertyPermission("java.*", "read");
      permissions = permission.newPermissionCollection();
      permissions.add(permission);
      permissions.add(new PropertyPermission("java.home.*", "read,write"));

      // Check permissions
      checkFileReadPermission("java.home");
      checkFileWritePermission("java.home");
      checkFileReadPermission("java.home.usr");
      checkFileWritePermission("java.home.usr");
   }

   private static void checkFileReadPermission(String path) {

      // Check permission on read action
      if(permissions.implies(new PropertyPermission(path, "read"))) {
         System.out.println("Has permissions on "+path+" for read");
      }
   }

   private static void checkFileWritePermission(String path) {

      // Check permission on read action
      if(permissions.implies(new PropertyPermission(path, "write"))) {
         System.out.println("Has permissions on "+path+" for write");
      }
   }
}