タダです.
以前の記事で GitHub Actions の AWS 認証を OIDC provider に変更したことを書いたのですが,1/13 にこれまでうまくいっていたリリースが失敗するようになりました.そのエラーに対する対応をこの記事にまとめます.
発生した事象概要
aws-actions/configure-aws-credentials
のセクションでこれまで成功していた認証が通らなくなり Error: OpenIDConnect provider's HTTPS certificate doesn't match configured thumbprint
というメッセージが表示されていました.メッセージにも thumbprint が合致してないことが表示されたので,thumbprint が怪しそうと思って調査をしてみました.
事象の原因
Twitter で下記のツイートを見つけ関連の issue も貼っていただいていたため,解決に素早く到達できました.感謝です...やはり,thumbprint が更新されたため既存のものを変更する必要がありました.
GitHub OIDCのthumbprint変わったっぽい?https://t.co/7U8yVA4DZm
— 城陽人 (@minamijoyo) 2022年1月13日
こんなこともあろうかとthumbprintの計算方法を以前調べてた。https://t.co/5DR44X2iqr
新しいthumbprint計算できるけど、GitHubの公式のアナウンス前に新しいthumbprint無条件で追加するのはthumbprintの意味がないことに注意
参考情報
事象の解決方法
事象の解決方法は非常にシンプルです.元々の thumbprint が下記の値になっているので,6938fd4d98bab03faadb97b34396831e3780aea1
という更新した値に差し替えました.この後,リリースを回したら成功しました.
まとめ
OIDC provider の thumbprint 更新がされた場合の対応についてまとめました.GitHub は再発しないように調査を進めるとコメントがありましたが,issue の中で Terraform で管理する場合の例を共有してくださっていたのですが,今後も付き合っていく上ではやり方を検討していく必要がありそうです.