Skip to main content

Enterprise 向けの SAML シングルサインオンを設定する

ID プロバイダー (IdP) を介して SAML シングル サインオン (SSO) を実施すると、エンタープライズの組織内のリポジトリ、問題、pull request などのリソースへのアクセスを管理して保護できます。

この機能を使用できるユーザーについて

Enterprise owners can configure SAML SSO for an enterprise on GitHub Enterprise Cloud.

この記事の手順に従う前に、企業が個人用アカウントを使用していることを確認してください。 これには、エンタープライズ ビューの画面上部に [アカウント名で管理されているユーザー] ヘッダー バーが表示されているかを確認します。

これが表示される場合、企業でマネージドユーザーを使用しているため、別のプロセスに従って SAML シングル サインオンを構成する必要があります。 「Enterprise マネージド ユーザーの SAML シングル サインオンの構成」をご覧ください。

SAML SSO について

SAML シングル サインオン (SSO) により、GitHub Enterprise Cloud を使用する組織の所有者とエンタープライズの所有者は、リポジトリ、issue、pull request などの組織のリソースへのアクセス権を制御し、セキュリティで保護することができます。

SAML SSO を構成する場合、組織のメンバーは引き続き GitHub.com で個人アカウントにサインインします。 組織内のほとんどのリソースは、メンバーがアクセスすると、GitHub によってメンバーは IdP にリダイレクトされ、認証を受けます。 認証に成功すると、IdP はメンバーを GitHub にリダイレクトして戻します。 詳しくは、「SAMLのシングルサインオンでの認証について」を参照してください。

注: SAML SSO は、GitHub の通常のサインイン プロセスに代わるものではありません。 Enterprise Managed Users を使用する場合を除き、メンバーは GitHub.com で引き続き個人アカウントにサインインし、各個人アカウントは IdP で外部 ID にリンクされます。

詳しくは、「SAML シングルサインオンを使うアイデンティティおよびアクセス管理について」を参照してください。

Enterprise のオーナーは、Enterprise アカウントが所有するすべての Organization 全体で、SAML IdP によって SAML SSO と中央での認証を有効にすることができます。 Enterprise アカウントに対して SAML SSO を有効にすると、その Enterprise アカウントによって所有されているすべての組織に対して SAML SSO が有効になります。 すべてのメンバーは、自分がメンバーである Organization にアクセスするために SAML SSO を使用して認証するよう求められ、企業のオーナーは Enterprise アカウントにアクセスする際に SAML SSO を使用して認証するよう求められます。

GitHub Enterprise Cloud 上の各組織のリソースにアクセスするには、メンバーがブラウザーでアクティブな SAML セッションを持っている必要があります。 API と Git を使用して各組織の保護されたリソースにアクセスするには、メンバーが組織での使用を承認した personal access token または SSH キーを使用する必要があります。 Enterprise 所有者は、メンバーの リンク ID、アクティブ セッション、または承認された資格情報 をいつでも表示および取り消すことができます。 詳しくは、「Enterprise へのユーザの SAML アクセスの表示および管理」を参照してください。

注: ユーザーのアカウントが Enterprise Managed Users 用に作成されたものでない場合、ユーザーはエンタープライズ アカウントに SCIM を構成できません。 詳しくは、「Enterprise Managed Users について」を参照してください。

Enterprise Managed Users を使っていなくて、SCIM プロビジョニングを使いたい場合は、エンタープライズ レベルではなく、組織レベルで SAML SSO を構成する必要があります。 詳しくは、「SAML シングルサインオンを使うアイデンティティおよびアクセス管理について」を参照してください。

SAML SSO が無効になっているとき、リンクされているすべての外部 ID が GitHub Enterprise Cloud から削除されます。

SAML SSO を有効にした後、OAuth app と GitHub App の認可を取り消して再承認してからでないと、組織にアクセスできない場合があります。 詳しくは、「OAuth アプリの承認」を参照してください。

サポートされているアイデンティティプロバイダ

GitHub Enterprise Cloud は、SAML2.0 標準を実装し IdP を使用した SAML SSO をサポートします。 詳細については、OASIS の Web サイトの SAML Wiki を参照してください。

