私は現在次の問題に直面しています:サブドメインにログインしたセッション
メインドメインは、フレームワーク固有のセッションを持つ特定のPHPフレームワークを実行しています。別のPHPフレームワークを実行する新しいサブドメインがあり、メインドメインのログインセッション情報をサブドメインと共有する必要があります。私。ユーザーはメインドメインに登録するだけですが、ログインするとサブドメインのアカウントにもログインします。また、サブドメインはメインドメインdbにアクセスできないことにも注意してください。
これらの制限により、私は次の解決策を思いつきました。まず、ドメインCookieを.mydomain.com
に設定しました。サブドメインのセッションCookieにアクセスできます。次に、メインドメインで簡単なAPI呼び出しを実装します。この呼び出しは、ログインしたステータスと他のセッション情報を返します。 API URLにはサブドメインサーバーに限定されたIPホワイトリストがあり、ユーザーがメインドメインからサブドメインにアクセスすると、ユーザーのCookieサーバーサイド(おそらくcURL)でAPI URLが要求されます。一度、ユーザーがサブドメインでこのように認証された場合、特定のセッションのトークンが割り当てられ、そこでサブドメインの通常のセッションと別のセッションとして管理できます。
私の質問は、この設定でセキュリティ上の欠陥があるかどうかです。または任意の改善またはこれを行うためのより好ましい方法を提案...私にとっては
ちなみに、私は[OAuthまたはSAMLなしのクロスドメイン認証]に関する記事を書いています(https://paragonie.com/blog/2016/02/one-login-rule-them-all-seamless-and-secure -cross-domain-authentication)を使用します。 –
ありがとう、それは面白い読書でした。私が集めたものから、私が説明したメカニズムは、あなたがブログの記事で説明したものと似ていますが、単純に(そして暗号がなくても)はるかに単純であり、dbストアドトークンを使用して、サブドメインのメインドメインからクッキーを共有するよりも、 –