behaviors 示例

當訪問控制過濾(ACF)進行授權檢查時,它會從上到下地一個接着一個地測試那些規則直至找到一個相符的。
相符的允許值將立即用於判斷用戶是否被授權。如果沒有一個規則符合,
這就意味着這個用戶“沒有”被授權,訪問控制過濾(ACF)將阻止它進一步的動作請求。
public function behaviors() {
  return [
      'access' => [
          'class' => AccessControl::className(),
          'except' => ['index'], //不做驗證的action
          'rules' => [ //具體規則
              [    
                 //action爲空,則適用與所有action(except中的除外)
                 
'allow' => true,
                 'roles' => ['@'],
              ],
          ],
      ],
   ];
}


public function behaviors() {
  return [
      'access' => [
          'class' => AccessControl::className(),
          'only' => ['login','logout'], //需驗證的action
           'rules' => [ //具體規則
              [    // login,signup遊客狀態可訪問
                  'actions' => ['login','signup'],
                  'allow' => true,
                  'roles' => ['?'],
              ],
              [   //update,delete登錄狀態可訪問
                  'actions' => ['update','delete'],
                  'allow' => true,
                  'roles' => ['@'],
              ],
          ],
      ],
   ];
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章