【发布时间】:2017-02-21 21:58:06
【问题描述】:
我正在使用 SAML2.0 并与 Okta 集成。我尝试使用 okta 网站上给出的 spring-security 示例,它工作正常。现在我正在尝试将我的 Web 应用程序添加到 okat,当我在 okta 仪表板中启动或单击我的 Web 应用程序时,我想查看发送给服务提供商的 SAML 断言。我想在我的网络应用程序中读取用户的名字和姓氏,比如 index.jsp 页面。
我在我的 tomcat 日志中看到打印了响应。
INFO org.opensaml.common.binding.security.SAMLProtocolMessageXMLSignatureSecurityPolicyRule - 协议消息签名验证成功,消息类型:{urn:oasis:names:tc:SAML:2.0:protocol}Response
但是当我尝试在 index.jsp 中获取 SecurityContextHolder.getContext().getAuthentication() 对象时,我得到了 null。
用户在 Okta 中创建并分配给应用程序。但是这个用户在我的 Web 应用程序数据库中不存在。我只想看到在 Okta 中创建的用户被发送到我的网络应用程序。我只想阅读 firstname , lastname 等元数据。有可能吗?有人试过吗?
我的网络应用已经在使用 CasAuthentication。
【问题讨论】:
-
忘了提及,当我使用现有用户登录并尝试访问 index.jsp 时,我确实看到创建了 SecurityContextHolder.getContext().getAuthentication() 对象,但它显示它已通过 casAuthentication whcih 进行身份验证是显而易见的。但不确定在登录 SP 网络应用程序之前如何阅读来自 Okta 的用户详细信息。
标签: saml-2.0 spring-saml okta