Vorrei chiedere quale flusso di autorizzazione è considerato migliore o standard.
Primo approccio (ha ruolo AND assertion è valido):
if (!isGranted(roles, permission) {
return false;
}
if (hasAssertion(permission)) {
return assert(getAssertion(permission), context);
}
return true;
Secondo approccio (ha ruolo O asserzione è valida)
if (isGranted(roles, permission) {
return true;
}
if (hasAssertion(permission)) {
return assert(getAssertion(permission), context);
}
return false;
Modifica: sto progettando l'applicazione di chat, con utenti con permessi diversi in diverse chat room.