AWS WAFのカスタムレスポンスでRESTもGraphQLも対応できるAPIのメンテナンスモードを実現する

2021年03月にリリースされたAWS WAF v2のカスタムレスポンス機能を使って、APIから「メンテナンス中」の旨を返すようなメンテナンスモードを実現してみました。


続きを読む

CloudFormationサービスロールの概要と注意点

背景

serverless frameworkではCloudFormationのサービスロールをdeploymentRoleというオプションで指定するのですが、そこら辺の記事を書こうとした際にそもそもCloudFormationのサービスロールとは何かということを書いてみたらすごく長くなったので、別記事に切り出しました。

続きを読む

CognitoをIPアドレスでアクセス制限する(AWS WAF対応!)

まとめ

方法①:Cognitoアドバンスドセキュリティ

  • 「0.0.0.0/0」の代わりに「0.0.0.0/1」+「128.0.0.0/1」
    • IPv6も対応されました
  • IP制限のためだけには割高感

※こちらは想定する挙動にならなかったため、方法から外します。(後述)


方法②:Cognito認証前Lambdaトリガー

  • API(AWSのcheckipなど)でIP情報を取得してCognitoに渡す
  • 料金割安だが、その分自前コーディングが必要


方法③:AWS WAF <- new!!

  • 2022年8月11日対応されました!
  • 一番簡単に設定が可能
  • IPv6も設定可能
続きを読む

Amplify ConsoleとCloudFront+S3のユースケースの違い

概要

最近Amplify ConsoleからCloudFront+S3へ移行する検討をしたり実際に移行したので、それぞれの違いをまとめてみました。

続きを読む

glibcを入れたDocker公式イメージ(Alpine)のコンテナによるCI/CDが通らなくなった

前提

  • GitLab-CIの実行コンテナに、公式dockerイメージ(=Alpine)を使っていた
  • AWS CLI v2 のインストールにはglibcが必要
  • Alpineイメージのコンテナにはglibcが入ってないので自前でインストールしていた
続きを読む