- 2010-05-29 (土)
- カテゴリ:cakephp

CakePhpでアクセス制御の仕組みを実装したいというとき,
Auth , Acl , Session , Security コンポーネントを利用することでcakeに組み込まれている強力なAcl-Aroの管理システムを構築することが可能です。
どんな物をどう作ろうと,ユーザ登録や管理者向けの機能がある限り,アクセスを制御できる仕組みを作ることになりますので,
特別な事情が無い限り,この方法を利用できるようにした方が良いと思います。
アプリケーションの準備 :: ACL を制御するシンプルなアプリケーション :: 開発例 :: マニュアル :: 1.2 Collection :: The Cookbook
CakePHPでACLを実装する際のメモ
CakePHP 10.2 ACL 開発例の補足 - WORKS-BB - オープンソース、PHP開発、ホームページ作成、ブログカスタマイズ
Auth and ACL an end to end tutorial pt. 1 | Mark Story
CakePHP ACL Database Setup: ARO / ACO structure? - Stack Overflow
上記サイトを参考にしていただければcakeに慣れた方ならエントリーを追いながら問題なく作れると思います。
ですが,Authコンポーネントの利用が必須なので,すでに完成しているアプリに追加で組み込む場合などは難しいかもしれません。
要件にもよるのですが,元々が単純な仕組みなので小規模ならapp_controllerに直書きできたりします。
しかし,ユーザやグループや管理者が増えたり,コントローラが増えたり・・・となってくると記述も増えてメンテナンスもしにくくなるので
どこかでDBで管理できる仕組みが必要となってきます。
ちなみに,cakeに精通していない段階で(特にbake)挑戦すると,各所でつまづいて挫折・・・なんてこともあるかもしれません。
私も最初はなかなか理解できず,自作していました。
その間,関連するエントリーをプリントアウトして何度も読みました。
あとはCakeやRDBMSと仲良くなってくると自然と理解できるようになりました。
もしも「ACLよく分からない」と感じられて昔ハマったままだったりしたら,
そろそろいける!と思ったころに
CakePHPでACLを実装する際のメモ
CakePHP 10.2 ACL 開発例の補足 - WORKS-BB - オープンソース、PHP開発、ホームページ作成、ブログカスタマイズ
こちらの記事で挑戦してみてください。
その際
cake schema generate
cake schema run create DbAcl
で
schema.php could not be loaded
cakephp try cake bake
などエラー出た場合は
php cake.php schema generate
php cake.php schema run create DbAcl
で試してみてください。
UserとGroupテーブルを利用する古い方法
realm3 web applications, LLC : Setting Up User Groups With ACL and Auth in CakePHP 1.2
Auth component + Cake 1.2 - CakePHP | Google グループ
こちらも利用はしなくてもとても勉強になります。
- カテゴリ:cakephp

Comments:0
Trackback+Pingback:0
- TrackBack URL for this entry
- http://reoto.com/archives/269/trackback/
- Listed below are links to weblogs that reference
- CakePhp1.2.7 で Acl構築 from ぼんずーず