[AWS] 知らないアカウントIDのCloudFrontが自分のACM証明書を使っていると思ったけど違った
結論
結論から言うと API Gateway でした。ACMで発行したSSL/TLS 証明書を シームレスに他のAWSプロダクトで利用することが可能なのですが、その時に内部動作としては規定のアカウントIDでCloudFrontディストリビューションが生成され、そのディストリビューションに対して証明書が適用されるようです。
直面した問題
AWSでのシステム運用にあたり、それなりの数のドメインを運用しているのですが、基本的にはACMにて発行した証明書を利用しています。以前はメール認証しかできず、きちんと環境を整えてあげないと自動更新に失敗することもあり、DNS認証の同一ドメインの証明書を別に発行し、そちらに切り替える作業を行なっていました。
ACMで発行した証明書はAWSコンソール上から簡単にELBやCloudFrontといったAWSプロダクトに利用することが可能なのですが、証明書を削除する際には全てのインスタンス・ディストリビューションから利用を解除する必要があります。
「あとはどの子(インスタンス)が使っているのかな〜?」と確認したところ、
arn:aws:cloudfront::969236854626:distribution/ABCDEFGHIJKLMNのようなCloudFrontディストリビューションが利用していることがわかりました。
969236854626 の部分が自分のAWSアカウントIDになりますが、私が利用しているアカウントのIDは全然違います。
対策
「えっ…?」と思いましたが調べたらすぐに解決。答えはこちらに書いてありました。
エッジ最適化のカスタムドメイン名を作成する方法 - Amazon API Gateway
https://docs.aws.amazon.com/ja_jp/apigateway/latest/developerguide/how-to-edge-optimized-custom-domain-name.html
削除は以下の画面からカスタムドメインの管理画面を表示して行いました。
今回は削除というより新しい同一ドメインの証明書への切り替えですね。
「カスタムドメイン名」の部分ですね。
以上です。難易度的には初心者級というか、小ネタ的な記事かなと思いますが、重い腰をあげてブログを書くためのネタとしてはいいかなというのと、地味にまた忘れてテンパりそうだなという点もあって書いておくことにしました。
いやしかし、Skitchが一発でモザイク入れてくれたんですけど、これめっちゃ便利ですね。
コメント
コメントを投稿