OpenAM 和 Spring Security 4 集成
OpenAM and Spring Security 4 Integration
我正在使用数十个 RESTful 网络服务构建 Spring-MVC-Hibernate 后端。前端可能是 HTML5、CSS3 和 JQuery 网络应用程序,它利用我正在开发的后端网络服务。
我们在 Tomcat 服务器上有一个 OpenAM 10.x SSO 系统,我们希望我们能够进行身份验证,这里没有授权规则或组。我看到的所有文档都包含未知版本的 OpenAM 和 Spring Security 3。我们有 OpenAM 10.x,不知道何时升级到最新的 OpenAM。我们计划使用目前最新的 Spring Security 4.0.3。
1) 我们可以做到这一点的一种方法是建立一个信任圈,然后建立一个 IDP 和一个 SP,然后我们将有一个 URL 以便进行联合 SSO。我相信这就是我们的前端将如何获得身份验证并将令牌返回给前端并可能存储为 cookie 的方式。
2) 我看到的另一种方法是简单地调用 OpenAM restful api,输入用户名和密码并获取令牌。然后该令牌将用于传递到后端 RESTful api 以确保安全。
我们肯定会使用 Spring 用户、角色和权限(授权)安全性,那么我们可以这样做吗?对用户、角色和权限使用 Spring Security 4.0.3,但使用 OpenAM 进行身份验证???
任何信息都会很有帮助。谢谢!
我们一直在对我们的一个应用程序做类似的事情。我们从使用 OpenAM 12 开始,现在使用 OpenAM 13 SNAPSHOT。
我们一直在使用 OpenID Connect 进行集成,而不是 SAML。
这对我们来说是一个很好的起点:https://github.com/fromi/spring-google-openidconnect.
我们在 OAuth2ProtectedResourceDetails 中使用了默认的 header/basic 方案,而不是示例中的表单。
在 OpenAM 上,您必须配置 OpenID Connect Provider。
OpenAM 13 中的步骤:
- 以 amAdmin 身份登录。
- Select境界.
- 着陆页(Dashboard/Realm 概述)将列出常见任务。
- 选择配置 'OAuth Provider',然后选择 'Configure OpenID Connect'。
- 选择默认值并点击创建。
然后你必须添加一个 agent/client。
OpenAM 13 中的步骤:
- 在领域配置页面中,选择代理。
- Select OAuth 2.0/OpenID 连接客户端。
- 单击新建按钮,输入 client_id 和 client_secret 值并创建代理。
- 点击新创建的代理进一步配置redirect_uri、作用域等参数
如果您无法选择 OpenAM 12 或 13 并且被困在 OpenAM 10 上,则此信息可能没有用。
我正在使用数十个 RESTful 网络服务构建 Spring-MVC-Hibernate 后端。前端可能是 HTML5、CSS3 和 JQuery 网络应用程序,它利用我正在开发的后端网络服务。
我们在 Tomcat 服务器上有一个 OpenAM 10.x SSO 系统,我们希望我们能够进行身份验证,这里没有授权规则或组。我看到的所有文档都包含未知版本的 OpenAM 和 Spring Security 3。我们有 OpenAM 10.x,不知道何时升级到最新的 OpenAM。我们计划使用目前最新的 Spring Security 4.0.3。
1) 我们可以做到这一点的一种方法是建立一个信任圈,然后建立一个 IDP 和一个 SP,然后我们将有一个 URL 以便进行联合 SSO。我相信这就是我们的前端将如何获得身份验证并将令牌返回给前端并可能存储为 cookie 的方式。
2) 我看到的另一种方法是简单地调用 OpenAM restful api,输入用户名和密码并获取令牌。然后该令牌将用于传递到后端 RESTful api 以确保安全。
我们肯定会使用 Spring 用户、角色和权限(授权)安全性,那么我们可以这样做吗?对用户、角色和权限使用 Spring Security 4.0.3,但使用 OpenAM 进行身份验证???
任何信息都会很有帮助。谢谢!
我们一直在对我们的一个应用程序做类似的事情。我们从使用 OpenAM 12 开始,现在使用 OpenAM 13 SNAPSHOT。
我们一直在使用 OpenID Connect 进行集成,而不是 SAML。 这对我们来说是一个很好的起点:https://github.com/fromi/spring-google-openidconnect.
我们在 OAuth2ProtectedResourceDetails 中使用了默认的 header/basic 方案,而不是示例中的表单。
在 OpenAM 上,您必须配置 OpenID Connect Provider。 OpenAM 13 中的步骤:
- 以 amAdmin 身份登录。
- Select境界.
- 着陆页(Dashboard/Realm 概述)将列出常见任务。
- 选择配置 'OAuth Provider',然后选择 'Configure OpenID Connect'。
- 选择默认值并点击创建。
然后你必须添加一个 agent/client。 OpenAM 13 中的步骤:
- 在领域配置页面中,选择代理。
- Select OAuth 2.0/OpenID 连接客户端。
- 单击新建按钮,输入 client_id 和 client_secret 值并创建代理。
- 点击新创建的代理进一步配置redirect_uri、作用域等参数
如果您无法选择 OpenAM 12 或 13 并且被困在 OpenAM 10 上,则此信息可能没有用。