Edited at

AWS CloudFormationでできない設定


はじめに

AWSのインフラ構築をする際に手でポチポチすることもできますが、

CloudFormationを使うと無料で自動で構築できます。

利点は以下になると考えています。


  • テンプレートを作成しコード化すると同じ構成を作成しやすい

  • 変更したスタックのみを更新できる

  • バージョン管理ができる

しかし、CloudFormationでAPI GatewayのWAFの設定はできませんでした。


API GatewayのWAFの設定

CloudFormationでAPI Gatewayに設定できるリソースは↓です。

Amazon API Gateway リソースタイプのリファレンス

2018年11月にAPI GatewayにWAFを有効化できるようになったばかりなので、

まだCloudFormationに対応していないのかもしれません。


手で設定

AWSのコンソールのAPI Gatewayの画面でデプロイしているステージから設定タグを開きます。

WAFを設定する項目があるので、デプロイしているWAFを選びます。

select_waf.png


おまけ

re:Invent 2018で発表されたDynamoDBオンデマンド(従量課金)をCloudFormationで指定する方法です。


template_dynamo.yml

TextDynamoDB:

Type: AWS::DynamoDB::Table
Properties:
AttributeDefinitions:
- AttributeName: table_key
AttributeType: S
KeySchema:
- AttributeName: table_key
KeyType: HASH
BillingMode: PAY_PER_REQUEST
TableName: table_name

BillingMode: PAY_PER_REQUESTと書くとオンデマンドになります。


最後に

CloudFormationで設定できない項目が他にもあるかもしれないので、

ご存知の方はコメントいただけると嬉しいです!