Spring boot KeyClope授权服务-动态资源和资源属性

Spring boot KeyClope授权服务-动态资源和资源属性,spring-boot,authorization,keycloak,Spring Boot,Authorization,Keycloak,我有一个Spring Boot应用程序,我正在使用Key斗篷的授权服务 假设我有一个名为Report1的报告,id为1,由user1创建 访问资源的URL应该是/app/{reportId}。要访问报告,请使用/app/1 我只想将此url的访问权限限制为报表的所有者/创建者(user1)。由于这是一种“动态”url,并且ID不是事先确定的,因此我无法在KeyClope中创建具有静态url(app/1)的资源 我想介绍一个JS策略,比如: var context=$evaluation.cont

我有一个Spring Boot应用程序,我正在使用Key斗篷的授权服务

假设我有一个名为
Report1
的报告,id为
1
,由
user1
创建

访问资源的URL应该是
/app/{reportId}
。要访问报告,请使用
/app/1

我只想将此url的访问权限限制为报表的所有者/创建者(
user1
)。由于这是一种“动态”url,并且ID不是事先确定的,因此我无法在KeyClope中创建具有静态url(
app/1
)的资源

我想介绍一个JS策略,比如:

var context=$evaluation.context;
var identity=context.identity;
var permission=$evaluation.permission;
变量资源=
if(资源==identity.id){
$evaluation.grant();
}
根据上述代码:

  • Report1
    应根据数据库动态确定
  • 由用户id创建的
    是Report1的一个属性,其中包含
    user1

有什么想法吗?

你是如何解决这个问题的?