关于使用 Okta 进行预配
如果使用 Okta 作为 IdP,则可以使用 Okta 的应用程序来预配用户帐户、管理企业成员身份以及为企业中的组织管理团队成员身份。 Okta 是合作伙伴 IdP,因此您可以使用适用于 Enterprise Managed Users 的 Okta 应用程序 在 GitHub Enterprise Server 上管理 SAML 单点登录和 SCIM 预配。
或者,如果只想使用 Okta 进行 SAML 身份验证,并且想要使用不同的 IdP 进行预配,则可以与 GitHub's REST API for SCIM 集成。 有关详细信息,请参阅“使用 REST API 通过 SCIM 预配用户和组”。
受支持的功能
GitHub Enterprise Server
支持 Okta 的以下预配功能。
| 特性 | 说明 |
|---|---|
| 推送给新用户 | 分配给 GitHubOkta 中应用程序的用户会自动在企业GitHub中创建。 |
| 推送配置文件更新 | Okta 中用户配置文件的更新将推送到 GitHub。 |
| 推送组 | Okta 中被分配给GitHub的应用并作为推送组的组,会在GitHub上的企业中自动创建。 |
| 推送用户停用 | 在 Okta 中将用户从GitHub的应用中取消分配后,会在GitHub上禁用该用户。 用户将无法登录,但会保留用户的信息。 |
| 重新激活用户 | 在 Okta 中,其 Okta 帐户已被重新激活且已被重新分配回 Okta 上 GitHub's 应用程序的用户将被启用。 |
先决条件
在 GitHub Enterprise Server 上使用 SCIM 的一般先决条件同样适用。 请参阅“为企业托管用户以管理用户”中的“先决条件”部分。
此外:
-
若要配置 SCIM,必须完成“AUTOTITLE”中的步骤 1 到 4。
- 您将需要为设置用户创建的 personal access token (classic),以对来自 Okta 的请求进行身份验证。
-
必须使用 Okta 的应用程序进行身份验证和预配。
-
Okta 产品必须支持跨域身份管理系统 (SCIM)。 有关详细信息,请查看 Okta 的文档或联系 Okta 的支持团队。
1. 配置 SAML
在开始本部分之前,请确保已按照“AUTOTITLE”中的步骤 1 和 2 进行操作。
在 Okta 中
-
转到 Okta 中的 GitHub Enterprise Server 应用程序。
-
单击“添加集成”****。
-
在常规设置中,在“基础 URL”字段中,输入您的 GitHub Enterprise Server 主机 URL(
https://HOSTNAME.com)。 -
单击“登录”选项卡。
-
确保“凭据详细信息”与以下内容匹配。
- “应用程序用户名格式”:Okta 用户名
- “更新应用程序用户名”:创建和更新
- “密码显示”:取消选择
-
在“SAML 签名证书”部分中,选择“操作”,然后单击“下载证书” 来下载证书。
-
在页面右侧,单击“查看 SAML 设置说明”****。
-
记下“登录 URL”和“颁发者”URL。
在 GitHub Enterprise Server 上
- 以有权访问管理控制台的用户身份登录 你的 GitHub Enterprise Server 实例 。
- 使用你收集的信息配置 SAML。 请参阅“为企业配置 SAML 单点登录”。
2. 配置 SCIM
在配置 SAML 设置之后,你可以继续配置预配设置。
在开始本部分之前,请确保已按照 AUTOTITLE 中的步骤 1 到 4 进行操作。
-
转到你在 Okta 上的 GitHub Enterprise Managed User 应用程序。
-
单击 资源调配 选项卡。
-
在“设置”菜单中,单击“集成”。
-
若要进行更改,请单击“编辑”。
-
单击“配置 API 集成”****。
-
在“API 令牌”字段中,输入属于设置用户的 personal access token (classic)。
注意
GitHub 不支持“导入组”。 选择或取消选择复选框对你的配置没有影响。
-
点击 测试 API 凭据。 如果测试成功,屏幕顶部将显示一条验证消息。
-
若要保存令牌,请单击“保存”。
-
在“设置”菜单中,单击“转到应用”。
-
在“预配到应用”的右侧,单击编辑以允许进行更改。
-
在“创建用户”、“更新用户属性”和“停用用户”的右侧,选择“启用” 。
-
若要完成配置预配,请单击“保存”。
完成 SCIM 配置后,你可能想要禁用为配置过程启用的某些 SAML 设置。 请参阅“为企业托管用户以管理用户”。
如何分配用户和组?
配置身份验证和预配后,可以通过将用户或组分配到 IdP 中的相关应用程序来在 GitHub Enterprise Managed User 上预配新用户。
注意
站点管理员可能已启用实例的 API 速率限制。 如果超出这些阈值,预配用户的尝试可能会失败并出现“速率限制”错误。 可以查看 IdP 日志,确认尝试的 SCIM 预配或推送操作是否由于速率限制错误而失败。 对失败的预配尝试的响应将取决于 IdP。 有关详细信息,请参阅 排除企业的标识和访问管理故障。
还可以通过将组添加到 Okta 中的“推送组”选项卡来自动管理组织成员身份。 成功预配该组后,该组可以连接到企业组织的团队。 有关管理团队的详细信息,请参阅“使用标识提供者组管理团队成员身份”。
当分配用户时,可以使用 IdP 上应用程序中的“角色”属性设置用户在企业中的角色。 有关可分配的角色的详细信息,请参阅“企业中角色的能力”。
注意
只能为单个用户(而不是组)设置“Roles”属性。 如果要为 Okta 中分配给应用程序的组中的每个人设置角色,则必须单独为每个组成员使用“角色”属性。
如何取消预配用户和组?
若要从 GitHub中删除用户或组,请从 Okta 的“分配”选项卡和“推送组”选项卡中删除用户或组。 对于用户,请确保从“推送组”选项卡中的所有组中删除该用户。