问题标签 [shiro]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1151 浏览

grails - Grails Shiro 插件:确认我的理解

在阅读了一些文档之后,我对如何开始使用 shiro 插件有点模糊。我决定不使用 Nimble,因为它带有很少的表格和 UI 插件。

我用我自己的表设置了带有通配符领域的 shiro 插件。我可以使用基于权限(而不是基于角色)的访问控制,因为它可以很好地扩展。现在,它的步骤。

  1. 将权限字符串分配给主题,并将其保存在数据库中
  2. 通过 isPermitted、hasPermission(或 GSP 中的相关标签)检查权限。

现在,
1.什么时候通过过滤器使用访问控制?
2. 是否有一个闭包注入到控制器中,我可以在其中定义操作的权限?我在某处阅读了有关每个控制器上的 accessControl 静态闭包的信息,但似乎没有记录。
3. 如何创建一个典型的访问控制场景,比如只有(某物、帖子等)的创建者才能删除它?一种可能性是根据用户 ID 创建和保存权限字符串。检查权限检索对象(帖子),获取用户ID并与主题进行比较..似乎有点复杂..有什么简单的实现吗?

非常感谢..巴布。

0 投票
2 回答
475 浏览

grails - 如何使用 A shiro 插件向用户投放广告

我正在为我的 grails 应用程序安全使用 Shiro 插件,我的应用程序已经有一个用户。使用 shiro 插件,我们得到一个 shiro 用户,现在我如何将 shiro 用户与我的应用程序的普通用户集成,显示我继续使用关系还是用户类现在应该只是一个 shiro 用户类?

0 投票
2 回答
20191 浏览

java - 如何在 Grails 或 Java 应用程序中轻松实现“谁在线”?

我正在 grails 中建立一个社区网站(使用 Apache Shiro 进行安全和身份验证系统),我想实现“谁在线?”的功能。

这个网址http://cksource.com/forums/viewonline.php(如果您没有访问此网址,请参阅下面的快照)给出了我想要实现的示例。

我怎样才能以最简单的方式做到这一点?Grails 或 Java 中是否有任何现有的解决方案?

谢谢你。

快照:谁是在线页面的快照 http://www.freeimagehosting.net/uploads/th.2de8468a86.png或在这里查看:http ://www.freeimagehosting.net/image.php?2de8468a86.png

0 投票
3 回答
7027 浏览

java - Apache Shiro 配置问题的 Web 应用程序安全性

我决定使用 Shiro 来保护我的 web 应用程序。我使用一个 tomcat 应用服务器、maven、hibernate 和 jsf。现在我尝试配置 Shiro,但遇到了一些问题。

这是我的文件:

---POM.xml---

---web.xml---

如果我部署到服务器,我会收到以下错误消息:

我的错误在哪里?我还需要实现其他东西吗?谢谢你的帮助斯文


额外的

我想了一下这个问题。我认为关键是设置领域。但是为了测试这个框架,我不想添加数据库或 ldap。我需要一个简单的解决方案...


更新

我将 web.xml 更改如下:

但错误保持不变:-/

0 投票
1 回答
2044 浏览

java - apache shiro:authc.loginUrl 不起作用

我将 Shiro 配置如下:

您可以想象“welcome.xhtml”包含我的登录表单。如果我没有登录到应用程序并且我尝试访问overview.xhtml,我会被抛出到我的应用程序中不存在的“login.jsp”!

此外,如果我添加以下内容:

到 shiro config 的主要部分,我通过启动 tomcat 得到这个错误:

这是我的错误吗?干杯...


Maven POM 部分:

0 投票
3 回答
428 浏览

security - Grails + 保护应用程序

我正在开发一个遗留的 grails 应用程序。

我有几张这样的桌子

我想验证当某个用户想要访问一项资产时,它是否具有正确的 enterprise_id(即该用户与该资产属于同一企业)。

例如,考虑

