二度忘れた事を三度忘れないようにする

しがないフリーランスIT系エンジニア

API-Gatewayのリクエスト検証をServerlessで設定する

Webコンソールからはぺろっと出来る設定ですが、Serverlessで設定しようとしたところ、あんまり情報がなかったのでメモ。

Webコンソールにある2つのチェックルールはデフォルトでは定義されておらず、aws cliで確認しても情報は出てこない。
一度選択して設定してやると新規で定義されてaws cliでも出て来るようになる。なので、Serverlessではチェックルールを定義するところからしてやる必要がある。
あとあるあるパターンで英語のAWSドキュメントじゃないとMethodに与えるプロパティ「RequestValidatorId」が載ってなくてハマってた。

resources:
  Resources:
     TekiTouVal:
       Type: AWS::ApiGateway::RequestValidator
       Properties:
         Name: TekiTouValidator
         RestApiId:
           Ref: ApiGatewayRestApi
         ValidateRequestParameters: true
     TekitouMethod:
       Type: AWS::ApiGateway::Method
        略
        RequestValidatorId:
          Ref: TekiTouVal
        略

参考

AWS::ApiGateway::RequestValidator - AWS CloudFormation