我是 Spring Security 的新手,但我想要实现的场景是提供基本的身份验证/授权(安全)。用户故事需要集成 ForgeRock OpenAM(强制)以确保安全。场景:我有一个 Spring Boot 微服务,它公开 API 以允许 UI 连接到服务器。如何在 Spring Boot REST 服务中包含 OpenAM,以便提供基本安全性?我需要什么才能达到同样的效果?
2 回答
您可以使用 OAuth2 或 OIDC 将您的 REST-Service 与 OpenAM 集成。
有关 OAuth2 和 REST 的信息,请查看以下内容,例如:https ://content.pivotal.io/blog/securing-restful-web-services-with-oauth2
有关将 OAuth2 与 OpenAM 结合使用的信息,请参见此处:https : //backstage.forgerock.com/docs/am/5.5/oauth2-guide/ OIDC 与 OpenAM 相同:https ://backstage.forgerock.com/docs/am/ 5.5/oidc1-指南/
希望我能帮助你:)
可能有很多方法可以做到这一点:一些 Forgerock 插件,让网关执行 AuthX、SAML2、OAuth2/OIDC,...
我推荐的方式是坚持标准——因为它们是可互换的,您可以将它们应用于任何应用程序或将它们与每个现代身份提供者一起使用。
我个人倾向于将 OIDC(又名 OpenID Connect,基于 OAuth2)用于应用程序中的 SSO。关于如何使用 OpenAM 设置 OIDC/OAuth2 和 Spring Security 有很多很好的资源。
这里有一些链接可以帮助您了解它:
- 要了解 OIDC,该标准有一个很好的网站链接到很好的资源:https ://openid.net/connect/
- OAuth2 相同:https ://www.oauth.com
- Baeldung Spring Security OIDC 示例:https ://www.baeldung.com/spring-security-openid-connect
- Forgerock 的 OpenAM OIDC 指南:https ://wikis.forgerock.org/confluence/display/openam/OpenID+Connect+Quick+Start