Blog

PATを使わないGitHubアクセス方法

はじめに

こんにちは。ニフティの山田です。

意外と知らない方が多そうだったので、今回はPATを使わないGitHubのアクセス方法について紹介します。

前提

GitHubではHTTP経由でのID/パスワード認証が廃止され、現在は許可されていません。
このため、git cloneなどの際にID・パスワードを入力しても弾かれてしまいます。(ブラウザと同様です)

なので、

  • HTTP
    • Personal Access Token(PAT)
    • OAuth認証
  • SSH

の3通りの接続方法から選ぶことになります。

SSHが使える環境ではSSHを使えばよいのですが、環境によってはSSHを通せず、HTTPを使用する必要がある場合もあります。

PAT

PATは古くからある方法であり、Personalの文字通り、個人に紐づくトークンを手動で発行・管理します。

  • 手動管理する鍵であり、管理の漏れや漏洩の可能性がある
  • 用途ごとに鍵を分けるのか使い回すのか…など、鍵管理を考える必要がある

というように管理負担もセキュリティリスクもあり、なるべく使いたくない選択肢です。

OAuth認証

前提で記載した2つ目の選択肢です。OAuth認証後に発行されるトークンでもGitHubへのアクセスが可能となります。

OAuthなのでブラウザが必要ですが、Git実行PCと別のPCでも問題ありません。

GitHub Desktopを使う方法

Download GitHub Desktop

インストール・起動して指示通りに進めばGitHubへOAuth認証を促されます。

GitHub Desktopがログインできている状態であればOAuthトークンが有効なので、gitコマンドでの操作でも認証が通ります。

GitHub CLIを使う方法

GitHub CLI

コマンドライン上で完結させたい場合はGitHub CLIをインストールします。

macOSであればhomebrewから

でのインストールも可能です。

インストール後

でログインできます。あとは普通にgitコマンドを叩けば完了です。

操作

途中の「Press Enter to~」でEnterを押すとブラザが開くので、ブラウザ側でログインしてコードを入力します。

なおブラウザでのコード入力を要求されますが、この操作は別マシンのブラウザで行っても問題ありません。なのでサーバ上でも問題なくログインが可能です。

制約

  • PATと異なり、有効期限がない(設定もできない)
  • PATと異なり、権限制御はできない
    • 自動化目的であればPATを使う

おわりに

今回はPATを使わないGitHubのアクセス方法について紹介しました。

この機会にPATの管理負担なども考慮して、OAuth認証でのGitHubアクセスを試してみるのはいかがでしょうか。

ニフティでは、
さまざまなプロダクトへ挑戦する
エンジニアを絶賛募集中です!
ご興味のある方は以下の採用サイトより
お気軽にご連絡ください!

ニフティに興味をお持ちの方は
キャリア登録をぜひお願いいたします!

connpassでニフティグループに
参加いただくと
イベントの
お知らせが届きます!