3

我正在尝试使用 Grails Shiro 插件实现 AuthorizingRealm。使用插件生成的类 ShiroLdapRealm 对 Active Directory 进行身份验证。角色将在应用程序的数据库中维护。

那么如何将 ShiroLdapRealm 身份验证与我的自定义授权相结合呢?在我看来,Grails Shiro 插件使用 RealmWrapper 向 Grails 世界隐藏 Shiro 的内部结构,它只实现了一个标准的 Realm 类,而不是 AuthorizingRealm。

任何想法?谢谢!

4

1 回答 1

1

之前没用过shiro,但是已经在几个项目中成功使用过shiro插件了……

因此,如果您已经有一个可以工作的 LdapRealm,请将 ShiroLdapRealm.groovy 文件复制到安全的备份位置并将其从项目中删除...

接下来,创建一个 shiro 通配符领域 ( create-wildcard-realm)。这将创建一个具有身份验证和授权功能的领域。

authenticate()方法从您的旧领域复制到此...

ShiroUser现在,您可以使用有效的结果对 LDAP 进行身份验证。

您可以将ShiroRole具有相应权限的 s 分配给该用户。

您可以轻松地在引导程序中创建具有权限的所需角色,并根据您从目录服务中读取的 ACL 将它们分配给用户...

希望有帮助

于 2012-03-30T19:27:52.823 回答