本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 OIDC 身份来源
您也可以将任何合规的 OpenID Connect (OIDC) IdP 配置为策略存储的身份源。OIDC 提供商与 Amazon Cognito 用户池类似:它们是作为身份验证的 JWTs 产物生成的。要添加 OIDC 提供商,您必须提供颁发机构 URL
新的 OIDC 身份源需要以下信息:
-
发行人网址。经过验证的权限必须能够在此 URL 上发现
.well-known/openid-configuration
终端节点。 -
不包含通配符的 CNAME 记录。例如,
a.example.com
无法映射到*.example.net
。相反,*.example.com
无法映射到。a.example.net
-
您要在授权请求中使用的令牌类型。在本例中,您选择了身份令牌。
-
例如,您要与身份源关联的用户实体类型
MyCorp::User
。 -
例如,您要与身份源关联的群组实体类型
MyCorp::UserGroup
。 -
ID 令牌示例,或 ID 令牌中声明的定义。
-
要应用于用户和群组实体的前缀 IDs。在 CLI 和 API 中,您可以选择此前缀。例如
MyCorp::User::"auth.example.com|a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
,在您使用 “使用 API Gateway 和身份提供者进行设置” 或 “引导式设置” 选项创建的策略存储中,Verified Permissions 会分配颁发者名称减去https://
的前缀。
有关使用 API 操作授权来自 OIDC 来源的请求的更多信息,请参阅。可用于授权的 API 操作
以下示例说明如何创建允许会计部门员工访问年终报告的策略,该策略具有机密分类且不在卫星办公室的员工可以访问年终报告。已验证权限从委托人 ID 令牌中的声明中派生这些属性。
请注意,在委托人中引用组时,必须使用in
运算符才能正确评估策略。
permit( principal in MyCorp::UserGroup::"MyOIDCProvider|Accounting", action, resource in MyCorp::Folder::"YearEnd2024" ) when { principal.jobClassification == "Confidential" && !(principal.location like "SatelliteOffice*") };