Skip to main content

GitHub への認証方法について

認証先に応じて異なる認証情報を使用し、GitHub AE への認証を行うことで、アカウントのリソースに安全にアクセスできます。

GitHub の認証について

アカウントを安全に保つには、GitHub AE のリソースにアクセスする前に認証する必要があります。 GitHub AE への認証を行うときは、自分が確かに本人であることを証明するために、固有の認証情報を提供または確認します。

GitHub AE のリソースには、ブラウザ内、GitHub Desktop または別のデスクトップアプリケーション経由、API 経由、またはコマンドライン経由など、さまざまな方法でアクセスできます。 GitHub AE へのアクセス方法は、それぞれ異なる認証モードをサポートしています。

  • ID プロバイダー (IdP)
  • Personal access token
  • SSH キー

ブラウザで認証する

GitHub AE への認証は、IdP を使ってブラウザー内で行うことができます。 詳細については、「SAML のシングル サインオンでの認証について」を参照してください。

GitHub Desktop で認証する

お使いのブラウザを使用して GitHub Desktop で認証できます。 詳細については、「GitHub への認証」を参照してください。

API で認証する

さまざまな方法で API を使用して認証できます。

  • Personal access token
    • テストなどの限られた状況下では、personal access token を使って API にアクセスできます。 personal access token を使って、いつでもアクセスを取り消すことができます。 詳しい情報については、「personal access tokenの作成」を参照してください。
  • Web アプリケーション フロー
  • GitHub アプリ
    • 製品としての GitHub App の場合、アプリケーションのインストールに代わって認証する必要があります。 詳細については、「GitHub Apps による認証」を参照してください。

コマンドラインで認証する

コマンドラインから GitHub AE のリポジトリにアクセスするには、HTTPS と SSH の 2 つの方法がありますが、それぞれ認証方法が異なります。 認証方法は、リポジトリのクローンを作成するときに HTTPS または SSH リモート URL を選択したかどうかに基づいて決まります。 アクセス方法の詳細については、「リモート リポジトリについて」を参照してください。

HTTPS

ファイアウォールまたはプロキシの内側からでも、HTTPS を介して GitHub AE 上のすべてのリポジトリを操作できます。

GitHub CLI で認証する場合は、personal access token または Web ブラウザーを使って認証できます。 GitHub CLI を使用した認証の詳細については、「gh auth login」を参照してください。

GitHub CLI なしで認証する場合は、personal access token で認証する必要があります。 Git からパスワードの入力するダイアログが表示されたら、personal access token を入力します。 または、Git Credential Manager などの資格情報ヘルパーを使用することもできます。詳しくは、「personal access token の作成」を参照してください。 Git を使って GitHub AE で認証するたびに、資格情報ヘルパーでキャッシュしない限り、GitHub AE で認証するための資格情報を入力するように求められます。

SSH

SSH 接続はファイアウォールとプロキシから許可されない場合がありますが、SSH 経由で GitHub AE 上のすべてのリポジトリを操作できます。

GitHub CLI で認証すると、CLI によってマシン上で SSH 公開キーが検索され、アップロード用のものを選ぶようにダイアログが表示されます。 GitHub CLI でアップロード用の SSH 公開キーが見つからない場合は、新しい SSH 公開/秘密キーペアを生成し、GitHub AE 上のアカウントに公開キーをアップロードできます。 これで、personal access token を使うか、Web ブラウザー経由で認証できるようになります。 GitHub CLI を使用した認証の詳細については、「gh auth login」を参照してください。

GitHub CLI なしで認証する場合は、ローカル コンピューターで SSH 公開/秘密キーペアを生成し、GitHub AE のアカウントに公開キーを追加する必要があります。 詳細については、「新しい SSH キーを生成して ssh-agent に追加する」を参照してください。 Git を使って GitHub AE で認証するたびに、キーを保存していない限り、SSH キー パスフレーズを入力するように求められます。

GitHub のトークンフォーマット

GitHub は、トークンの種別を示すプレフィックスで始まるトークンを発行します。

トークンの種類Prefix詳細情報
Personal access tokenghp_personal access token の作成
OAuth アクセス トークンgho_OAuth Apps の承認
GitHub App のユーザからサーバーへのトークンghu_GitHub Apps のユーザーの識別と認可
GitHub App のサーバーからサーバーへのトークンghs_GitHub Apps による認証
GitHub App のトークンのリフレッシュghr_ユーザーからサーバーへのアクセス トークンの更新