我们经常发布文档更新,此页面的翻译可能仍在进行中。有关最新信息,请访问英文文档。如果此页面上的翻译有问题,请告诉我们

在身份提供程序与 GitHub 之间同步团队

You can manage GitHub team membership through an identity provider (IdP) to automatically add and remove team members in an organization or enterprise account.

团队同步可用于使用 GitHub Enterprise Cloud 的组织。 更多信息请参阅“GitHub 的产品”。

本文内容

关于团队同步

当您将 GitHub 团队与 IdP 组同步时,对 IdP 组的更改会自动在 GitHub 上反映,从而减少了对手动更新和自定义脚本的需求。 You can use an IdP with team synchronization to manage administrative tasks such as onboarding new members, granting new permissions for movements within an organization, and removing member access to the organization or enterprise account.

GitHub 团队连接到 IdP 组后,您的 IdP 管理员必须通过身份提供程序进行团队成员资格更改。 对于连接到 IdP 组的团队,将禁用管理团队成员资格的 GitHub UI 和 API。

要管理 GitHub 团队(包括连接到 IdP 组的团队)的仓库访问权限,您必须通过团队的仓库选项卡对 GitHub 进行更改。 For more information, see "About teams" and "Managing team access to an organization repository." You can also make changes through the API. For more information, see "Team synchronization" on GitHub 开发者文档.

通过 IdP 进行的所有团队成员资格更改都将在 GitHub 审核日志中显示为团队同步自动程序所进行的更改。 Team membership data is sent from the IdP to GitHub once every hour.

You can enable team synchronization for organizations owned by enterprise accounts with SAML enabled. For more information, see "Enforcing security settings in your enterprise account."

Note: You can configure team synchronization with Azure AD. People with Global administrator and Privileged Role administrator permissions can enable team synchronization for an Azure AD organization.

已同步团队成员的要求

After you enable team synchronization, membership data for each team member will synchronize if the person continues to authenticate using SAML SSO with the same SSO identity on GitHub, and if the person remains a member of the connected IdP group.

Once you connect a team to an IdP group, existing teams or group members can be automatically removed from the team on GitHub. Any existing teams or group members not authenticating to the organization or enterprise account using SSO may lose access to repositories. Any existing teams or group members not in the connected IdP group may potentially lose access to repositories.

A removed team member can be added back to a team automatically once they have authenticated to the organization or enterprise account using SSO and are moved to the connected IdP group.

To avoid unintentionally removing team members, we recommend enforcing SAML SSO in your organization or enterprise account, creating new teams to synchronize membership data, and checking IdP group membership before synchronizing existing teams. 更多信息请参阅“对组织实施 SAML 单点登录”。

If your organization is owned by an enterprise account, enabling team sync for the enterprise account will override your organization-level team synchronization settings. For more information, see "Enforcing security settings in your enterprise account."

启用团队同步

要为 GitHub Enterprise Cloud 组织启用团队同步,您必须:

您的 Azure AD 安装需要以下权限:

  • 读取所有用户的完整个人资料
  • 登录和读取用户个人资料
  • 读取目录数据
  1. 在 GitHub 的右上角,单击您的个人资料照片,然后单击 Your profile(您的个人资料)

    个人资料照片

  2. 在您的个人资料页面左侧的“Organizations(组织)”下,单击组织的图标。

    组织图标

  3. 在组织名称下,单击 Settings(设置)

    组织设置按钮

  4. 在组织设置侧边栏中,单击 Security(安全)

    安全设置

  5. 确认 SAML SSO 已启用。 更多信息请参阅“管理组织的 SAML 单点登录”。

  6. 在“Team synchronization(团队同步)”下,单击 Enable for your identity provider(为您的身份提供程序启用)

    安全设置页面上的启用团队同步按钮

  7. 要确认团队同步:

    • 如果您有 IdP 访问权限,则单击 Enable team synchronization(启用团队同步)。 您将被重定向到身份提供程序的 SAML SSO 页面,并要求选择您的帐户和查看请求的权限。
    • 如果您没有 IdP 访问权限,请复制 IdP 重定向链接并将其与您的 IdP 管理员共享以继续启用团队同步。
      启用团队同步重定向按钮
  8. 查看要与组织连接的身份提供程序租户信息,然后单击 Approve(批准)

    启用特定 IdP 租户团队同步且含有批准或取消请求选项的待处理请求

You can also enable team synchronization for organizations in your enterprise account. For more information, see "Enforcing security settings in your enterprise account."

Team maintainers, organization owners, and enterprise owners can connect a team to an IdP group through team settings on GitHub or through the API. For more information, see "Creating a team and connecting it to an IdP group," "Changing a team’s connected IdP groups," or "Team synchronization" on GitHub 开发者文档.

