LoginSignup
6
5

More than 1 year has passed since last update.

git pushで急に403エラーが出た

Posted at

見慣れないエラー

2021年6月30日。昨日まではちゃんとpushできていたのに、急にpushでエラーが出るようになった。GitHubがダウンしたのかと思ってTwitterを見ても、誰もそんなことは言っていない。

エラーメッセージ

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 'reponame': The requested URL returned error: 403

解決方法

PCに保存されている資格情報を削除して、GitHubのPersonal Access Tokenでログインし直す。

解説

もうパスワードは使えない

まず前提として、GitHubへのpushやpullがパスワードで認証できなくなるということが公式で発表されている(参考)。これは2021年8月13日から実施される。

今回のエラーはこれが原因である。確かに自分はGit pushをパスワードで認証していた。少しフライングだったのは謎だが、もうパスワード認証は受け付けてくれないということだ。ではどのように認証すればいいのかというと、TokenSSH Keyを使う必要がある。
Tokenの取得方法はこの記事に詳しく説明されている。

Tokenを登録するには

しかし、取得したTokenはどのように登録すればいいのかが探しても見つからなかった。既存のリポジトリで新しくTokenを登録するにはどうしたらいいのか?答えは、PCの資格情報の削除だった。

そもそも、今までgit pushをパスワード認証なしでできていたのは、Windwosであれば資格情報マネージャー、Macであればキーチェーンがパスワードを保存してくれていたからだ。あまりに当然すぎて忘れてしまっていたが、これらに深く感謝してGitHubの認証情報を削除することで、次回以降のpushでは認証を求められることになる。この時に、TokenかSSH keyを選べるので、Tokenを選んで認証すれば成功となる。

まとめ

今までパスワード認証だった人がToken認証にする場合は、資格情報マネージャー/キーチェーンからパスワードを消しましょう。

6
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
6
5