问题标签 [deadbolt]
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.
java - 如何在 Java 的正则表达式中使用 AND 运算符来匹配 2 个完整的单词?我希望这两个词都存在
我有 2 个单独的字符串“TM_TASK”和“TM_CHECKLIST”。我如何在java中使用正则表达式来验证这两个词?java - 对于这种情况,如何在正则表达式中使用 AND 运算符?我需要验证两个字符串,而不是其中任何一个。我是正则表达式的新手。
java - 在死锁中使用动态权限时如何获取控制器参数的值
我在控制器上的 Deadbolt 2 中使用动态权限来检查用户是否有权访问资源。这个资源有一个 ID,在我的控制器中,我有一个方法getById(String id)
。看起来像这样:
在我在 Deadbolt 中的自定义资源处理程序中,我想使用在调用时传递给方法的 id 字符串(例如,检查当前用户是否拥有由 ID 指定的这个特定项目的所有权)。
ID 至少出现在两个地方:我的 URL,作为路由参数,以及在调用方法时作为参数。如何在我的动态权限控制器中访问此 ID:
我在这里发现了一些关于这个问题的东西,但它很老套,而且是 6 年前的事了,我有点希望有一种更清洁的方法来做到这一点。
playframework - 如何将信息从 DeadboltHanlder 传递到 Controller-Method (Play Framework 2.8)
在我们的 Play Framework 应用程序中,我们使用Deadbolt模块进行用户身份验证。这意味着getSubject()
我们的 DeadboltHandler 实现的方法将在实际的 Controller 方法之前被调用。但是,我们需要将确定的 User-ID 从 DeadboltHandler 的getSubject()
方法传输到 Controller 方法。
直到并包括 Play Framework 2.6,这可以通过将 User-ID 添加到 来轻松完成HttpContext.args
,因为HttpContext
在getSubject()
Controller-Method 和 Controller-Method 中都可以使用。不幸的是,在 Play Framework 2.7 及更高版本中,不再有HttpContext
- 我们必须HttpRequest
直接使用。但这似乎HttpRequest
是一成不变的;我们无法HttpRequest
轻松添加确定的用户 ID。
是的,有Http.Request.withAttrs()
,但这不会修改HttpRequest
对象,而是返回一个新HttpRequest
对象。因此,据我所知,这对于将任何信息从方法传递到 Controller 方法没有帮助。getSubject()
那么,在 Play Framework 2.7+ 中将特定于请求的信息从 DeadboltHandler 传递到 Controller-Method 的推荐方法是什么???
控制器类:
DeadboltHandler 实现:
注意:MyDeadboltHandler.subject()
确定 的方法由框架隐式Subject
调用,然后调用实际的控制器方法。
谢谢你和最好的问候。