Keycloak 8授权权限已损坏?

时间:2019-11-22 19:57:05

标签: security permissions authorization keycloak

基于资源的权限似乎可以正常工作,但是我还没有突破基于范围的权限。这是一个测试设置:

    df1 = df.loc[df.num_bikes.eq(0)] pd.crosstab([df1.Time, df1.station], 'Occurrences').reset_index() Out[996]: Time station Occurrences 0 3.02 Girwood 2 1 4.10 Fraser 1 2 7.46 Fraser 1 3 10.10 Carslile 1 组中的
  • 用户foo
  • foos具有角色foos,这意味着用户foorole的有效角色包括foo

  • 在某些客户端的“授权”选项卡中,添加范围为foorole的资源foores

  • 创建一个需要dofoo的角色策略foopolicy
  • 创建基于范围的foorole权限,该权限指定foopermfoopolicy范围

首次测试

然后在“授权”->“评估”选项卡中,输入用户dofoo和资源foo。评估失败-权限被拒绝。

当我输入角色foores(而不是该用户)时,将被授予权限。 (闪亮的新密钥斗篷8.0.0无法解析用户角色)

这可以在Keycloak 4.4.0中按预期方式工作。最终版-我还没有设法在两者之间测试版本。

[[我正在Centos Macos客户机上在K8s中运行keycloak docker映像]

第二项测试

设置:

  • 创建一个角色foorole,并将其整合为barrole
  • 创建资源foo
  • 范围barres
  • 需要dobar的政策barpolicy
  • 指定barrolebarperm范围的权限barpolicy

按组成,应该为用户foo授予barperm权限(KC4.4.0.Final可以),但不能授予KC8。

测试3

设置:

  • 向资源dobarfoores添加类型,称为barres。然后评估角色和资源类型:

test被允许在barroledobar,并被拒绝在barresdofoo

AND-foores被允许在fooroledofoo进入foores,但不允许dobarbarresFWP.refresh()上达到合成要求(同样,在4.4.0。最终版)

除非有必要,否则在中间版本中的某些地方需要配置一些我所缺少的东西。

最后,即使将用户foo从组中删除并直接授予角色,其行为也相同。

0 个答案:

没有答案