0

[シナリオ]
既に 5 つの PHP5.3+ アプリケーション (例: App-A、App-B、App-C、App-D、App-E) を稼働させています。ここで、各アプリケーションには独自のログイン ユーザー ID とパスワードがあります。

[新しい要件]
ここで、(App-A を使用して) これらすべてのアプリケーションにログインするための単一のユーザー ID とパスワードを実装したいと考えています。たとえば、いつものように App-A にログインしたいのですが、一度ログインすると、App-A のアイコンをクリックするだけで他のアプリケーション (B、C、D、および E) にアクセスできるはずです (一度ログインすると)。また、私のユーザーは、App-B、C、D、または E を介してログインすることはできません。常に App-A を介して接続する必要があります。

[背景]
-これらのアプリケーションはすべて異なるドメインで実行されていますが、同じサーバー上にあります。
-管理者は、特定のユーザーに対して特定のアプリを有効/無効にすることができます

誰かが同様のことをしたか、誰かが何か提案をしてください。

4

1 に答える 1

0

これは非常に良い質問であり、さまざまな方法で質問について小さな調査を行いました。

OAuth:

ドキュメントを読み、多くのサービス プロバイダーを調べた後では、それは不可能です。Oauth サービス プロバイダーはコンシューマー キーとシークレットを提供し、ドメインからの要求をチェックします。したがって、同じ oAuth コンシューマー キーが異なるドメイン名で使用されている場合、それは機能しません。

Cookie の設定 複数のドメイン

簡単に言えば、ドメインにアクセスせずに Cookie を設定することはできません。

したがって、Cookie を設定したり、複数のドメインに同じコンシューマー キーとシークレットを使用したりすることはできないと言えます。

別の方法

  1. HTML5 Web Storage を使用して情報を保存すると、異なるドメインから情報にアクセスできます。

  2. example.com/session_cookie.php?info=xxxxx など、異なるドメインの Cookie を設定するためのリクエストを送信するには、AJAX/CURL を使用します。

  3. すべてのドメインでのログイン用に、すべてのドメインに対して単一のサブドメイン/ページを維持します。

于 2013-08-16T10:34:57.673 に答える