Skip to main content

SAMLのシングルサインオンでの認証について

SAML シングル サインオン (SSO) を使う組織にアクセスするには、ID プロバイダー (IdP) を介して認証を行います。

SAML SSO での認証について

SAML シングル サインオン (SSO) により、GitHub Enterprise Cloud を使用する組織の所有者とエンタープライズの所有者は、リポジトリ、issue、pull request などの組織のリソースへのアクセス権を制御し、セキュリティで保護することができます。 Organization のオーナーは、GitHubで個人アカウントを SAML SSO を使用する Organization に招待できます。これにより、Organization に貢献することができ、GitHubの既存の ID とコントリビューションを保持できます。

enterprise with managed users のメンバーである場合は、プロビジョニングされ、エンタープライズによって管理された新しいアカウントを代わりに使用します。 詳細については、「GitHub アカウントの種類」を参照してください。

SAML SSO を使用する組織内のプライベート リソースにアクセスすると、GitHub によって認証のために組織の SAML IdP にリダイレクトされます。 IdP でアカウントが正常に認証されると、IdP はGitHubに戻り、Organization のリソースにアクセスできます。

次のように特定の方法でパブリック リポジトリにアクセスする場合、IdP 認証は必要ありません。

  • リポジトリの概要ページとファイルの内容を GitHub 上で表示する
  • リポジトリをフォークする
  • リポジトリのクローンなど、Git を使って読み取り操作を実行する

issue、pull request、プロジェクト、リリースの閲覧など、パブリック リポジトリへのその他のアクセスには認証が必要です。

注: SAML 認証は、外部コラボレーターにも必要ありません。 外部コラボレーターの詳細については、「Organization のロール」を参照してください。

最近ブラウザで Organization の SAML IdP が認証された場合、SAML SSO を使う GitHub の Organization へのアクセスは自動的に認可されます。 最近ブラウザで Organization の SAML IdP が認証されていない場合は、Organization にアクセスする前に SAML IdP で認証を受ける必要があります。

You must periodically authenticate with your SAML IdP to authenticate and gain access to the organization's resources on GitHub.com. The duration of this login period is specified by your IdP and is generally 24 hours. This periodic login requirement limits the length of access and requires you to re-identify yourself to continue. You can view and manage your active SAML sessions in your security settings. For more information, see "Viewing and managing your active SAML sessions."

リンクされた SAML ID

IdP アカウントで認証を行い、GitHub に戻ると、GitHub は、GitHub 個人アカウントとサインインした SAML ID の間の組織またはエンタープライズ内のリンクを記録します。 このリンク ID は、その組織のメンバーシップを検証するために使用されます。また、組織またはエンタープライズの設定に応じて、あなたがどの組織やチームのメンバーになっているかを判断するためにも使用されます。 各 GitHub アカウントは、組織ごとに 1 つの SAML ID にリンクできます。 同様に、各 SAML ID は、組織内の 1 つの GitHub アカウントにリンクできます。

別の GitHub アカウントに既にリンクされている SAML ID でサインインすると、その SAML ID でサインインできないことを示すエラー メッセージが表示されます。 この状況は、組織内で新しい GitHub アカウントを使用しようとしている場合に発生する可能性があります。 その GitHub アカウントでその SAML ID を使用しない場合は、その SAML ID からサインアウトしてから、SAML ログインを繰り返す必要があります。 その SAML ID を GitHub アカウントで使用する場合は、新しいアカウントにリンクできるように、古いアカウントから SAML ID のリンクを解除するように管理者に依頼する必要があります。 組織またはエンタープライズの設定によっては、管理者が SAML プロバイダー内で ID を再割り当てする必要がある場合もあります。 詳細については、「Organization へのメンバーの SAML アクセスの表示と管理」を参照してください。

サインインする SAML ID が、現在 GitHub アカウントにリンクされている SAML ID と一致しない場合は、アカウントを再リンクしようとしているという警告が表示されます。 SAML ID はアクセスとチーム メンバーシップを管理するために使用されるため、新しい SAML ID を使用して続けると、GitHub 内のチームや組織にアクセスできなくなる可能性があります。 今後、その新しい SAML ID を認証に使用することがわかっている場合にのみ続けます。

SAML SSO を使った personal access token と SSH キーの認可

SAML SSO を使用する資格組織内の保護されたコンテンツにアクセスするために API またはコマンドライン上の Git を利用するには、認可された personal access token を HTTPS 経由で使うか、認可された SSH キーを使う必要があります。

personal access token または SSH キーを持っていない場合は、コマンド ラインの personal access token を作成するか、新しい SSH キーを生成することができます。 詳細については、「personal access token の作成」または「新しい SSH キーの生成と ssh-agent への追加」を参照してください。

新しい、または既存の personal access token か SSH キーを、SAML SSO を使用または要求する組織で利用するには、SAML SSO 組織で使うためにそのトークンや SSH キーを認可する必要があります。 詳細については、「SAML シングル サインオンで利用するために personal access token を承認する」または「SAML シングル サインオンで利用するために SSH キーを承認する」を参照してください。

OAuth Apps、GitHub Apps、SAML SSO について

SAML SSO を使用または要求する Organization にアクセスする OAuth App または GitHub App を認証するたびにアクティブな SAML セッションが必要です。 ブラウザーで https://github.com/orgs/ORGANIZATION-NAME/sso に移動し、アクティブな SAML セッションを作成できます。

企業または組織の所有者が Organization の SAML SSO を有効にしたか、適用した後、SAML を使用して初めて認証した後、以前に Organization へのアクセスを許可した OAuth Apps または GitHub Apps を再認証する必要があります。

認証した OAuth Apps を表示するには、OAuth Apps ページにアクセスします。 認証した GitHub Apps を表示するには、GitHub Apps ページにアクセスします。

参考資料