Есть Java код. Запускается без SecurityManager'а
public static void main(String[] args)
{
Permissions ps = new Permissions();
ps.add(new AllPermission());
ProtectionDomain domain = new ProtectionDomain(null, ps);
AccessControlContext context = new AccessControlContext(new ProtectionDomain[]{domain});
AccessController.doPrivileged(new PrivilegedAction<Object>()
{
@Override
public Object run()
{
AccessController.checkPermission(new FilePermission("/home/user/file.txt", SecurityConstants.FILE_READ_ACTION));
return null;
}
}, context); // java.security.AccessControlException: access denied (java.io.FilePermission /home/user/file.txt read)
}
Почему access denied? Все права текущему контексту ведь дал.