java类java.io.FilePermission的实例源码

ClassPathTest.java 文件源码 项目:guava-mock 阅读 25 收藏 0 点赞 0 评论 0
private void doTestExistsThrowsSecurityException() throws IOException, URISyntaxException {
  URLClassLoader myLoader = (URLClassLoader) getClass().getClassLoader();
  URL[] urls = myLoader.getURLs();
  ImmutableList.Builder<File> filesBuilder = ImmutableList.builder();
  for (URL url : urls) {
    if (url.getProtocol().equalsIgnoreCase("file")) {
      filesBuilder.add(new File(url.toURI()));
    }
  }
  ImmutableList<File> files = filesBuilder.build();
  assertThat(files).isNotEmpty();
  SecurityManager disallowFilesSecurityManager = new SecurityManager() {
    @Override
    public void checkPermission(Permission p) {
      if (p instanceof FilePermission) {
        throw new SecurityException("Disallowed: " + p);
      }
    }
  };
  System.setSecurityManager(disallowFilesSecurityManager);
  try {
    files.get(0).exists();
    fail("Did not get expected SecurityException");
  } catch (SecurityException expected) {
  }
  ClassPath classPath = ClassPath.from(myLoader);
  assertThat(classPath.getResources()).isEmpty();
}
DuplicateClassTest.java 文件源码 项目:gemini.blueprint 阅读 24 收藏 0 点赞 0 评论 0
protected List getTestPermissions() {
    List list = super.getTestPermissions();
    list.add(new FilePermission("<<ALL FILES>>", "read"));
    list.add(new AdminPermission("*", AdminPermission.EXECUTE));
    list.add(new AdminPermission("*", AdminPermission.LIFECYCLE));
    list.add(new AdminPermission("*", AdminPermission.RESOLVE));
    list.add(new AdminPermission("*", AdminPermission.METADATA));
    return list;
}
ExtenderTest.java 文件源码 项目:gemini.blueprint 阅读 18 收藏 0 点赞 0 评论 0
protected List getTestPermissions() {
    List perms = super.getTestPermissions();
    // export package
    perms.add(new AdminPermission("*", AdminPermission.EXECUTE));
    perms.add(new AdminPermission("*", AdminPermission.LIFECYCLE));
    perms.add(new AdminPermission("*", AdminPermission.RESOLVE));
    perms.add(new FilePermission("<<ALL FILES>>", "read"));
    return perms;
}
ExtenderVersionTest.java 文件源码 项目:gemini.blueprint 阅读 23 收藏 0 点赞 0 评论 0
protected List getTestPermissions() {
    List perms = super.getTestPermissions();
    // export package
    perms.add(new AdminPermission("*", AdminPermission.EXECUTE));
    perms.add(new AdminPermission("*", AdminPermission.LIFECYCLE));
    perms.add(new AdminPermission("*", AdminPermission.RESOLVE));
    perms.add(new FilePermission("<<ALL FILES>>", "read"));
    return perms;
}
UpdateConfigurationTest.java 文件源码 项目:openjdk-jdk10 阅读 16 收藏 0 点赞 0 评论 0
public SimplePolicy(TestCase test, ThreadLocal<AtomicBoolean> allowAll) {
    this.allowAll = allowAll;
    permissions = new Permissions();
    permissions.add(new LoggingPermission("control", null));
    permissions.add(new FilePermission(PREFIX+".lck", "read,write,delete"));
    permissions.add(new FilePermission(PREFIX, "read,write"));

    // these are used for configuring the test itself...
    allPermissions = new Permissions();
    allPermissions.add(new java.security.AllPermission());

}
Bug6555001.java 文件源码 项目:openjdk-jdk10 阅读 21 收藏 0 点赞 0 评论 0
@Test
public void testReplacing() throws Exception {
    JAXPTestUtilities.tryRunWithTmpPermission(() -> {
        XMLInputFactory factory = XMLInputFactory.newInstance();
        factory.setProperty("javax.xml.stream.isReplacingEntityReferences", true);

        StringReader sr = new StringReader(XML);
        XMLEventReader reader = factory.createXMLEventReader(sr);

        boolean sawUndef = false;
        boolean sawDef = false;

        while (reader.hasNext()) {
            XMLEvent event = reader.nextEvent();
            // System.out.println("Event: " + event);
            if (event.isEntityReference()) {
                EntityReference ref = (EntityReference) event;
                if ("def".equals(ref.getName())) {
                    sawDef = true;
                } else if ("undef".equals(ref.getName())) {
                    sawUndef = true;
                } else {
                    throw new IllegalArgumentException("Unexpected entity name");
                }
            }
        }

        Assert.assertEquals(false, sawDef);
        Assert.assertEquals(true, sawUndef);
        reader.close();
    }, new FilePermission("/tmp/this/does/not/exist/but/that/is/ok", "read"));
}
HandlersOnComplexResetUpdate.java 文件源码 项目:openjdk-jdk10 阅读 16 收藏 0 点赞 0 评论 0
public SimplePolicy(TestCase test, ThreadLocal<AtomicBoolean> allowAll) {
    this.allowAll = allowAll;
    permissions = new Permissions();
    permissions.add(new LoggingPermission("control", null));
    permissions.add(new FilePermission(PREFIX+".lck", "read,write,delete"));
    permissions.add(new FilePermission(PREFIX, "read,write"));

    // these are used for configuring the test itself...
    allPermissions = new Permissions();
    allPermissions.add(new java.security.AllPermission());

}
Cardinality0to1Test.java 文件源码 项目:gemini.blueprint 阅读 21 收藏 0 点赞 0 评论 0
protected List getTestPermissions() {
    List perms = super.getTestPermissions();
    perms.add(new FilePermission("<<ALL FILES>>", "read"));
    perms.add(new AdminPermission("*", AdminPermission.EXECUTE));
    perms.add(new AdminPermission("*", AdminPermission.LIFECYCLE));
    perms.add(new AdminPermission("*", AdminPermission.RESOLVE));
    perms.add(new PropertyPermission("*", "read"));
    perms.add(new PropertyPermission("*", "write"));
    return perms;
}
OsgiLifecycleNotificationTest.java 文件源码 项目:gemini.blueprint 阅读 19 收藏 0 点赞 0 评论 0
protected List getTestPermissions() {
    List perms = super.getTestPermissions();
    // export package
    perms.add(new AdminPermission("*", AdminPermission.EXECUTE));
    perms.add(new AdminPermission("*", AdminPermission.LIFECYCLE));
    perms.add(new AdminPermission("*", AdminPermission.RESOLVE));
    perms.add(new FilePermission("<<ALL FILES>>", "read"));
    return perms;
}
BehaviorBaseTest.java 文件源码 项目:gemini.blueprint 阅读 23 收藏 0 点赞 0 评论 0
protected List getTestPermissions() {
    List list = super.getTestPermissions();
    list.add(new FilePermission("<<ALL FILES>>", "read"));
    list.add(new AdminPermission("*", AdminPermission.LIFECYCLE));
    list.add(new AdminPermission("*", AdminPermission.EXECUTE));
    list.add(new AdminPermission("*", AdminPermission.RESOLVE));
    return list;
}


问题


面经


文章

微信
公众号

扫码关注公众号