1

承認ルールを定義するための操作の作成について読んだところです...本に次のようなコードがありました

# protected/controllers/SiteController.php::actionSetup()
$auth = Yii::app()->authManager;
$auth->createOperation('createPage',"create a new page");
$auth->createOperation('updatePage',"update a page");

最初の引数は操作を一意に指定する識別子です.2 番目は操作の説明です....

今、私の質問は

操作に関連付けられたアクションはどこにありますか..名前と説明だけで構成されています...?? この操作をユーザーに割り当てたとしても、ルールはどのアクションが割り当てられているかをどのように識別しますか?

4

1 に答える 1

1

auth manager assign 関数を使用して、ユーザーに認証項目へのアクセス権を付与します。http://www.yiiframework.com/doc/api/1.1/IAuthManager#assign-detailを参照してください

例えば

Yii::app()->authManager->assign('createPage', $idOfMyUser);

その後、コントローラーでアクセス ルールを使用して、アクションを実行できるユーザーを制御できます。

お気に入り:

   public function accessRules()
   {
         array('allow',
            'actions' => array('create'),
            'roles' => array('createPage')),        
         array('deny'),
      );
   }

役割、操作、およびタスクは本質的に同じものであることに注意してください。これらは、認証項目を分離または模索する方法にすぎません

于 2013-09-24T04:45:05.947 に答える