如何配置spring security cas client以检索自定义属性

时间:2018-01-18 14:22:29

标签: spring-security cas

我尝试使用Spring security 设置 CAS客户端。 我从this article on the baeldung spring site this sample code on github

开始

此时一切正常。

之后,我尝试将我的客户端配置为获取代理授予票证以及服务器发布的自定义属性。

为此,我依靠spring安全文档spring security documentation

我走进这些步骤进入我的 ticketValidator

  1. 添加ProxyGrantingTicketStorage
  2. 用Cas20ProxyTicketValidator替换Cas20ServiceTicketValidator(或Cas30ProxyTicketValidator使用V3协议)
  3. 添加ProxyCallbackUrl(http://localhost:9000/login/cas/proxyreceptor
  4. 在我的 casAuthenticationFilter

    1. 设置ProxyReceptorUrl(/ login / cas / proxyreceptor)
    2. 添加ProxyGrantingTicketStorage
    3. 这些设置的结果:

      没有ProxyCallbackUrl我从cas服务器得到答案,但没有标签proxyGrantingTicket。我认为这就是为什么我不能在校长中检索自定义属性的原因。如果ServiceTicketValidator没有找到票证(Cas20ServiceTicketValidator的方法parseResponseFromServer),则不会处理这些属性。

      当我添加ProxyCallbackUrl时,我从服务器收到错误:

      <cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
        <cas:authenticationFailure code="INVALID_PROXY_CALLBACK">
           L'url de rappel du proxy  http://localhost:9000/login/cas/proxyreceptor
           n'a pu etre authentifiee.
        </cas:authenticationFailure>
      </cas:serviceResponse>
      

      有人可以帮我理解:

      • 为什么cas服务器不发送代理授予票证
      • 如何使用良好的代理回调网址配置我的客户端

      谢谢

0 个答案:

没有答案