OpenID Connect 组可将用户从所有未同步的组中移除

在某些条件下,OpenID Connect 组同步会将用户从所有未同步的 Discourse 组中踢出

日志和整体情况表明,当用户失去一个(未同步的)OIDC 组时,会触发此问题。系统似乎打算将用户从该单个(不存在的)组中踢出,因为它在变更说明中使用了丢失组的名称。
但事实上,它却将用户从所有未同步的组中踢出。

考虑到这可能导致的访问权限丧失,我认为这是一个优先级较高的缺陷。

顺便问一下,有群组成员变更的全局日志吗?如果有会方便很多,但目前我只找到了每个群组的独立日志。

能否告知我此摘要是否正确?

  • 先前状态:
    • 用户 bilbo 在 Discourse 中属于组 ABC
    • BC 已配置为与 OIDC 组 bc 自动关联(分别对应)
    • OpenID Connect groups claim 设置为例如 groups
  • 执行的操作:
    • 用户 bilbo 通过 OIDC 登录
    • OIDC claim 中包含组 cd
    • (组 D 在 Discourse 中不存在)
    • Discourse 将 bilbo 从组 AB 中移除
      :red_exclamation_mark: 移除 A 组成员身份是错误的

我还没有第二个已同步的组 B。否则的话,是的。

1 个赞