1. 権限管理とは何ですか? 権限管理とは、バックエンド機能を細分化し、さまざまなスタッフのさまざまなタスクを管理することです。
RBACを実装するには、ユーザーテーブル、ロールテーブル、権限テーブルの3つのテーブルが必要です
ユーザーテーブル:
id ****** role_id
ロールテーブル
role_id **** * * access_ids (アクセス可能なすべての許可 ID を記録します)
許可テーブル
access_id
すべてのコントローラーまたはコントローラー配下のアクションを記録します
2. 制御方法は、コントローラーの親クラスまたはコントローラーの初期化で作成するだけです。メソッドでの判定
$role_id = $_SESSION['role_id'];
$role = $db->gt;role->findByPk($role_id);
$access = $db->access ->gt ;findAllByPk($role['access_id']);
ルータークラスに従って実行されるコントローラーまたはコントローラーメソッドを取得します
$m = current_method();//アクセスされる現在のメソッドを取得します
if( !in_array($m, $access)){
redirect('/index');}
以上、海辺の石 830 を関連コンテンツも含めて紹介しましたが、PHP チュートリアルに興味のある友人の参考になれば幸いです。