2011-08-31 19 views
2

私はまだCakePHPの新しさを持っています。私は現在、それを使って1つの(かなり複雑な)アプリケーションを作成し、配備しました。それは完全なユーザーとグループのサポートを持っており、私はアクセステーブルとすべてを得るために時間を取った。共有CakePHPの異なるアプリケーション間での認証?

今、別のアプリケーションを作成しています。最初はまったく新しいCakePHPのインストールを作成しましたが、私は最初のアプリに基づいてユーザーを認証したいと思っていました。彼らは現在、異なるデータソースを使用しています。私は、さまざまな長所と短所を持って、これを達成できる方法がいくつかあることを理解しています。 Do I:

  1. 別々に保管し、拡張アプリケーションにデータソースを追加し、ユーザー認証コードを移植しますか?
  2. 最初のアプリケーションでログインを処理し、何らかの形で通信プロトコルを使用してそのデータを共有しますか?
  3. これらを1つのデータソースに結合し、アプリで追加された複雑さを受け入れますか?
  4. 全く異なるもの?

私は同じホスト/ホスト名で実行されている、と同じMySQLサーバに接続される、両方のサイトを作成するためにCakePHPを使用しています。ユーザーは常にメインアプリケーションに保存/作成され、2番目のアプリケーションで受動的にアクセスする必要があります。

+0

あなたはそれぞれのサイトが何であるかについて、もう少し詳細を教えてもらえますか、それはなぜ別々のものにするべきだと思いますか? –

+0

サイトには学生データが保存されています。学生を登録し、彼らが私たちのプログラムの1つに応募できるようにするためのサイトのセクションがあります。この新しいサイトは、学生と教員が使用するためのものであり、世界的なイベントカレンダーです。基本的には、共有ログイン資格情報を除いて全く異なる機能です。プログラムの管理者は、必ずしも任用のためにテーブルを巡回する必要はありません。そのため、それらを分けたいのです。しかし、私は彼らが技術的に分離する必要はないと考えています。それはすでに複雑なコードベースを拡張するだけです。 –

答えて

-1

正直言って、あなたはそれらを一緒に持ち運びやすいように聞こえます。あなたが1つのプログラムの別々の部分を保つことができるように、それらを私と別のサウンドに保つあなたの理由。

たとえば、私が生活するためのアプリケーションは、これらの多くのことを行います。ユーザーは登録することができ、イベントのカレンダー、求人情報、最近のニュース、約25の他のモジュールにアクセスすることもできます。彼らはプログラムのちょうど異なる部分です。

ユーザコントローラが登録を処理するのようなルートを持つ1つのアプリケーションを持つことができます。次に、アプリケーションの別の部分を/calendar/....にルーティングし、カレンダーコントローラがカレンダーロジックを処理します。学生や教職員に別のカレンダーが必要な場合は、/faculty/calendar/1/student/calendar/1のようなルートを使用してカレンダーコントローラの別の部分にルーティングできます。

アプリケーションをモジュール化することは、論理的にグループ化されたコードを簡単に維持できるようにすることです。あなたは2つの異なるアプリケーションになるようにそれらをあまり分離する必要はありません。

私はあなたが長期的に多くの頭痛を避けると思います。

私が働いているソフトウェアについては、文章では(文字通り)何百万ものドキュメントを扱い、政府は週に数十万人のユーザーレベル。

関連する問題