1grant codeBase "file:NestedActionsTwoPrincipals.jar" { 2 permission javax.security.auth.AuthPermission "getSubject"; 3 permission javax.security.auth.AuthPermission "modifyPrincipals"; 4 permission javax.security.auth.AuthPermission "doAs"; 5 permission java.util.PropertyPermission "path.separator", "read"; 6 permission java.util.PropertyPermission "file.separator", "read"; 7 permission java.util.PropertyPermission "test.classes", "read"; 8 permission java.util.PropertyPermission "test.src", "read"; 9 permission java.util.PropertyPermission "test.java.opts", "read"; 10 permission java.util.PropertyPermission "java.home", "read"; 11 permission java.util.PropertyPermission "java.class.path", "read"; 12 permission java.io.FilePermission "NestedActions.tmp", "read,write,delete"; 13}; 14 15grant codeBase "file:WriteToFileAction.jar" 16 Principal javax.security.auth.x500.X500Principal "cn=Duke" { 17 permission javax.security.auth.AuthPermission "getSubject"; 18 permission javax.security.auth.AuthPermission "doAs"; 19 permission javax.security.auth.AuthPermission "modifyPrincipals"; 20 permission java.util.PropertyPermission "java.class.path", "read"; 21 permission java.io.FilePermission "NestedActions.tmp", "read,write"; 22}; 23 24grant codeBase "file:ReadFromFileAction.jar" 25 Principal javax.security.auth.x500.X500Principal "cn=Duke"{ 26 permission javax.security.auth.AuthPermission "getSubject"; 27 permission javax.security.auth.AuthPermission "doAs"; 28 permission java.util.PropertyPermission "java.class.path", "read"; 29 permission java.io.FilePermission "NestedActions.tmp", "read"; 30}; 31 32grant codeBase "file:ReadPropertyAction.jar" 33 Principal javax.security.auth.x500.X500Principal "cn=Java" { 34 permission javax.security.auth.AuthPermission "getSubject"; 35 permission javax.security.auth.AuthPermission "doAs"; 36 permission java.util.PropertyPermission "java.class.path", "read"; 37}; 38