AWS API Gatewayの証明書更新手順と注意すること
手順は簡単でAPI Gatewayのドキュメントに記載されている通りなのですが
もしかしてこのボタンを押したら直ぐに切り替わってしまうのかな(AWSでそんな事は無いハズ)…と少し不安になりましたので、実際に独自ドメインの証明書をアップロードした手順をキャプチャ付きで注意点と共に記載します。
なお、本記事は以下に該当する方が閲覧することを想定して記載しています。
(今回は更新を記載していますが、独自ドメイン証明書を新たに設定する際にも基本的な手順は同じです)
- API Gatewayを独自ドメインで使おうとしている(既に使っている)方
証明書の更新時に必要な物は以下の通りです。
- サーバ証明書
- 秘密鍵(※1)
- 中間CA証明書
(※1) 秘密鍵 はパスワード又はパスフレーズで保護されていないもの(非暗号化)を使用しなければアップロードすることが出来ないので注意してください。(セキュリティ的には、あまり良くはないですが仕様です)
1.アップロード対象の独自ドメインを選択
「AWSコンソール」→「API Gateway」→「カスタムドメイン名」→「[設定済みの独自ドメイン]」→「バックアップ証明書」の欄にある「アップロード」を選択
2.更新を行う証明書をアップロード
証明書の名前は既に設定済みの名前と重複しない適当な文字を入力し、以下の情報を貼り付け保存ボタンを押下します。
証明書本文 | → サーバ証明書 |
---|---|
証明書のプライベートキー | → 秘密鍵 |
証明書チェーン | → 中間CA証明書 |
3.証明書の設置完了(更新待機)
アップロードが終わると「更新」ボタンを押下するよう促されますので、そのまま「更新」ボタンを押下します。
※ この時点では先ほどアップロードした証明書に切り替わっていません。
4.証明書の切り替え確認
「更新」ボタンを押下すると以下のウィンドウが表示されます。
問題が無ければ「OK」ボタンを押下します。
※ CloudFrontと同じ仕組みで動いているため更新には同じくらいの時間を要するようです。
5.証明書更新中
証明書の更新中は以下のように表示されます。
(私の環境では更新が終わるまでに30分弱の時間がかかりました)
最後に
更新の時間は早ければ10分程度で証明書が切り替わっていることを確認出来るので 更新中はブラウザや、以下のツールを使って確認すると良いと思います。
(もし間違っていても更新が終わるまで何も出来ませんが)
また、反映までに時間が必要なので
事故を防ぐためワイルドカードで証明書を取得しておいて検証用のドメインをCloudFrontにアップロードし、証明書が正しいことを確認した後に同じ証明書でAPI Gatewayに設定するなど、運用を行う際にはひと手間加えることでサービスへの影響を最小限に抑えて設定を行ってください。