2

次のドメインで利用可能なTomcatのサービスがあります。

sub1.domain1.com
sub2.domain1.com

sub1.domain2.com
sub2.domain2.com

ここで、domain1の透過的な承認(Spring Security)が必要です。ユーザーがsub1.domain1.comにログインすると、sub2.domain1.comでも承認されます。

これは、Tomcatの設定で実行できます

sessionCookieDomain=".domain1.com"

ただし、すべてのJSESSIONID Cookieドメインが常に「.domain1.com」に設定されているため、sub1.domain2.comでの認証はまったく機能しません。

tomcatに現在のドメインの第2レベルのみをCookieに使用させるにはどうすればよいですか?

4

1 に答える 1

2

簡単な答えは、簡単な答えはないということです。基本的に、プライマリ ログイン サイトと、プライマリ サイトのセッション トークンを複製するドメインの Cookie をセカンダリ サイトが設定できるようにするスキームが必要です。これを実装するのは複雑です。

考えられる 2 つの SSO テクノロジは、Shibboleth と JASIG CAS です。

詳細については、複数のドメインにまたがるシングル サインオンへの回答を参照してください。


どうにかして Cookie の作成をオーバーロードし、必要な場所に .domain1.com と .domain2.com を設定するとどうなりますか?

パスまたはでfoo.domain1.comCookie を設定しようとすると、ブラウザはセキュリティ上の理由からそれを無視します。両方のドメインで Cookie を設定するには、複雑なリダイレクトのダンスを経験する必要があります。詳細については、(上記) にリンクした質問/回答をお読みください。.domain2.comanything.domain2.com

于 2011-05-26T12:14:41.723 に答える