Come utilizzare Zend ACL in un ambiente modulare

February 22

Zend ACL è un framework di sviluppo web basato su PHP che gli ingegneri del software usano per creare e gestire gli elenchi di controllo di accesso. Questi elenchi dettano che gli utenti di un sito web o di un'applicazione in grado di eseguire determinate funzioni, una volta che è registrato in. Zend ACL può anche essere utilizzato per assegnare i privilegi ad altri oggetti codificati, per evitare che la modifica accidentale dei dati. E 'facile da usare in Zend Studio - un ambiente di sviluppo modulare - che prevede la regolazione della sintassi, evidenziazione della sintassi e il supporto per le lingue open source diverse PHP.

istruzione

1 Avviare l'applicazione Zend Studio, e creare un nuovo documento di PHP in cui è possibile praticare la creazione e la gestione di un elenco di controllo di accesso utilizzando Zend_Acl.

2 Creare un nuovo Zend ACL, avviando con la seguente riga di codice:

$ ACL = new Zend_Acl ();

3 Aggiungere ruoli alla lista di controllo degli accessi. Questo viene fatto aggiungendo il seguente codice sotto il codice iniziativa, che cambia e l'aggiunta di utenti, come si vede in forma:

$ Acl-> addRole (nuova Zend_Acl_Role ( 'user'))

->addRole(new Zend_Acl_Role('manager'))
->addRole(new Zend_Acl_Role('host'));

4 Specificare la matrice in cui devono essere conservati i ruoli utente nella lista di controllo degli accessi. Utilizzare il seguente codice, che prevede anche la funzione Zend_Acl_Resource ciò che è necessario per eseguirlo:

$ Genitori = array ( 'user', direttore, 'host' ');
$ Acl-> addRole (nuova Zend_Acl_Role ( 'someuser'), $ i genitori);
$ Acl-> aggiungere (nuova Zend_Acl_Resource ( 'someResource'));

5 Assegnare alcune autorizzazioni per i diversi ruoli nella lista di controllo degli accessi. Ad esempio, "gli utenti" non possono accedere, mentre "manager" e "padroni di casa" sia possibile.

$ Acl-> negare ( 'utente', 'someResource');
$ Acl-> consentire ( 'manager', 'someResource');
$ Acl-> consentire ( 'host', 'someResource');