2009-10-20 7 views
0

Comment restreindre l'accès aux scripts à l'aide d'un schéma d'autorisation? J'ai pensé ff:accès au script via les autorisations

  1. autorisations de magasin sous forme de tableaux avec les touches dans la puissance de 2 (2, 4, 8, 16) et utiliser des opérateurs de bits pour comparer les autorisations utilisateur avec les autorisations requises pour accéder au script
  2. stocker les autorisations en tant que chaînes et affecter un ensemble d'autorisations à un script. si un utilisateur tente d'accéder au script, une recherche dans la base de données est effectuée (pour rechercher les autorisations dont dispose l'utilisateur)

Avez-vous de meilleures approches sur celui-ci? J'ai essayé d'utiliser des opérateurs bit à bit et j'ai vu une approche qui utilise des constantes (c'est-à-dire const ADD_FORUM = 2) mais j'ai l'intention de mettre mes permissions dans un fichier de configuration.

BTW, j'utilise Kohana et moi avons récemment commencé à développer en PHP ... J'ai décidé de construire mon propre auth lib dans Kohana

Répondre

1

quelque part dans le fichier de configuration:

const('VIEW_FORUM', 1); 
const('ADD_FORUM', 2); 
const('DELETE_FORUM', 4); 

dans détails de l'utilisateur:

// read only user 
$userPermissions = VIEW_FORUM; 
// full access 
$userPermissions = VIEW_FORUM + ADD_FORUM + DELETE_FORUM; 

sur la page où vous devez vérifier les autorisations:

// permission ADD_FORUM is required 
if ($userPermissions & ADD_FORUM) echo 'all good'; 

// permission ADD_FORUM & DELETE is required 

if ($userPermissions & (ADD_FORUM + DELETE_FORUM)) echo 'all good'; 
+0

c'est un bon; va l'essayer – yretuta

Questions connexes