【发布时间】:2014-04-15 15:18:51
【问题描述】:
我几乎完成了两个 grails 应用程序的开发。最后要实施的是身份验证和授权。由于 Grails 的集成,我将使用 Spring Security。 Spring Security Core 插件安装在两个应用程序中并且运行良好,但每个应用程序都有自己的数据库表(User、Role 和 User_Role)。
要共享数据库表,我的解决方案是:
- 创建了一个包含 User、Role 和 User_Role 的数据库;
- 配置访问该数据库的辅助数据源;
- 在两个应用中安装了 Spring Security Core 插件;
- 在应用程序中使用了 s2-quickstart 命令;
- 将生成的用户、角色和 user_role 映射到之前创建的数据源。
我分析过的其他解决方案是:
- 创建一个包含所有用户信息的应用程序,以供 RESTful 服务访问。然后我会实现一个新的 UserDetailsService 来从这个服务加载用户。
- 创建一个包含所有 Spring Security 域、控制器、视图和 conf 文件的插件。
最好的方法是什么?我是第一次使用 Spring Security,并没有意识到更智能的选择。
【问题讨论】: