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();
}
java类java.io.FilePermission的实例源码
ClassPathTest.java 文件源码
项目:guava-mock
阅读 25
收藏 0
点赞 0
评论 0
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;
}