问题标签 [declarative-authorization]
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.
ruby-on-rails - 使用 declarative_authorization 保护敏感属性
使用declarative_authorization按角色保护属性的好方法是什么?例如,用户可以编辑他的联系信息,但不能编辑他的角色。
我的第一个倾向是为不同的场景创建多个控制器动作。我很快意识到随着受保护属性数量的增加,这会变得多么笨拙。为用户角色执行此操作是一回事,但我可以想象多个受保护的属性。添加很多控制器操作和路由感觉不对。
我的第二个倾向是围绕特定敏感属性创建权限,然后使用 declarative_authorizations 提供的 View hepers 包装表单元素。但是,在我看来,模型和控制器方面有点模糊。建议会很棒。
请建议使用 declarative_authorizations 按角色保护属性的最佳方法。
ruby-on-rails - 帮助 rails declarative_authorization
我根本无法执行此规则……它允许任何人执行此操作。
这是我的规则
这是我的控制器动作
我知道我已正确设置,因为此规则运行良好
我的规则定义中的错误在哪里?
请帮忙
ruby-on-rails - without_access_control 更简洁的使用方式
我正在开发一个使用 declarative_authorization 进行模型安全的应用程序,并且有很多测试我正在构建夹具并且不希望/不需要它们通过授权框架。目前我正在使用类似下面的代码片段,但由于这将是一项相当普遍的任务,我想知道是否有更好或更简洁的方法来实现相同的目标。
ruby-on-rails - 在声明性授权 if_attribute 中向用户提供多个条件
我有 4 个不同级别的访问权限;管理员、合作伙伴、员工和客户。Admin、Partner 和 Employee 对客户端具有管理访问权限。基本上我所做的是创建了一个 Rails 应用程序,客户可以在其中将文档上传给他们的供应商(合作伙伴)。除了客户端级别的访问之外,一切都很好。我有两个代码;partercode 和客户端代码。合作伙伴只能查看文件的 partercode 字段等于合作伙伴的合作伙伴代码的文件。这工作得很好。但是,客户端只能看到合作伙伴代码匹配且客户端代码匹配的文件。下面是我的客户部分。起作用的是客户端只允许查看partercode文件,但它正在设置它们查看属于合作伙伴的其他客户端。(通过在 URL 中输入数字)。我怀疑这永远不会是一个问题,但它
ruby-on-rails - 使用 declarative_authorization 限制模型中的结果
我正在使用声明性授权 gem 来获取 rails 项目中的权限,并且我正在尝试根据用户权限限制模型的输出。
我的缩写授权文件如下所示:
在我的人员模型中,我有一个静态方法,我希望看起来像这样
使用 with_permissions_to 或 allowed_to 的文档中的 AuthorizationInModel 对象似乎对此提供了支持。我无法根据文档弄清楚如何使用这些功能,或者如何返回当前用户对当前模型的权限列表。
有任何想法吗?
ruby-on-rails - Decl_auth 不允许我的来宾角色做我允许的事情-Rails 3
我正在使用 Decl_auth 进行授权,即使我有这个config/authorization_rules.rb
:
当我尝试添加评论时,它会显示 HTTP 身份验证提示,并且我在日志中看到了这一点:
有任何想法吗 ?
我的评论控制器,create
动作如下所示:
ruby-on-rails - Devise登录时如何传参
在 Devise 登录过程中如何传递参数?
我有一组用户,每个用户都有自己的个人资料页面。我希望他们能够查看自己的个人资料页面,但不能查看其他用户的个人资料页面,除非他们是管理员,在这种情况下他们可以访问应用程序中的所有内容。
我创建了一个用户控制器,并将以下代码应用于控制器的开头。我用他们的用户名替换了通过 ID 查找,以便/users/username
访问个人资料:
我在 routes.rb 中指定:
当用户访问时, http://appli.cat.ion
他们将被提示输入登录凭据,然后被重定向到root_path
用户控制器的显示操作。除非我可以在登录过程中传递id
参数,否则这将导致无限的重定向循环。设计中有什么东西可以帮助解决这个问题吗?
我相信以下两种设计方法可以提供帮助:
和
我已经覆盖after_sign_in_path
了以下内容:
这提供了预期的效果:用户登录,被重定向到他们的个人资料页面,但前提是我返回nil
如下stored_location_for
:
(http)://appli.cat.ion/
同样,我的目标是在用户登录后直接导航到他们的个人资料页面。如果用户导航到(http)://appli.cat.tion/otherresources
然后我想让用户登录,然后将他们重定向到他们请求的页面。如果我返回nil
,stored_location_for
那么无论如何用户总是会被重定向到他们的个人资料页面,这充其量是不可取的,最坏的情况是无法使用。我认为如果我直接导航到应用程序登录然后stored_location
会返回nil
,并在登录时被定向到我的个人资料页面,但它只是将我重定向到root_path
.
c# - Role= "" 的 PrincipalPermission 总是失败
我在我的 asp.net 3.5 webforms 应用程序上使用表单身份验证。
我有一个自定义类实现IIdentity
.
我已经用[PrincipalPermission(SecurityAction.Demand, Role = "administration")]
.
我的问题是,即使我以该角色的用户身份登录,我也会遇到安全异常。我尝试过的每个角色/用户组合都会发生这种情况。
但是,如果我使用[PrincipalPermission(SecurityAction.Demand, Name = "admin")]
授权按预期工作。
我确定我的GetRoles()
方法返回正确的角色字符串。
有什么我做错了吗?
ruby-on-rails - has_permission_on 带有声明式授权,非属性条件
如果在我的应用程序中设置了会话变量,我想授权特定操作。我不知道该怎么做。就像是:
我不明白如何完成这个基本任务。任何帮助表示赞赏。
ruby-on-rails-3 - 具有 Declarative_Authorization 的单元格
使用 gems 单元格和 declarative_authorization(连同设计),我试图弄清楚如何包含 allowed_to?进入单元格模板。到目前为止,我已经将它添加到我的单元格中(设计一个为它的助手工作):
但事实上 declarative_auth 帮助程序模块使用以下代码,这令人震惊:
显然这给了
更新:
经过一番思考,我不确定这是否适用于 Cells。Declarative_auth 需要控制器作为其规则的基础,但 Cells 与该控制器无关。在我看来,这两者是不兼容的,除非我将对控制器的引用传递给 Cells?开始认为细胞不是要走的路。