Open5

AWS CloudFormation の custom resources とは?

hirenhiren

カスタムリソースを使用してカスタムプロビジョニングロジックを作成する
https://docs.aws.amazon.com/ja_jp/AWSCloudFormation/latest/UserGuide/template-custom-resources.html

CFnでの役割

この AWS::CloudFormation::CustomResource リソースタイプは、特定のプロビジョニングタスクを実行するカスタムリソースを作成したり、CloudFormation リソースタイプとして利用することができないリソースを含めたりすることを可能にします。

hirenhiren

カスタムリソースには次の利点があります。

  • リソースを登録する必要はありません。
  • リソース全体を登録せずにテンプレートの一部として含めることができます。
  • Create、Update、および Delete 操作をサポート
hirenhiren

要するに、CFn のスタックが作成・更新・削除された時に動く Lambda 関数や SNS トピックのこと
主に、CFn では非対応のリソースやパラメータの作成や変更・指定に用いる(CFn 非対応でも API は対応している場合は多いため)

hirenhiren

CDKでは、クロスリージョンのスタック間参照にカスタムリソースとパラメータストアを利用してARNの受け渡しを行ったりすることもある

hirenhiren

CFn の resource type は AWS::CloudFormation::CustomResource もしくは Custom::<MyCustomResourceTypeName> で表される

"Type": "Custom::VpcRestrictDefaultSG",