jhipster - Jhipster 基于动态角色的身份验证
问题描述
我对java很陌生。我使用 jhipster 生成了一个应用程序。它从后面的代码中为您提供基于角色的身份验证。如果我想添加新角色,我需要从后面的代码中添加。但我对通过 UI 进行基于动态角色的身份验证感兴趣。你能告诉我怎么做吗?任何参考都会有所帮助。提前致谢!
解决方案
- 管理用户角色
如果您只想管理用户角色(无论角色来自何处),那么您可以使用 Administration > User Management > Edit User 功能来选择角色。请注意,实际角色来自/api/user/authorities
,它从数据源请求角色。
- 管理角色
由于它Authority
是一个具有存储库的实体,因此默认情况下可以创建任意数量的角色。关键是,JHipster 默认情况下不提供来自 UI 和 API 的此类管理。您可以采取以下步骤来实现这一点:
- 修改其中并
authority.csv
在src/main/resources/config/liquibase/data
那里添加您的自定义角色,以便在数据库创建期间创建它们。这很简单,但不能启用动态管理 - 类似于通常的实体管理,或者用户管理,创建一个新
@RestController
的,/api/authorities
并允许创建,删除更新等。然后,添加一个新的权限管理模块,包含所有部分,例如列表视图,详细视图,更新对话框,服务等。这涉及几个手动步骤,但是您已经有很多示例代码。有了这个,您可以动态管理应用程序中的角色,并且在 中1
,新角色应该可用于添加到用户
在这两种情况下,JHipster 生成的代码在为登录的用户创建会话时都会尊重用户与权限的关系。希望这会有所帮助
推荐阅读
- python - 网络爬到一张桌子
- django - Python Django 自动完成点亮结果无法加载
- html - 内联 CSS 图像过渡
- jquery - 如何访问特定键的本地存储值
- amazon-web-services - 旋转后 Tomcat 的日志为空 - AWS EC2 - Tomcat 8
- amazon-s3 - 如何授予 lambda 权限以将文件上传到 `terraform` 中的 s3 存储桶?
- jquery - 如何在文件转换时使用 ajax 制作加载器
- android - 根据放置在相机上的视图裁剪图像的特定部分
- regex - 正则表达式函数说明
- android - 我们如何在 onTouch 事件中将带有 drawRect() 的框限制为 Square