Welcome to the Cookbook

loading...

6.1 ACL

ACL ビヘイビアはモデルとアクセス制御システムを速やかに統合する方法を提供します。 これを使うことで、 ARO と ACO の両方を透過的に作成することができます。

新しいビヘイビアを使おうとする場合には、まずモデルの $actsAs プロパティにそのビヘイビアを追加します。 $actsAs 配列に ACL ビヘイビアを追加したら、 ARO と ACO が関連付いたアクセス制御リストのエントリーを作成することができます。 デフォルトでは ARO が作成されます。

class User extends AppModel {
	var $actsAs = array('Acl' => array('type' => 'requester'));
}
  1. class User extends AppModel {
  2. var $actsAs = array('Acl' => array('type' => 'requester'));
  3. }

この例では ACL ビヘイビアを ARO モードにしています。 ACO モードにするには、次のようにします。

class Post extends AppModel {
	var $actsAs = array('Acl' => array('type' => 'controlled'));
}
  1. class Post extends AppModel {
  2. var $actsAs = array('Acl' => array('type' => 'controlled'));
  3. }

次のようにすることで自動的にビヘイビアを付けることもできます。

	$this->Post->Behaviors->attach('Acl', array('type' => 'controlled'));
  1. $this->Post->Behaviors->attach('Acl', array('type' => 'controlled'));