restofwaterimpのぎじゅつMemo

SIerに所属。企画から運用まで幅広くやってます。C#中心に書いてます。

【メモ】SiteMinderでのlogoffuriについて(in Strutsで)

ひょっとしたら当たり前の事なのかもしれないですが、

自分でやっていて、こうしたほうがいいですね、と思うことがあったので、

メモしておく。

 

統合認証で利用されるSiteMinder

 

ログイン時は

認証・認可 → アプリでの認証 → アプリのメイン画面

 

ログアウト時は

アプリでのセッション情報などの破棄 → SiteMinderのセッション破棄 → ログアウトした時の画面

 

という流れでしょうか。

 

ログアウト時にSiteMinderにログアウトしているという認識をさせるために

SiteMinderのconfigファイルにlogoffurlを記載する。

 

この際に、

・画面のURL

・サーバ側のURL

のいずれかを指定することになります。

 

結論から言うと

・画面側のURL

を書いたほうがよさそうです。

 

サーバ側のURLを記載

例えば

ContextPath()/hoge/Logout.do

などと書いた場合、

 

Java,Struts環境でやっていると

・htmlやjavascript

 submitまたはlocation.hrefでlogoffurlを指定した場合はSiteMinderの認証が外れる

 

struts-config.xml

 actionタグの結果,

 <forward name="hoge" path="/hoge/Logout.do">

 

   <action

        name="/Logout"

      ・・・

   </action>

 とすると、Logoutはサーバ上で処理されるのだが、SiteMinder認証は外れない。

 

と、なってしまう。

はまらないように対処するならば、htmlやjspをlogoffurlに指定したほうが良さそうです。