1 つのサーバーに 2 つのドメインがあります。ユーザーが 1 つのドメインにログオンしている場合、別のドメインにもログオンする必要があります。1台のサーバーでphpでクロスドメイン認証を行う方法は? サブドメインについては解決しましたが、別の第 2 レベル ドメインについては解決できません。
2227 次
2 に答える
2
主な問題は、別のドメインにいる場合、ブラウザから Cookie が送信されないことです。
ブラウザに別のドメインの Cookie を書き込むこともできません。
できることは、一意のトークンを他のドメインに送信し、検証されたら、2 番目のドメインに Cookie を書き込むことです。これは、認証時に iframe または二重リダイレクトを使用して行うことができます (iframe Cookie は、サファリなどの一部のブラウザーでブロックされます)。一意のトークンは、2 番目のドメインによって検証され、無効化 (削除) されて、別のユーザー (中間者攻撃) が再び使用できないようにする必要があります。
于 2012-10-17T08:25:12.250 に答える
1
使用しているフレームワークに応じて、 CASを調査して実装する必要があります。たとえば、私の Zend アプリケーションではZend_OpenIdとZend_Oauthを使用します。
于 2012-10-17T08:27:25.970 に答える