8
5

More than 1 year has passed since last update.

Githubの認証をパスワードから Personal Access Token に切り替える

Posted at

2021年8月13日から、パスワードを用いたGithubへの認証がセキュリティ上の理由から廃止されました。
今までコマンドラインからGithubにアクセスする際にパスワード認証をしていた場合は、それが使えなくなり、代わりに Personal Access Token(個人アクセストークン)を用いた認証かSSH認証に切り替える必要があります。
https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/

以下は、personal access token を用いた認証手順です。

トークンの発行

初めに https://github.com/settings/tokens からトークンを発行します。一般的なgit操作(clone・pull・push等)の場合、権限はrepoにチェックが入っていれば十分です。
以降はここで発行したトークンを使います。発行画面を閉じると一切中身が見れなくなるので、忘れずにコピーしておきましょう。

対話的にアクセスする場合

コマンドラインから対話的にアクセスする場合、公式のドキュメントにあるように、Passwordを従来のものからトークンに置き換えれば良いです。

$ git clone https://github.com/username/repository_name.git
Username: your_username
Password: your_token

非対話的にアクセスする場合

非対話的にアクセスする場合、URLにトークンを埋め込みます。
新規にcloneする場合は、次のようにします。

git clone https://{your_token}@github.com/username/repository_name.git

既にcloneしてあるローカルリポジトリを更新する場合は、次のようにリモートリポジトリのURLを更新します。

$ git remote remove origin
$ git remote add origin https://{your_token}@github.com/username/repository_name.git
# 後は普通に操作ができる
$ git pull origin master

SSH認証との比較

SSH認証との比較ですが、personal access tokenの方がトークン管理が楽なのと(sshキーと違ってトークンをローカルで生成・管理する必要がない)、細かい権限設定が可能なので、personal access tokenを用いる方が優れていると自分は思います。

8
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
5