Ho un'autorizzazione personalizzata chiamata SomePermission che estende la classe BasicPermission. Inoltre ho la seguente entrata nel file dei criteri.
concedere il principal org.sample.jaas.pincipal.SomePrincipal "admin" { permesso org.sample.jaas.permission.SomePermission "/ permission / stock / quote", "CREATE, READ"; };
Dopo aver effettuato correttamente il login, ho seguito all'autorizzazione per controllare il codice
private boolean isAuthorized(Subject subject, final Permission permission) {
final SecurityManager securityManager;
if (System.getSecurityManager() == null) {
securityManager = new SecurityManager();
} else {
securityManager = System.getSecurityManager();
}
try {
Subject.doAsPrivileged(subject, (PrivilegedExceptionAction) () -> {
securityManager.checkPermission(permission);
return null;
}, null);
return true;
} catch (AccessControlException ace) {
return false;
} catch (PrivilegedActionException pae) {
return false;
}
}
Dopo aver eseguito il debug del codice, ho identificato che è necessario un oggetto PermissionInfo per la classe SomePermission per renderlo disponibile nel processo di autorizzazione? Qualche idea?
Qualsiasi input sarà apprezzato.