[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[upki-fed:01005] Re: Shibboleth 3.2 Logout時エラーについて



深瀬様
NIIの西村です。

こちらの件反応できておらずすみません。
3.2.0から実装された新しい機能であるSingle Log-Out(SLO)が影響しているようです。
SLOを試したいということでなければ、IdPメタデータにある<SingleLogoutService>要素を削除して
(対向のSPが保持しているIdPメタデータから当該要素を削除して)いただければ、
IdPに遷移しなくなりますので問題は解消されます。

学認の標準的なメタデータでは上記要素が入っておりませんので、それを使っている
限り影響はないはずです。

もしSLOを試したい、という場合ですが、残念ながら私自身3.2のSLOは調査しなけれ
ばと思いつつ全く手付かずの状態です。が、エラーメッセージで検索したところ以下が
引っかかりました。"r8068"と書かれたコメントに修正候補もあるようです。見たと
ころ直る可能性は低いようですが、もしよろしければお試しください。
https://issues.shibboleth.net/jira/browse/IDP-892

参考:
- IdPv3のfull SLO(英語):
  https://wiki.shibboleth.net/confluence/display/IDP30/Logout+and+SLO
- IdP 2.4時代のAsync SLO(fullの一歩手前)について(日本語):
  https://meatwiki.nii.ac.jp/confluence/x/Gguc#id-%E8%A8%AD%E5%AE%9A%E3%83%BB%E9%81%8B%E7%94%A8%E3%83%BB%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%9E%E3%82%A4%E3%82%BA-AsyncSLO%28AsynchronousSingleLogout%29%E3%81%AE%E8%A8%AD%E5%AE%9A%E6%96%B9%E6%B3%95

> 2016/01/14 18:14、nfukase <xxxxxxx@xxxxxxxxxxx> のメール:
> 
> ジェイズ・コミュニケーション 深瀬と申します。
> 
> 前回投稿させたいただいた件で、
> 再度、お問い合わせをさせていただきます。
> 
> 前回Shibboleth3.2をインストールした際のログアウト処理で
> 検証環境でエラーとなる件についてお問い合わせをさせていただきました。
> 
> 昨年12月後半に、3.2.1がリリースされていたので、
> そちらについて改善されているか確認したところ、
> やはり、同じ内容のエラーを出力しました。
> 
> エラーを再度よく確認すると、logout.vm 内記載の getContextPath() で
> 問題となっているようで、こちらで返される値(https://localhost/idp/)のパスを;
> logout.vm 内に https://<idpのFQDN>/idp/ と置き換えたところ、
> エラーなく正常にログアウト処理を行えることができたことを確認しています。
> ※3.2についても同様となりました。
> 
> このことから、logout処理に対し何か設定が必要なのかと思い、
> 調べてみたのです、適切な情報を見つけることができずにいます。
> 
> どなたか、対処方法についてご存知の方がいらっしゃいましたら、
> ご教示くださいますようお願い致します。
> 
> ■ログアウト処理時エラーログ
> ==================================================================
> ERROR [net.shibboleth.idp.profile:-2] - Uncaught runtime exception
> java.lang.IllegalStateException: Exception occurred rendering view org.springframework.web.servlet.view.velocity.VelocityView: name 'logout'; URL [logout.vm]
>        at org.springframework.webflow.mvc.view.AbstractMvcView.render(AbstractMvcView.java:200)
> Caused by: org.springframework.web.util.NestedServletException: Method invocation failed during rendering of Velocity view with name 'logout': Invocation of method 'getContextPath' in  class org.apache.catalina.connector.RequestFacade threw exception java.lang.NullPointerException at logout.vm[line 24, column 68]; reference [request], method 'getContextPath'; nested exception is java.lang.NullPointerException
>        at org.springframework.web.servlet.view.velocity.VelocityView.mergeTemplate(VelocityView.java:524)
> Caused by: java.lang.NullPointerException: null
>        at org.apache.catalina.connector.Request.getServletContext(Request.java:1656)
> ==================================================================
> 
> 《"nfukase" <xxxxxxx@xxxxxxxxxxx>》: 
>> ジェイズ・コミュニケーション 深瀬と申します。
>> 
>> 現在、Shibboleth 3.1.2から 3.2へアップデートし、
>> 動作検証作業を行っています。
>> 
>> SPからのログアウト処理の際に
>> 3.2へアップデートした後、下記エラーを出力するようになりました。
>> 
>> ERROR [net.shibboleth.idp.profile:-2] - Uncaught runtime exception
>> java.lang.IllegalStateException: Exception occurred rendering view org.springframework.web.servlet.view.velocity.VelocityView: name 'logout'; URL [logout.vm]
>>       at org.springframework.webflow.mvc.view.AbstractMvcView.render(AbstractMvcView.java:200)
>> Caused by: org.springframework.web.util.NestedServletException: Method invocation failed during rendering of Velocity view with name 'logout': Invocation of method 'getContextPath' in  class org.apache.catalina.connector.RequestFacade threw exception java.lang.NullPointerException at logout.vm[line 24, column 68]; reference [request], method 'getContextPath'; nested exception is java.lang.NullPointerException
>>       at org.springframework.web.servlet.view.velocity.VelocityView.mergeTemplate(VelocityView.java:524)
>> Caused by: java.lang.NullPointerException: null
>>       at org.apache.catalina.connector.Request.getServletContext(Request.java:1656)
>> 
>> 
>> 上記ログより、下記サイトを参考にして設定を行ってみました。
>> http://shibboleth.1660669.n2.nabble.com/Zoom-Integration-with-Shibboleth-IdP-v3-and-non-signed-logout-request-td7613958.html
>> 
>> その際には下記のようなエラーとなりました。
>> 
>> ERROR [net.shibboleth.utilities.java.support.service.AbstractReloadableService:181] - Se
>> rvice 'shibboleth.RelyingPartyResolverService': Initial load failed
>> net.shibboleth.utilities.java.support.service.ServiceException: org.springframework.beans.factory.xml.XmlBeanDefin
>> itionStoreException: Line 279 in XML document from file [/opt/shibboleth-idp/system/conf/relying-party-system.xml]
>> is invalid; nested exception is org.xml.sax.SAXParseException; lineNumber: 279; columnNumber: 9; cvc-complex-type
>> .2.3: タイプのコンテンツ・タイプが要素のみであるため、要素'beans'には文字[children]を使用できません。
>>       at net.shibboleth.ext.spring.service.ReloadableSpringService.doReload(ReloadableSpringService.java:334)
>> Caused by: org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 279 in XML document from fi
>> le [/opt/shibboleth-idp/system/conf/relying-party-system.xml] is invalid; nested exception is org.xml.sax.SAXParse
>> Exception; lineNumber: 279; columnNumber: 9; cvc-complex-type.2.3: タイプのコンテンツ・タイプが要素のみであるため
>> 、要素'beans'には文字[children]を使用できません。
>>       at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionRe
>> ader.java:399)
>> Caused by: org.xml.sax.SAXParseException: cvc-complex-type.2.3: タイプのコンテンツ・タイプが要素のみであるため、要
>> 素'beans'には文字[children]を使用できません。
>>       at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper
>> .java:198)
>> 
>> どのように対処すべきか、お手数ですがご教示くださいますようお願い致します。

-- 
西村健
国立情報学研究所 TEL:03-4212-2890
⌘