Overview
您可以使用 OpenID Connect ( OIDC ) 通过外部身份提供程序 ( IdP )管理Ops Manager用户身份验证和授权。当您尝试在没有经过身份验证的会话的情况访问权限Ops Manager时, Ops Manager会将您重定向到 IdP 进行登录。完成身份验证后,将返回Ops Manager。
本教程介绍如何:
为Ops Manager配置 OIDC身份验证。
将 OIDC 群组映射到Ops Manager 组织角色和项目角色。
使用公共API管理组织和项目角色映射。
Considerations
将 HTTPS 用于 OIDC
一般来说,强烈建议将 HTTPS 用于Ops Manager ,尤其是 OIDC。如果Ops Manager不使用 HTTPS,某些 IdP 集成可能无法正常运行。
先决条件
要配置 OIDC 集成,您必须在 IdP 中执行以下操作:
Global Owner为 角色创建一个群组并将用户添加到其中。
步骤
要配置 OIDC身份验证:
配置 OIDC 连接设置。
指定必填字段的值,然后根据需要设立可选字段。
下表将Ops Manager用户界面字段映射到配置文件字段。
Ops Manager用户界面字段 | 配置文件字段 | 必需 | 说明 |
|---|---|---|---|
Issuer URI |
| 是 | 发行者 URI 或 OIDC 元元数据发现文档URL。 |
Client ID |
| 是 | IdP 分配给Ops Manager 的客户端标识符。 |
Client Secret |
| 是 | 由 IdP 分配给Ops Manager 的客户端密钥。 |
Custom CA Certificate (PEM) |
| No | 连接到 IdP 时要信任的一个或多个 PEM 编码的 CA 证书。当 IdP 使用自签名或私有 CA 证书时,请使用此选项。您可以连接多个证书。 |
Enable PKCE (Proof Key for Code Exchange) |
| 是 | 授权代码流的 PKCE 启用。默认推荐并启用。仅当 IdP 不支持机密客户端的 PKCE 时才禁用。默认值: |
Requested Scopes |
| No | Ops Manager从授权端点请求的范围列表。 |
Service Provider Base URL |
| No | OIDC 服务提供商的基本URL 。如果不设立此值, Ops Manager将使用 |
Global Role Owner Groups |
| 是 | 以逗号分隔的 IdP 群组列表,其成员被分配了 全局所有者角色。全局所有者对此部署具有全部特权,包括所有管理权限。 |
Global Automation Admin Groups |
| No | 以逗号分隔的 IdP 群组列表,其成员被分配了“全局自动化管理员”角色。 |
Global Backup Admin Groups |
| No | 以逗号分隔的 IdP 群组列表,其成员被分配了“全局备份管理员”角色。 |
Global Monitoring Admin Groups |
| No | 以逗号分隔的 IdP 群组列表,其成员被分配了“全局监控管理员”角色。 |
Global User Admin Groups |
| No | 以逗号分隔的 IdP 群组列表,其成员被分配了“全局用户管理员”角色。 |
Global Read Only Groups |
| No | 以逗号分隔的 IdP 群组列表,其成员被分配了 全局只读角色。 |
OIDC Claim for User First Name |
| No | 包含用户名字的声明。默认值: |
OIDC Claim for User Last Name |
| No | 包含用户姓氏的声明。默认值: |
OIDC Claim for User Email |
| No | 包含用户电子邮件解决的声明。默认值: |
OIDC Claim for Group Member |
| No | 声明包含Ops Manager用于将角色映射到项目和组织的群组列表。默认值: |
角色映射的工作原理
OIDC角色映射的工作方式与 SAML角色映射相同。您可以将 IdP 群组映射到组织和项目的Ops Manager角色。当用户登录时, Ops Manager会根据用户的群组成员身份分配角色。
组织角色映射
组织角色映射将 IdP 群组与组织角色关联。
组织映射字段包括:
组织所有者角色的 OIDC 群组
组织项目创建者角色的 OIDC 群组
组织只读角色的 OIDC 群组
组织成员角色的 OIDC 群组
项目角色映射
项目角色映射将 IdP 群组与项目角色关联。
项目映射字段包括:
项目所有者角色的 OIDC 群组
只读角色的 OIDC 群组
自动化管理员角色的 OIDC 群组
备份管理员角色的 OIDC 群组
用于监控管理员角色的 OIDC 群组
用户管理员角色的 OIDC 群组
用于数据访问管理员角色的 OIDC 群组
用于数据访问读写角色的 OIDC 群组
用于数据访问只读角色的 OIDC 群组
使用公共API管理角色映射
您可以使用以下公共 idpGroupMappingsAPI 中的 字段以编程方式管理IdP角色映射:
获取组织。
获取项目。
创建和更新组织。
创建和更新项目。
idpGroupMappings字段是将Ops Manager角色映射到 IdP 群组的大量。
{ "idpGroupMappings": [ { "idpGroups": [ "name_of_your_idp_group", "another_name_of_idp_group" ], "roleName": "GROUP_USER_ADMIN" } ] }
以下值对组织roleName 有效:
ORG_OWNERORG_GROUP_CREATORORG_BILLING_ADMINORG_READ_ONLYORG_MEMBER
以下值对项目roleName 有效:
GROUP_OWNERGROUP_READ_ONLYGROUP_AUTOMATION_ADMINGROUP_BACKUP_ADMINGROUP_MONITORING_ADMINGROUP_USER_ADMINGROUP_BILLING_ADMINGROUP_DATA_ACCESS_ADMINGROUP_DATA_ACCESS_READ_ONLYGROUP_DATA_ACCESS_READ_WRITEGROUP_CHARTS_ADMINGROUP_CLUSTER_MANAGERGROUP_SEARCH_INDEX_EDITOR
反向通道注销
Ops Manager支持 OIDC 反向通道注销。当 IdP 发送注销令牌时, Ops Manager会使用户的会话失效。
端点
POST {OPSMANAGER-HOST}:{PORT}/oidc/backchannel-logout
请求
使用包含签名 JWT 的 logout_token 参数发送表单编码请求。
要求
包括有效的
sub(主题)声明。您可以包含
sid(会话ID)声明,以实现有针对性的会话失效。
Ops Manager不支持服务提供商发起的注销。要日志,用户必须从 IdP日志。