Skip to main content

OAuthアプリケーションのアクセス制限について

Organizationは、OAuth Appアクセス制限を有効化することによって、Organizationのリポジトリやその他のリソースにどのOAuth Appsがアクセスできるかを選択できます。

OAuthアプリケーションのアクセス制限について

OAuth Appのアクセス制限が有効化されると、OrganizationのメンバーはOAuth AppのOrganizationのリソースへのアクセスを認可できなくなります。 Organizationのメンバーは、使用したいOAuth Appsの承認をオーナーにリクエストでき、Organizationオーナーは保留になっているリクエストの通知を受信します。

新しい Organization を作成する際には、OAuth App アクセス制限が既定で有効です。 Organization 所有者はいつでもOAuth App アクセス制限を無効にできます。

Tip: 組織が OAuth App のアクセス制限を設定していない場合、組織のメンバーが認可したすべての OAuth App は、組織のプライベート リソースにもアクセスできます。

組織のリソースをさらに保護するために、SAML シングル サインオンのようなセキュリティ機能を備えた GitHub Enterprise Cloud にアップグレードすることができます。 GitHub Enterprise Cloud を無料で試す方法の詳細については、「GitHub Enterprise Cloud の試用版を設定する」を参照してください。

OAuth Appのアクセス制限のセットアップ

OrganizationのオーナーがOAuth Appのアクセス制限を初めてセットアップする場合、以下のようになります。

  • 組織が所有するアプリケーション には、組織のリソースへのアクセスが自動的に付与されます。
  • OAuth Apps は、組織のリソースへのアクセスを即座に失います。
  • 2014 年 2 月以前に作成された SSH キー は、組織のリソースへのアクセスを即座に失います (これにはユーザーおよびデプロイ キーが含まれます)。
  • 2014 年 2 月中、あるいはそれ以降に OAuth Apps によって作成された SSH キー は、組織のリソースへのアクセスを即座に失います。
  • プライベートの組織リポジトリからのフックの配信 は、承認されていない OAuth Apps には送信されなくなります。
  • 承認されていない OAuth Apps でのプライベートな組織のリソースへの API アクセス はできなくなります。 加えて、パブリックなOrganizationリソースの作成、更新、削除のアクションの権限はありません。
  • ユーザーが作成したフックおよび 2014 年 5 月より前に作成されたフック には影響ありません。
  • 組織が所有するリポジトリのプライベート フォーク は、組織のアクセス制限に従います。

SSHアクセスの失敗の解決

OAuth Appのアクセス制限が有効化されたOrganizationへのアクセスを2014年2月以前に作成されたSSHキーが失った場合、それ以降のSSHアクセスの試行は失敗します。 ユーザには、キーを認可できる、あるいは信頼されたキーをそこにアップロードできるURLを示すエラーメッセージが返されます。

Webhooks

OAuth Appが制限が有効化された後のOrganizationへのアクセスを許可された場合、そのOAuth Appが作成した既存のwebhookは、ディスパッチを再開します。

Organizationが以前に認可されたOAuth Appからアクセスを削除した場合、そのアプリケーションが作成した既存のwebhookはディスパッチされなくなります(それらのフックは無効化されますが、削除はされません)。

アクセス制限の再有効化

OrganizationがOAuth Appのアクセスアプリケーション制限を無効化し、後に再び有効化した場合、以前に認可されていたOAuth Appは自動的にOrganizationのリソースへのアクセスを許可されます。

参考資料