Zrobiłem dostęp warunkowy do aplikacji za pomocą ról opartą o operatory bitowe. Proszę o feedback czy moje rozwiązanie ma sens i co o tym myślicie.
/*
Role Based Access Control to system
//permission
0 0 0 0 0 0 0 1 - Access system
0 0 0 0 0 0 1 0 - Read
0 0 0 0 0 1 0 0 - Write
0 0 0 0 1 0 0 0 - Delete users
0 0 0 1 0 0 0 0 - Read Logs
//person
user = 1;
guest = 1 | 2 | 4;
moderator = 1 | 2 | 4 | 8;
admin = 1 | 2 | 4 | 8 | 16;
*/
function roleBasedAccessControl($person)
{
$permission = 1 | 2 | 4 | 8 | 16;
switch($permission & $person){
case 0:
case 1:
echo '<div class="alert role alert-danger" role="alert"><li>Brak uprawnień do tej zawartości. Skontaktuj się z administratorem systemu!</li></div>'; break;
case 2:
case 3:
echo '<div class="alert role alert-warning" role="alert"><li>Ograniczone uprawnienia tylko do odczytu.</li></div>'; $visibity = 'disabled';
break;
case 7:
echo '<div class="alert role alert-info" role="alert"><li>Ograniczone uprawnienia tylko do odczytu i zapisu.</li></div>'; break;
default:
return true;
}
}
Ten post edytował inomi13 16.06.2023, 11:51:41