John 是 Microsoft 的用户,Charles(来自 Oracle),只有 Charles 应该能够访问 Java 虚拟机。

我一直在阅读spring security,但它看起来对我没有帮助。我看到的只是用户身份验证、密码、角色等(当然,我可能是错的)。这些东西已经得到保护并且工作正常。目前我正在考虑过滤器,但不能让它们工作并滚动我自己的安全性(见这个问题),这似乎不对。

有什么想法吗?Spring Security 是要走的路吗?士郎?

提前致谢

0 投票
1 回答
776 浏览

java - Shiro 权限字符串已拒绝功能?

我为 grails 使用 shiro 插件并允许用户在运行时添加权限。我的控制器有许多操作,例如索引、列表、编辑、创建、保存、更新、搜索、删除……假设控制器名称是“foo”简单 foo 控制器的权限字符串是 foo:* 表示每个人都有这个权限可以访问 foo 控制器的所有操作。但是如果我只想拒绝删除操作,我必须像这样编写权限字符串 foo:index,list,edit,create,save,update,search 这可以解决,但是权限字符串很长,如果我的控制器有更多操作比这个。如果有这样的语法会更好 foo:[delete] 添加方括号或类似的东西来拒绝只删除操作但允许其余操作。

先感谢您。

0 投票
1 回答
442 浏览

grails - 在 Netbeans 中升级 Grails 版本并添加 Shiro 安全性

我一直在从事应用程序使用 grails 1.2.2 的项目......

现在我想在当前项目中添加 Shiro 安全性(使用 Netbeans),我对 grails 领域非常陌生。

所以,我想知道如何将 shiro 插件添加到我当前的项目(在 netbeans 中)?可能我还需要将我当前的项目升级到版本 1.3.3 或 1.3.4 我猜。

任何帮助将不胜感激...

谢谢。

0 投票
1 回答
895 浏览

maven - Shiro 插件与 Grails 中的 Quartz 框架冲突

我一直在我的 grails 项目中使用名为quartz-all-1.7.3 的lib 使用Quartz 框架。

现在我需要将 shiro 插件安装到我的项目中。因此,每当我将 shiro 插件安装到我的项目时,它都会成功安装..

但是,每当我再次运行我的项目时,它都会给出如下编译错误:

因此,在长时间查看 shiro 插件后,我发现它与插件有一些依赖关系。其中一个依赖项是 shiro-quartz-1.0.0-incubating.jar。所以,现在在它的 pom.xml 文件中,我看到了以下行代码:

根据我们在 pom.xml 中的行,没有带有石英依赖项的版本标签,这意味着每当我的项目中安装 shiro 时,它同时使用 maven 提取最新的石英库,即 1.8.3。

而在其中quartz 1.8.3,CustomJDBCDelegate 类的 updateSchedulerState 方法已从 version 更改quarts 1.7.3

所以现在的问题是我无法quartz-all-1.7.3在现有项目中进行更改,并且想在我的项目中也使用 Shiro 插件。

所以应该有一些解决方案,以便 shiro 应该获得quartz-1.7.3版本而不是使用 maven 的最新版本。

任何帮助将不胜感激...

谢谢...

0 投票
6 回答
12709 浏览

grails - GORM createCriteria 和 list 不返回相同的结果:我该怎么办?

我将NimbleShiro用于我的安全框架,我刚刚遇到了一个 GORM 错误。确实 :

返回10 个用户,而User.list(max: 10) 返回9 个用户

经过进一步调查,我发现createCriteria 返回两次相同的用户(管理员),因为管理员有 2 个角色!(我不是在开玩笑)。

似乎任何具有超过 1 个角色的用户将在createCriteria调用中返回两次User.list并将返回max-1实例(即 9 个用户而不是 10 个用户)

我可以使用什么解决方法来返回 10 个唯一用户?

这很烦人,因为我无法正确使用分页。


我的域类是: