まとめ
- コンソールから出来ない時はIAMの権限確認
- それでもダメならCLIからやってみる
現象
- ALBにコンソールからhttpsリスナーを追加しようとしたら"Access denied to certificate"と言われ追加出来ない
- 作成時も同じ
- インポートした証明書でもACMで発行した証明書でも同じ
権限周りの確認
- EC2, ALB, ALBv2, CertificateManager等、思いつく辺りはアクセス権限がある
- AdministratorAccessをつけてみたが結果変わらず
- つまり権限の問題ではなさそう
- (なのでAdministratorAccessはここで外しました。)
CLIからのトライ
- 同じエラーでは無いがコンソールでダメでもCLIでは行けるという話がある
- CLIからトライ
- 既に他のAWSのconfigで設定していたので、awscliの設定切り替えを元に設定
- AWSドキュメントのチュートリアル: AWS CLI を使用した Application Load Balancer の作成のHTTPS リスナーの追加通りのコマンドを実行
aws elbv2 create-listener --load-balancer-arn loadbalancer-arn \
--protocol HTTPS --port 443 \
--certificates CertificateArn=certificate-arn \
--default-actions Type=forward,TargetGroupArn=targetgroup-arn
- 出来た!