GitHub は、次の IdP を正式にサポートし、内部的にテストします。

  • Microsoft Active Directory フェデレーション サービス (AD FS)
  • Microsoft Entra ID (旧称 Azure AD)
  • Okta
  • OneLogin
  • PingOne
  • Shibboleth

Microsoft Entra ID (旧称 Azure AD) をエンタープライズに接続する方法の詳細については、Microsoft Docs の「チュートリアル: Microsoft Entra SSO と GitHub Enterprise Cloud - Enterprise アカウントの統合」を参照してください。

Enterprise アカウントで Organization の SAML シングルサインオンを適用する

Enterprise に SAML SSO を適用すると、Enterprise 構成によって既存の Organization レベルの SAML 構成がオーバーライドされます。 エンタープライズ アカウントが所有する組織のいずれかが SAML SSO を使用するように既に構成されている場合、エンタープライズ アカウントに対して SAML SSO を有効にするときに特別な考慮事項があります。 詳細については、「組織からエンタープライズ アカウントへの SAML 構成の切り替え」を参照してください。

Organization に SAML SSO を適用すると、GitHub では、SAML IdP で正常に認証されていない Organization のメンバーがすべて削除されます。 Enterprise に SAML SSO を必要とする場合、GitHub では、SAML IdP で正常に認証されていない Enterprise のメンバーは削除されません。 次にメンバーが Enterprise のリソースにアクセスするときに、そのメンバーは SAML IdP で認証する必要があります。

Okta を使用して SAML を有効にする方法の詳細については、「Okta を使用して Enterprise 向けの SAML シングル サインオンを設定する」を参照してください。

  1. GitHub の右上隅にあるプロフィール写真をクリックします。

  2. ご自分の環境に応じて、[Your enterprise] または [Your enterprises] をクリックし、表示するエンタープライズをクリックします。

  3. ページの左側にある Enterprise アカウントのサイドバーで、 [設定] をクリックします。

  4. [設定] で、 [認証セキュリティ] をクリックします。

  5. 必要に応じて、設定を変更する前に Enterprise アカウントのすべての Organization の現在の構成を確認するには、 [Organization の現在の構成を表示する] をクリックします。

    Enterprise 設定のポリシーのスクリーンショット。 [Organization の現在の構成を表示する] というラベルの付いたリンクが、オレンジ色の枠線で強調表示されています。

  6. [SAML シングル サインオン] で、 [Require SAML authentication](SAML 認証が必要) を選択します。

  7. [サインオン URL] フィールドにシングルサインオンのリクエスト用の IdP の HTTPS エンドポイントを入力します。 この値は Idp の設定で使用できます。

  8. 必要に応じて、 [発行者] フィールドに SAML 発行者の URL を入力して、送信されたメッセージの信頼性を確認します。

  9. [公開証明書] の下で証明書を貼り付けて SAML の応答を検証します。 これは、SAML 応答の署名に使用される秘密キーに対応する公開キーです。

    認定資格証を検索するには、IdP のドキュメントを参照してください。 一部の IdP では、これを X.509 証明書と呼びます。

  10. 公開証明書で、現在のシグネチャ メソッドとダイジェスト メソッドの右側にある をクリックします。

    SAML 設定の現在のシグネチャ メソッドとダイジェスト メソッドのスクリーンショット。 鉛筆アイコンがオレンジ色の枠線で強調表示されています。

  11. [シグネチャ メソッド][ダイジェスト メソッド] のドロップダウン メニューを選び、SAML 発行者が使っているハッシュ アルゴリズムをクリックします。

  12. Enterprise で SAML SSO を有効化する前に、 [Test SAML configuration](SAML 構成のテスト) をクリックして、入力した情報が正しいか確認します。 このテストではサービス プロバイダーによって開始される (SP によって開始される) 認証が使われ、SAML 設定を保存するにはこれに成功する必要があります。

  13. [保存] をクリックします。

  14. 将来的に ID プロバイダーが利用できなくなった場合でも エンタープライズ GitHub にアクセスできるように、[ダウンロード][印刷]、または [コピー] をクリックして回復コードを保存してください。 詳しくは、「エンタープライズ アカウントのシングル サインオンの回復コードをダウンロードする」を参照してください。

参考資料