我正在开发一个包含前端ReactJS和后端SpringBoot 2微服务的技术堆栈Web应用程序。现在是使用OAM(Oracle Access Manager)和SAML2进行SSO集成(单点登录)的时候了。
我与OAM团队进行了讨论,他们向我提供了以下详细信息
1.实体ID或发行人ID
- OAM入口点或OAM SSO URL
- X509证书
1.指定使用者URL(ACS URL),用于接收SAML响应
在网上,我可以找到一些带有SSOCIRCLE、OKTA、ONEIDENTITY等SSO选项,但无法找到带有Springboot2 + SSO + OAM的任何资源。
请扔一些灯或任何回应如何开始将不胜感激。
2条答案
按热度按时间r6vfmomb1#
您可以从安装OAM开始:
https://docs.oracle.com/en/middleware/idm/access-manager/12.2.1.4/tutorial-oam-install-oam/
请参阅以下链接以了解应用程序中的部署和使用情况:https://docs.oracle.com/en/middleware/idm/access-manager/12.2.1.4/tutorial-oam-protect-wlsapp/#deploy-a-sample-application-to-weblogic-server
deyfvvtc2#
您必须整合以下流程
1.登录流程:从您的Web应用程序(前端)重定向到联盟系统端点(获取其登录端点),这是一个浏览器重定向。这里有两种类型的配置选项可用-您可以在重定向到其门户时向其发送xml元数据,或者可以在OAM中手动设置这些配置,您只需执行简单的浏览器重定向。(我已尝试了第二种选项)。
用户在“联盟”页中输入身份证明,IdP将对该页进行验证,成功验证后,将通过ACS登录URL通知SP。因此,您的登录URL基本上是一个回调URL,SP将调用该URL,并通过该回调API发送SAML响应。收到回调通知后,您需要将用户重定向到您的门户。
为此,您的回调url应将http响应状态代码设置为302,并将response.headers.location设置为您希望用户重定向到的端点(沿着saml响应)。在将用户重定向到您的门户之前,请注意验证saml签名。
在前端代码中,您必须使用windows.location.search检查SAML响应。
这些步骤会将用户重定向回SP入口。
1.注销流程:当用户单击SP注销按钮时,执行注销API,然后将用户重定向到联合系统的注销URL,即浏览器重定向,在这种情况下,用户的会话也将在其(SAML)端终止,并将用户重定向到SP门户。
请确保用户的会话(两者)同步。为此,请在两端保持相同的空闲超时和最大会话超时。
希望这对你有帮助。