Skip to main content

SAML シングルサインオンを使うアイデンティティおよびアクセス管理について

ユーザのアイデンティティとアプリケーションをアイデンティティプロバイダ (IdP) で集中管理する場合、Security Assertion Markup Language (SAML) シングルサインオン (SSO) を設定して GitHub での Organization のリソースを保護することができます。

Note: If your enterprise uses Entepriseで管理されているユーザ, you must follow a different process to configure SAML single sign-on. For more information, see "Configuring SAML single sign-on for Enterprise Managed Users."

SAML SSO について

SAML single sign-on (SSO) gives organization owners and enterprise owners using GitHub Enterprise Cloud a way to control and secure access to organization resources like repositories, issues, and pull requests.

Note: To use SAML single sign-on, your organization must use GitHub Enterprise Cloud. For more information about how you can try GitHub Enterprise Cloud for free, see "Setting up a trial of GitHub Enterprise Cloud."

If you configure SAML SSO, members of your organization will continue to log into their personal accounts on GitHub.com. When a member accesses non-public resources within your organization that uses SAML SSO, GitHub redirects the member to your IdP to authenticate. 認証に成功すると、IdP はメンバーを GitHub にリダイレクトして戻し、そこでメンバーは Organization のリソースにアクセスできます。

Note: Organization members can perform read operations such as viewing, cloning, and forking on public resources owned by your organization even without a valid SAML session.

Organization のオーナーは、個々の Organization に SAML SSO を適用できます。または、Enterprise のオーナーは、Enterprise アカウント内のすべての Organization に SAML SSO を適用できます。 詳しい情報については、「Enterprise 向けのSAML シングルサインオンを設定する」を参照してください。

Note: 外部のコラボレータは、SAML SSOを使っているOrganization内のリソースにアクセスするために、IdPでの認証を受ける必要はありません。 For more information on outside collaborators, see "Roles in an organization."

Organization で SAML SSO を有効化する前に、IdP を Organization に接続する必要があります。 詳細は「アイデンティティプロバイダを Organization に接続する」を参照してください。

1 つの Organization に対して、SAML SSO は無効化、強制なしの有効化、強制ありの有効化ができます。 Organization に対して SAML SSO を有効にし、Organization のメンバーが IdP での認証に成功した後、SAML SSO 設定を強制できます。 GitHub Organization に対して SAML SSO を強制する方法については、「Organization で SAML シングルサインオンを施行する」を参照してください。

認証を受けて Organization のリソースにアクセスするために、メンバーは定期的に IdP の認証を受ける必要があります。 このログイン間隔は利用しているアイデンティティプロバイダ (IdP) によって指定されますが、一般的には 24 時間です。 このように定期的にログインしなければならないことから、アクセスの長さには制限があり、ユーザがアクセスを続行するには再認証が必要になります。

コマンドラインで API と Git を使用して、Organization の保護されているリソースにアクセスするには、メンバーが個人アクセストークンまたは SSH キーで認可および認証を受ける必要があります。 詳しい情報については、「SAMLシングルサインオンで利用するために個人アクセストークンを認可する」と、「SAML シングルサインオンで使用するために SSH キーを認可する」を参照してください。

Organizationへのアクセスにメンバーが初めてSAML SSOを使うとき、GitHubは自動的にOrganizaton、GitHub.com上のメンバーアカウント、IdP上のメンバーアカウントをリンクさせるレコードを作成します。 Organization または Enterprise アカウントのメンバーについて、リンクされた SAML アイデンティティ、アクティブセッション、認可されたクレデンシャルの表示と取り消しが可能です。 詳細は、「Organization へのメンバーの SAML アクセスの表示と管理」と「Enterprise アカウントへのユーザの SAML アクセスの表示および管理」を参照してください。

新しいリポジトリを作成するときにメンバーが SAML SSO セッションでサインインする場合、そのリポジトリのデフォルトの可視性はプライベートになります。 それ以外の場合、デフォルトの可視性はパブリックです。 リポジトリの可視性に関する詳しい情報については「リポジトリについて」を参照してください。

OAuth Appを認可するために、Organization メンバーにはアクティブな SAML セッションが必要です。 GitHub Support に連絡すれば、この要件をオプトアウトできます。 ただし、この要件をオプトアウトすることを GitHub Enterprise Cloud はお勧めしません。Organization でアカウント乗っ取りやデータ漏えいのリスクが高くなるからです。

GitHub Enterprise CloudはSAMLシングルログアウトをサポートしていません。 アクティブなSAMLセッションを終了させるには、ユーザーは直接SAML IdPでログアウトしなければなりません。

サポートされているSAMLサービス

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

GitHub officially supports and internally tests the following IdPs.

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

一部の IdPは、SCIM を介した GitHub Organization へのプロビジョニングアクセスをサポートしています。 詳しい情報については、「OrganizationのSCIMについて」を参照してください。

You cannot use this implementation of SCIM with an enterprise account or with an 管理されたユーザを持つOrganization. If your enterprise is enabled for Entepriseで管理されているユーザ, you must use a different implementation of SCIM. Otherwise, SCIM is not available at the enterprise level. For more information, see "Configuring SCIM provisioning for Entepriseで管理されているユーザ."

SAML SSO で Organization にメンバーを追加する

SAML SSO を有効化後、Organization に新しいメンバーを追加する方法はいくつかあります。 Organization のオーナーは、GitHub Enterprise Cloud で手作業または API を使って、新しいメンバーを招待できます。 詳細は {} の「Organization に参加するようユーザを招待する」および「メンバー」を参照してください。

新しいユーザを、Organization のオーナーから招待せずにプロビジョニングするには、https://github.com/orgs/ORGANIZATION/sso/sign_up の URL の ORGANIZATION をあなたの Organization 名に置き換えてアクセスします。 たとえば、あなたの IdP にアクセスできる人なら誰でも、IdP のダッシュボードにあるリンクをクリックして、あなたの GitHub Organization に参加できるよう、IdP を設定できます。

IdP が SCIM をサポートしている場合、GitHub は、IdP でアクセス権限が付与されたとき Organization に参加するよう自動的にメンバーを招待できます。 SAML IdP での メンバーの GitHub Organization へのアクセス権限を削除すると、そのメンバーは GitHub Organization から自動的に削除されます。 詳しい情報については、「OrganizationのSCIMについて」を参照してください。

You can use team synchronization to automatically add and remove organization members to teams through an identity provider. For more information, see "Synchronizing a team with an identity provider group."

GitHub Enterprise CloudはSAMLシングルログアウトをサポートしていません。 アクティブなSAMLセッションを終了させるには、ユーザーは直接SAML IdPでログアウトしなければなりません。

参考リンク