Skip to main content
Skip to content
REST API はバージョン化されました。 詳細については、「API のバージョン管理について」を参照してください。

SCIM の REST API エンドポイント

REST API を使って、SCIM でのユーザー作成とチーム メンバーシップを自動化します。

メモ

  • これらのエンドポイントは、SCIM を使用してGitHub Enterprise Cloudで Enterprise のユーザー アカウントをプロビジョニングできるようにします。 この操作は、Enterprise Managed Users でのみ使用できます。 Enterprise Managed Users を使わず、SCIM を使って organization へのアクセスをプロビジョニングする場合は、「SCIM の REST API エンドポイント」を参照してください。
  • GitHub では、IdP と GitHub 上の運用データから分離された環境でプロビジョニングをテストすることをお勧めします。

SCIM の概要

GitHub で Enterprise メンバーのユーザー アカウントを作成、管理、非アクティブ化するには、IdP が GitHub とのコミュニケーション用に SCIM を できる場合があります。 SCIM は、システム間のユーザー ID を管理するためのオープン仕様です。 IDP が異なると、SCIM プロビジョニングの構成に異なるエクスペリエンスが提供されます。 既存の統合でパートナー IdP を使用しない場合は、次の API エンドポイントを使用して統合できます。 詳しくは、「REST API を使用した SCIM でユーザーとグループのプロビジョニング」をご覧ください。

ベース URL

SCIM を使用して Enterprise のユーザーとグループを管理するには、次のベース URL を使用して、このカテゴリのエンドポイントと通信します。

https://api.github.com/scim/v2/enterprises/{enterprise}/

認証

API リクエストを認証するには、IdP で SCIM を設定する担当者は、personal access token (classic) スコープを持つ scim:enterprise を使用する必要があり、IdP はそれをリクエストの Authorization ヘッダーで提供する必要があります。 personal access tokens (classic) の詳細については、「個人用アクセス トークンを管理する」を参照してください。

GitHub では、企業のセットアップ ユーザーとして認証することをお勧めします。 他のユーザー アカウントは SCIM を使用して作成されるため、別のユーザーとして認証すると、Enterprise からロックアウトされるなど、意図しない結果になる可能性があります。 これらの API への書き込み要求は、公開された IdP アプリケーション、または SCIM エンドポイントへの直接 API アクセスを通じて可能です。 別のエンタープライズ所有者が API から情報を読み取る必要がある場合は、personal access token (classic) スコープを持つadmin:enterpriseを使用して、現在の SCIM 実装でGET要求を行います。 詳しくは、「エンタープライズ マネージド ユーザーユーザーを管理するための SCIM プロビジョニングの構成」をご覧ください。

SAML および SCIM データのマッピング

マネージド ユーザー アカウント が SAML SSO を使用してエンタープライズへのアクセスに正常に認証された後、GitHub はそのユーザーを SCIM でプロビジョニングされた ID に関連付けます。 ID を正常にリンクするには、SAML ID プロバイダーと SCIM 統合が、一致する一意識別子を使用する必要があります。

GitHub では、次の SAML 要求と SCIM 属性が、SCIM によってプロビジョニングされた ID とユーザーと正常に一致する必要があります。 ID プロバイダーによって、ユーザーを一意に識別するために使用されるフィールドが異なる場合があります。

SAML の Microsoft Entra ID

SAML に Entra ID (旧称 Azure AD) を使用するには、次の SAML 要求と SCIM 属性が一致する必要があります。

SAML 要求一致するSCIM属性
http://schemas.microsoft.com/identity/claims/objectidentifierexternalId

SAML 用のその他の IdP

SAML に他の IdP を使用するには、次の SAML 要求と SCIM 属性が一致する必要があります。

SAML 要求一致するSCIM属性
NameIDuserName

サポートされている SCIM ユーザー属性

このカテゴリの Users エンドポイントでは、要求のパラメーター内で次の属性がサポートされています。

名前タイプ説明
displayNameString人が判読できるユーザーの名前。
name.formattedString表示用に書式設定された、すべてのミドル ネーム、役職、サフィックスを含む、ユーザーのフル ネーム。
name.givenNameStringユーザーの名。
name.familyNameStringユーザーの姓。
userNameStringSCIM プロバイダーが生成したユーザーのユーザー名。 使用する前に正規化を行います。 ユーザーごとに一意である必要があります。
emailsArrayユーザーのメールの一覧。
rolesArrayユーザーのロールの一覧。
externalIdStringこの識別子は、SCIM プロバイダーが生成します。 ユーザーごとに一意である必要があります。
idStringGitHubの SCIM エンドポイントによって生成される識別子。
activeブール値ID がアクティブである (true) か、中断する必要がある (false) かを示します。

サポートされている SCIM グループ属性

このカテゴリの Groups エンドポイントでは、要求のパラメーター内で次の属性がサポートされています。

名前タイプ説明
displayNameString人が判読できるグループの名前。
membersStringSCIM プロバイダーでグループに割り当てられているメンバーの一覧
externalIdStringこの識別子は、SCIM プロバイダーが生成します。 ユーザーごとに一意である必要があります。

List provisioned SCIM groups for an enterprise

Lists provisioned SCIM groups in an enterprise.

You can improve query search time by using the excludedAttributes query parameter with a value of members to exclude members from the response.

"List provisioned SCIM groups for an enterprise" のきめ細かいアクセス トークン

このエンドポイントは、次の粒度の細かいトークンの種類で動作します:

粒度の細かいトークンには次のアクセス許可セットが設定されている必要があります:

  • "Enterprise SCIM" enterprise permissions (read)

"List provisioned SCIM groups for an enterprise" のパラメーター

ヘッダー
名前, タイプ, 説明
accept string

Setting to application/vnd.github+json is recommended.

パスパラメーター
名前, タイプ, 説明
enterprise string 必須

The slug version of the enterprise name.

クエリ パラメーター
名前, タイプ, 説明