创建团队并将其连接到 IdP 组

After you enable team synchronization, you can create a team and connect it to an IdP group if you:

You can connect up to five IdP groups to a GitHub team, and an IdP group can be assigned to multiple GitHub teams without restriction.

父团队无法与 IdP 组同步,因此您的新团队可以是子团队,但不能是父团队。 更多信息请参阅“关于团队”。

  1. 在 GitHub 的右上角,单击您的个人资料照片,然后单击 Your profile(您的个人资料)

    个人资料照片

  2. 在您的个人资料页面左侧的“Organizations(组织)”下,单击组织的图标。

    组织图标

  3. 在组织名称下,单击 Settings(设置)

    组织设置按钮

  4. 在组织名称下,单击 Teams(团队)

    团队选项卡

  5. 在 Teams(团队)选项卡的右侧,单击 New team(新团队)

    新团队按钮

  6. 在“Create new team(创建新团队)”下,输入新团队的名称。

    团队名称字段

  7. (可选)在“Description(描述)”字段中输入团队的描述。

    团队描述字段

  8. 在身份提供程序名称下,使用下拉菜单或前缀搜索(使用组名称的前三个字母)选择 IdP 组。

    将团队连接到 IdP 组可能会删除一些团队成员。 更多信息请参阅“已同步团队成员的要求”。

    显示 IdP 组搜索结果的下拉菜单

  9. 决定团队是可见还是机密。

    可见性选项,包括可见和机密

  10. 单击 Create team(创建团队)

要选择希望团队成员默认拥有访问权限的组织仓库,请参阅“管理团队对组织仓库的访问”。已连接的 IdP 组自动拥有这些仓库的访问权限。

GitHub 团队同步自动程序会将成员从连接的 IdP 组自动添加到 GitHub 团队。

更改团队连接的 IdP 组

启用团队同步后,以下情况时您可创建团队并将其连接到 IdP 组:

GitHub 团队连接到 IdP 组后,您的 IdP 管理员必须通过 IdP 进行团队成员资格更改。

您无法将 IdP 组连接到父 GitHub 团队,但可以连接到子团队。 更多信息请参阅“关于团队”。我们建议创建新团队或删除使您的团队成为父团队的嵌套关系。 更多信息请参阅“在组织的层次结构中移动团队”或“创建团队并将其连接到 IdP 组”。

You can connect up to five IdP groups to a GitHub team, and an IdP group can be assigned to multiple GitHub teams without restriction.

  1. 在 GitHub 的右上角,单击您的个人资料照片,然后单击 Your profile(您的个人资料)

    个人资料照片

  2. 在您的个人资料页面左侧的“Organizations(组织)”下,单击组织的图标。

    组织图标

  3. 在组织名称下,单击 Settings(设置)

    组织设置按钮

  4. 在组织名称下,单击 Teams(团队)

    组织页面上的团队选项卡

  5. 选择您要更改已连接 IdP 组的团队。

    选择了两个团队的团队列表

  6. (可选)为避免无意中删除团队成员,请访问您的身份提供程序的管理门户,并确认每个当前团队成员同时位于您要连接到此团队的身份组中。 如果您没有身份提供程序的这一访问权限,在可以联系 IdP 管理员。

  7. 在身份提供程序名称下,使用下拉菜单或前缀搜索(使用组名称的前三个字母)选择 IdP 组。

    将团队连接到 IdP 组可能会删除一些团队成员。 更多信息请参阅“已同步团队成员的要求”。

    显示 IdP 组搜索结果的下拉菜单

  8. (可选)要断开已连接的 IdP 组,在已连接 IdP 组名称右侧,单击 。 通过 IdP 组分配给 GitHub 团队的任何团队成员都将从该团队删除。

    从 GitHub 团队取消选择已连接的 IdP 组

  9. 要确认,请单击 Save changes(保存更改)

要修改希望团队成员默认拥有访问权限的组织仓库,请参阅“管理团队对组织仓库的访问”。已连接的 IdP 组自动拥有这些仓库的访问权限。

禁用团队同步

禁用团队同步时,通过 IdP 组分配给 GitHub 团队的任何团队成员都将从该团队删除,并且可能无法访问仓库。

  1. 在 GitHub 的右上角,单击您的个人资料照片,然后单击 Your profile(您的个人资料)

    个人资料照片

  2. 在您的个人资料页面左侧的“Organizations(组织)”下,单击组织的图标。

    组织图标

  3. 在组织名称下,单击 Settings(设置)

    组织设置按钮

  4. 在组织设置侧边栏中,单击 Security(安全)

    安全设置

  5. 在“Team synchronization(团队同步)”下,单击 Disable team synchronization(禁用团队同步)

    禁用团队同步

问问别人

找不到要找的内容?

联系我们