【问题标题】:How could I manage permissions of jhipster's authorities?我如何管理 jhipster 权限的权限?
【发布时间】:2017-06-19 12:43:08
【问题描述】:

我正在使用 JHipster 代码生成器编写一个 webapp。 我创建了 2 个额外的角色,现在我总共有 5 个:

ROLE_USER, ROLE_ADMIN, ROLE_ANONYMOUS, ROLE_PRESIDENT, ROLE_VICE_PRESIDENT

我想知道如何管理他们的权限以显示一些 REST

例如,我想让 PRESIDENT 将新用户添加到数据库,其他简单用户不应该看到执行该工作的 Web 服务。

是否有我错误地忽略的文件可以帮助我使用此功能?

感谢您宝贵时间的建议,

曼努埃尔

【问题讨论】:

  • 您使用的是哪个版本的 JHipster? AngularJS1 还是 Angular 4?
  • AngularJS1,谢谢。

标签: javascript java spring angular jhipster


【解决方案1】:

向JHipster添加新角色需要在2个地方添加。

显而易见的是 AngularJS 前端。要将新角色添加到用户编辑视图,请将它们添加到 vm.authorities = ['ROLE_USER', 'ROLE_ADMIN'] 的“user-management.controller.js”中的选择选项中

要在 UI 的不同位置强制执行角色,您可以将角色添加到状态 JS 文件中。只需将它们添加到data.authorities(检查 user-management.state.js)

如果您希望模板块仅在用户具有适当角色时可见,请查看hasAnyAuthority 指令。

另一部分是保护后端。如果使用当前的 JHipster 版本和 SQL 数据库,则权限存储在数据库中。将您的自定义角色添加到您的 liquibase 迁移的 authorities.csv

最后但同样重要的是,您可以在 WebSecurityConfigurationMicroserviceSecurityConfiguration 中强制执行角色(只需查看现有的 antMatchers)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-06
    • 1970-01-01
    • 1970-01-01
    • 2014-04-18
    • 1970-01-01
    • 2014-10-13
    相关资源
    最近更新 更多