2

$this->Auth->allow('');すべてのユーザーの役割についてアクションを設定できることはわかっていますが、ACL テーブルにアクションを追加し、ACL テーブルからアクションのアクセス許可をフェッチしたいと考えています。すべてのユーザーに対して、テーブル内の「AutoCompleted」と呼ばれるアクションの許可を手動で。表は以下のとおりです。

acos、aros、および aros_acos (通常の CakePHP テーブル)

4

1 に答える 1

1

ユーザーの役割はaros_acosテーブルを使用し、これは構造です:

aros_acos 構造体

このテーブルにユーザー ロールを手動で挿入するには、まず次の情報を知っておく必要があります。

  1. アクション「AutoCompleted」の ID (acos)
  2. この新しい権限を割り当てるユーザー グループの ID (aros)

acosテーブルを開くと、次のように表示されます。

acos テーブル データ

このテーブルのどこかに「AutoCompleted」ID があり、この例では 35 です (上の画像を参照)。

arosここで、すべてのユーザー グループ情報を含むテーブルを開きます。

aros テーブル データ

この表のどこかに、ユーザー グループ ID があります。この例では 15 です (上の画像を参照)。

わかりました、これですべてです。

  1. アクション ID (aco_id): 35
  2. ユーザーグループID (aro_id): 15

aros_acosこの情報を使用して、テーブルに新しいアクセス許可を手動で挿入できるようになりました。

INSERT INTO  `sgc`.`aros_acos` (
    `id` ,
    `aro_id` ,
    `aco_id` ,
    `_create` ,
    `_read` ,
    `_update` ,
    `_delete`
)
VALUES (NULL ,  '15',  '35',  '1',  '1',  '1',  '1')

_create_readが値_update_delete受け取ります1。これは、ユーザーがこのアクションを実行できるようにするためです。

于 2012-11-02T02:02:58.963 に答える