🐱

【突然GitHubにpushできなくなった】 トークン生成で解決:The requested URL returned error: 403

2021/07/28に公開
2

はじめに

きっと同じことで困っている人がいるはず。
WEBエンジニア1年目のゆりと申します。

開発をしてた際、いつも通りGitHubにpushしたら突然エラーが(°_°)!!

ターミナル
mypc@my-mac project % git push origin main
remote: Password authentication is temporarily disabled as part of a brownout. Please use a personal access token instead.
remote: Please see https://github.blog/2020-07-30-token-authentication-requirements-for-api-and-git-operations/ for more information.
fatal: unable to access 'https://github.com/ユーザー名/リポジトリ名.git/': The requested URL returned error: 403

ツイッターで様子を見ても、誰も騒いでなくて全体のサーバーエラーじゃないっぽい。
昨日までpushできたよ?!なんで?!と思い、エラー解決の調査を始めました。

エラー文にこれ参照してねと親切にURLを貼ってくれてました。

ターミナル
remote: Please see https://github.blog/2020-07-30-token-authentication-
requirements-for-api-and-git-operations/ for more information.

参照URL:https://github.blog/2020-07-30-token-authentication-requirements-for-api-and-git-operations/

原因:今まではローカルでGitHubにアクセスするにパスワード認証を使用しておりましたが、脆弱性防止のために個人アクセストークン認証に変更になったそうです。(2021年8月13日にパスワード認証が廃止されます)

パスワードでローカルとGitHubをつなげていた私のパソコンは強制的にアクセスできないようになってしまったわけです。(完全廃止に向けて準備が始まったんですかね。。)

■環境

Gitバージョン エディタ OS
2.30.0 Visual Studio Code MacOSCatalina 10.15.7

■GitHubの個人アクセストークン作成方法

①GitHubで個人アクセストークンを生成する方法する(こちらの記事では割愛します)

↓こちらにGitHubで個人アクセストークンを生成するまでの手順が記載されています。
確認しながら進めてください。
https://docs.github.com/ja/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token

個人アクセストークンが生成できると下記の画面になります。

■GitHubとローカルの連携

①キーチェーンアクセスを起動、今までアクセスしていたGitHubへの認証情報を削除する

現在、パスワード認証でGitHubとローカルを繋いでいる状態にあるため、
Macメニューの「キーチェーン」から認証情報を削除します。

※こちらはMacの挙動です。Windowsの方ごめんなさい。。

②「github.com」を探し、右クリックして認証情報削除

③ターミナルに移動し、再度GitHubとローカルをアクセス認証させる

・ユーザー名を登録

ターミナル
$ git config --global user.name GitHubに登録のユーザー名

・メールアドレスを登録

ターミナル
$ git config --global user.email GitHubに登録のメールアドレス

・GitHubにプッシュする

ターミナル
$ git push origin main

・パスワード入力が求められるので、①で控えた個人アクセストークンを入力


↓これ

ターミナル
mypc@my-mac src % git push origin main
Enumerating objects: 29, done.
Counting objects: 100% (29/29), done.
Delta compression using up to 8 threads
Compressing objects: 100% (14/14), done.
Writing objects: 100% (16/16), 2.38 KiB | 1.19 MiB/s, done.
Total 16 (delta 7), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (7/7), completed with 7 local objects.
remote: 
remote: Create a pull request for 'main' on GitHub by visiting:
remote:  https://github.com/ユーザー名/src/pull/new/main
remote: 
To https://github.com/ユーザー名/リポジトリ.git
 * [new branch]      main -> main

プッシュできました〜!
プログラミング初心者記事なのでもし相違点あったらコメントいただけたらと思います。

最後までお読みいただきありがとうございました!

参考サイト:
https://docs.github.com/ja/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token
https://stackoverflow.com/questions/68191392/password-authentication-is-temporarily-disabled-as-part-of-a-brownout-please-us
https://github.blog/2020-07-30-token-authentication-requirements-for-api-and-git-operations/

Discussion

バビバビ

ありがとうございます。こちらの記事のおかげで解決できました。

相違点があったので、コメントさせて頂きます。

ターミナルでの「メールアドレスを登録」に関してですが、

$ git config --global user.name GitHubに登録のメールアドレス
ではなく、
$ git config --global user.email GitHubに登録のメールアドレス

ではないかと思います。

ゆりゆり

バビさん、この記事で解決できたとのことでお力になれて大変嬉しく思います。

訂正のコメントご指摘いただきありがとうございます。
助かりました。修正いたしました。