:OpenIDを使用して複数のドメインにログインする:この計画は実行可能ですか?たとえば
- 我々は(
example.com
とexample.net
それらを呼び出す)二つのドメイン上の2つのコミュニティサイトを実行しています。 - 後でさらに多くのドメインに展開できるようにしたいと考えています。
- 複数の種類のログイン(OpenID、Facebook、Twitter、標準ユーザー名/パスワード)を許可したいと考えています。
- 1つのサイトにログインしているユーザーが自動的に他のサイトにログインするようにします。
つまり、StackExchangeネットワークに少し似ています。
この場合、このプランは機能しますか?唯一id.example.org
からOpenIDでのログインを受け入れるOpenIDを信頼パーティ、など
example.com
とexample.net
を設定(およびそれ以降の追加)。id.example.org
にログインしている場合は、アクセスしたサイトにすぐに自動的にログインするように、最初に訪問したときにOpenIDの返信即時リクエストを行うようにexample.com
とexample.net
を設定します。ログインしていない場合は、Cookieを設定して、すべてのページリクエストでこれを保存する必要があります。- OpenIDプロバイダとコンシューマとして
id.example.org
を設定します。また、Facebookや他のアイデンティティプロバイダを消費し、標準のユーザ名/パスワードアクセスを許可する必要があります。 - ログアウトすると、データベースの認証トークンを変更するだけです。ユーザーにはまだCookieがありますが、意味がありません。したがって、ユーザーはすべてのサイトから同時にサインアウトすることができます。一度に1人のユーザーに対して複数の認証トークンを保存できます(サイトごとに異なる必要があります)。そのため、ユーザーは1つのブラウザでサインアウトできますが、別のブラウザでサインインできます。ログアウトすると、すべてのサイトが常にログアウトします。私は上記で見ることができます
唯一の問題はこれです:
- 誰かが
example.com
を訪問します。 「ログインしていない」Cookieが設定されています。 - そして、Zieは
example.net
に行きます。同上。 - その後、Zieはサインインし、
example.net
でブラウジングを続けます。 - Zieは、理由は「-ログインされていない-で」クッキーを、
id.example.org
に対してチェックされていないため、ログインしていない、バックexample.com
に行くと。 - しかし、できるだけ早くzieは、「ログイン」をクリックするとボタンを押すと、zieがログインしています。
私はこれが大きな問題ではないと思います。
全体としては、かなり良いシステムだと思います。私はそれを見直してみたいと思う。予期していない問題はありますか?それはバギーか遅いでしょうか? StackExchangeは非常に異なる方法を使用します。私は彼らにそれには正当な理由があると思いますか?
http://www.bbc.co.uk/dna/h2g2/F20154027?thread=8074058。 – TRiG