1 /*
   2  * security policy used by the test process
   3  */
   4 
   5 grant {
   6   // test explicitly acccesses sun.rmi.server.ActivatableRef
   7   permission java.lang.RuntimePermission "accessClassInPackage.sun.rmi.server";
   8 
   9   // ref to make sure that internal ref is a UnicastRef
  10   permission java.lang.RuntimePermission "accessDeclaredMembers";
  11   permission java.lang.reflect.ReflectPermission "suppressAccessChecks";
  12 
  13   // standard test activation permissions
  14   permission java.io.FilePermission "..${/}..${/}test.props", "read";
  15 
  16   // test needs to cleanup rmid's log.
  17   permission java.io.FilePermission ".${/}log", "read,write,delete";
  18   permission java.io.FilePermission ".${/}log${/}-", "read,write,delete";
  19 
  20   // test needs to use java to exec an rmid
  21   permission java.io.FilePermission "${java.home}${/}bin${/}java", "execute";
  22 
  23   // test rmid uses these properties to propagate security values to rmid
  24   permission java.util.PropertyPermission "java.rmi.server.useDynamicProxies", "read";
  25   permission java.util.PropertyPermission "java.security.policy", "read";
  26   permission java.util.PropertyPermission "java.security.manager", "read";
  27 
  28   // used by TestLibrary to determine test environment
  29   permission java.util.PropertyPermission "test.*", "read";
  30   permission java.util.PropertyPermission "user.dir", "read";
  31   permission java.util.PropertyPermission "java.home", "read";
  32   permission java.util.PropertyPermission "java.rmi.activation.port", "write";
  33 
  34   // Needed to create an activation group
  35   permission java.lang.RuntimePermission "setFactory";
  36 
  37   // allow exporting of remote objects on an arbitrary port.
  38   permission java.net.SocketPermission "*:1024-", "connect,accept,listen";
  39 
  40   permission java.lang.RuntimePermission "getClassLoader";
  41 };