capire lo schema gerarchico rbac

Salve ragazzi,

sto cercando di capire come fare a rendere visibili alcune pagine solo al rispettivo proprietario.

Ho già realizzato la struttura roles - tasks - operations in questo modo:

Roles : Authenticated -> Professor

Operation: Professor -> UpdateOwnInfo

Task: UpdateOwnInfo -> UpdateInfo

[size="2"]PS: la -> sta per eredita (parent -> children)[/size]

UpdateOwnInfo ha una business rule modellata sul modello della guida sottostante.

Ho trovato questa guida nel wiki

http://www.yiiframework.com/wiki/136/getting-to-understand-hierarchical-rbac-scheme

Ma nonostante l’abbia letta non riesco a implementare niente di funzionante. Ho seri dubbi su:

  1. Come riuscire a far funzionare l’accesso dal metodo accessRules() del controller.

  2. Ovviamente ho bisogno di un parametro (es: … /view/2) come passarlo? Basta utilizzare $_GET[‘id’]?

Qualcuno sa darmi qualche dritta? Grazie

Se conosci il proprietare e l’utente corrente, non ti serve la struttura rbac, ma l’id dell’utente e dell’owner =).

Quindi tu dici di utilizzare il campo ‘expression’ in accessRules?

Beh, l’id dell’utente corrente lo prelevo dalla sessione, id dell’utente corrente dalla richiesta $_GET.

Dico bene?

Perdonami: ho fatto passare un po’ troppo tempo. L’id dell’utente corrente è Yii::app()->user->id

Se hai una variabile in get, la ritrovi nel controller:


class SiteController {

    public function ciaoAction($id) {

        // TO DO ...

    }

}