Google 自定义架构的 CEL 查询(动态组)

Google CEL query (dynamic groups) on custom schemas

我正在尝试为 Google 动态组创建 CEL 查询以匹配 customSchemas 中定义的自定义属性。它是这样定义的(通过 gam 查看):

Schema: EmployeeType
 schemaId: xxx
 displayName: EmployeeType
 Field: UserType
  fieldId: _xxx
  fieldType: STRING
  displayName: UserType
  multiValued: False
  readAccessType: ADMINS_AND_SELF
  indexed: True

在查看用户信息时,它是这样映射的:customSchemas.EmployeeType.UserType

我的问题是我似乎无法针对给定的 UserType 值针对 return 用户构建查询。我尝试了以下方法:

user.EmployeeType.exists(x x.UserType=='MyValue')
user.customSchemas.EmployeeType.exists(x x.UserType=='MyValue')
user.customSchemas.exists(x x.EmployeeType.UserType=='MyValue')

没有任何效果。我认为动态组可能无法处理自定义属性,但我也可能有错误的查询。有人可以解释一下吗?

从今天开始,自定义属性不是动态组 CEL 查询的有效属性,请参阅 https://cloud.google.com/identity/docs/how-to/dynamic-groups-attributes?hl=en

此外,我一直在尝试为动态组构建 CEL 查询,扩展管理控制台中的图形查询生成器并阅读 CEL 规范。我可以确认只有可以通过图形查询构建器构建的查询才会针对动态组查询进行验证。构建图形查询生成器未提供的有效 CEL 查询(例如使用 startsWitch、endsWith、matches())不起作用,无论是通过 Web 界面还是 API。希望 Google 改变这一点。