【CakePHP 1.3】


CakePHPを用いて、中規模なシステムを構築しようかと思っています。

要件は、
パブリック・会員専用(管理者、準管理者、会員)とわかれています。
デザインもそれぞれ別で、4種類です。

様々なデータに、アクセスする際、
参照・追加・編集・削除などが、
できることとできないことが
4種類の権限ごとに、さらに、権限ごとに組み合わせはバラバラで、
多様です。

管理者は、管理者が指定した会員としてなりすましログインも可能です。
しかも、その際は、ID/Passwordの入力は無しで、ログインできます。


さて、質問です。
①どういった、構造にしたほうが良いと思いますか?
ex)権限ごとにprojectを作成して、分けた方が良い?


②認証は、AuthComponentを使ってカスタマイズした方が良い?
それとも、作った方が良い?

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2010/11/27 15:55:02
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:tama213 No.1

回答回数486ベストアンサー獲得回数30

ポイント35pt

・権限ごとに別々に作成

・主要なモジュールは共通化する

どちらでもOK


成りすましログインだが、

実際には、成りすましログインでなくて

管理者としてログインしたままで、単にほかのユーザーのデータも編集できるだけ

というか、そういう概念で作成したほうがよい。

この考えかただと、AuthComponentをカスタマイズする方向で問題ない。

id:caster777

ありがとうございます。

 

権限ごとに別々にprojectを作成した方が良いのかなと感覚で感じながら、

同じようなmodelやcontrollerが沢山できるかなと思いましたので、質問しました。

 

modelなどを、module化するという方法で良いのでしょうか??

また、その、共通のmoduleは、どこのDirectoryに入れるべきでしょう?

 

でも、そもそも、散らばると大変になるので、projectは、同一案件内で

乱立させない方が良いような気もしてきました。

 

もう少し、アドバイスいただけると幸いです。

2010/11/20 17:58:45
id:hiromi2424 No.2

回答回数2ベストアンサー獲得回数0

ポイント35pt

権限の振り分けが単純な包含関係にない場合は、ACLの導入によりこれを解決する方法があります。

ACLは敷居が高いので、工数が跳ね上がる可能性がありますが、ACLプラグイン( http://cakephp.jp/modules/newbb/viewtopic.php?topic_id=2360&foru... )の導入により軽減することが可能でしょう。


ACLはRBACにのっとったものであり、柔軟な権限振り分けを行うことができます。また、標準でAuthComponentがサポートしています。

>管理者は、管理者が指定した会員としてなりすましログインも可能です。

>しかも、その際は、ID/Passwordの入力は無しで、ログインできます。

AuthComponent::login($user_id)で、パスワードなどを必要とすることなくログインが可能です。

id:caster777

ありがとうございます。

ACLについて、ちょっと調べてみます。

2010/11/20 17:49:46

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません