当前位置: 首页 > 知识库问答 >
问题:

在Spring中动态创建URL的新角色和权限

岳硕
2023-03-14

Spring security-如何动态添加角色,取决于角色,url访问权限必须更改,创建角色时我们必须动态设置url权限
例如:对于管理员,他可以访问所有url,而当我创建另一个角色(如支持)时,我可以设置他可以动态访问的url

共有1个答案

艾令雪
2023-03-14

这就是Spring授权处理的具体内容
您可以使用Spring表达式,如-

@PreAuthorize("hasAuthority('PERM_ADD')")
@RequestMapping("/add")
public String add() {
  ...
}

以下是文档-
https://docs.spring.io/spring-security/site/docs/current/reference/html/authorization.html

您可能想要实现类似于此示例的东西-https://stackoverflow.com/a/60251931/1308685

其中,用户角色映射到更细粒度的权限。

 类似资料:
  • 问题内容: 我在Struts 2 + Spring IOC项目中使用Spring Security 3。 我在项目中使用了自定义过滤器,身份验证提供程序等。 您可以在这里看到我的 到目前为止,您可以看到,我提到的url-pattern是硬编码的。我想知道是否有一种方法可以动态创建新的ROLES和PERMISSIONS,而不是硬编码。 就像创建新角色和权限并将其保存到数据库,然后从数据库访问一样。我

  • 我有表: 用户、角色 数据透视表: 角色\u用户 模型: 用户、角色和权限。 现在我想实现的是,假设admin在控制面板中添加了新权限。那么,糟糕的是,作为一名开发人员,我必须站起来,打开代码,手动将这个新添加的权限放在一些路由的中间软件中。每次管理员授予新权限时,我都必须手动添加代码。 是否有任何方法可以动态执行所有这些操作,以便在管理员添加新权限后,我不会更改任何内容,也不会添加代码,并且新权

  • 我有一个springmvc和springsecurity项目。 角色: 权限: 以及在角色和权限之间: 接下来的情况是: 我有一个控制器,我想用注释保护操作 大概是这样的: 但是注释不起作用,但是如果我把代码改成这样就可以了: 有人能给我一个提示吗?我不想用权限限制操作,我更喜欢角色限制。 提前谢谢。

  • 自定义身份验证提供程序 在上面的例子中,现在所有的用户都可以访问所有的URL,但请帮助限制他们只能访问授予他的URL。

  • 下午好.如何在不使用不同的OAUTH2服务的情况下,为一个应用程序中的特定实体(类似于RBAC/ABAC)的特定控制器配置用户的权限和角色? 还有一个名为Project的实体。用户可能是许多项目的成员。有一些项目用户角色:PROJECT_ADMIN、PROJECT_EDITO、PROJECT_USER。每个项目角色都可以拥有自己的权限(权限),如向项目添加用户、编辑项目等。所有角色配置都存储在'P