はじめに
Certificate Managerはサービス終了することが発表されており、後継としてSecrets Managerの利用が推奨されています。
これまでALB(Application Load Balancer)でHTTPSを終端する場合にはCertificate Managerでインポートした証明書を指定していましたが、今後はSecrets Managerでインポートした証明書へ変更する必要があります。
ALBでHTTPS用のFrontend Listnerを作成しようとすると下記画面が表示されます。
CISで発行した起点証明書(Origin Certificate)をSecrets Managerにインポートし、
ALBのHTTPS用Frontend Listenerに設定してみました。
Secrets Managerへのインポート
CISでの起点証明書発行
CISでの起点証明書発行手順は省略します。
cis-origin-cert.pem: 起点証明書
cis-origin-key.pem : 起点証明書秘密鍵
シークレット・グループの作成
必要に応じてアクセス権限を設定
シークレットの作成
Secrets Manager > シークレット > 追加 > TLS証明書 > 証明書のインポート
VPC Loadbalancerに対してSecrets Managerへのアクセス権限付与
ソース・サービスで VPC Infrastructure Services
選択された属性に基づくリソースのリソース・タイプで Load Balancer for VPC
を選択すると、ターゲット・サービスに Secrets Manger が選択できる
サービス・アクセスには、リーダーとライターを選択する。
(選択しなければALBでの選択時に権限不足のエラーが表示される)
アクセス権限を付与せずにALBのFrontend ListnerでSecrets Managerの証明書を選択すると、以下のエラーが表示される
ALBのHTTPS用Frontend Listenerにインポートした証明書を設定
フロントエンド・リスナー > リスナーの作成
プロトコル: HTTPS
証明書ソース: Secrets Manger
秘密鍵管理者: Secrets MAanagerのインスタンス名
SSL 証明書: Secrets managerで作成したシークレット名
動作確認
ALBにて適切なSecurity Group(HTTPS用Portの許可)の設定を行うことが前提
直接ALBのIPにHTTPSでアクセスし、利用されているサーバ証明書がCIS(CloudFlare)発行であることを確認した。
参考
IBM Cloud:Secrets Managerの概要
https://qiita.com/takason/items/3860854b54e0dd4550d7
IBM Cloud: Secrets ManagerとCertificate Managerの機能比較
https://qiita.com/takason/items/51cb67e46fa24b6ab2c0
クライアントとサイト間の認証のセットアップ
https://cloud.ibm.com/docs/vpc?topic=vpc-client-to-site-authentication#creating-iam-service-to-service
10 February 2022 Deprecation of the Certificate Manager service
https://cloud.ibm.com/docs/certificate-manager?topic=certificate-manager-release-notes#certificate-manager-feb1022