mirror of
https://github.com/Sea-Haven-Industries/payments-dashboard.git
synced 2026-10-02 22:43:30 +00:00
Add API access logging + throttling (audit Day 3: M-18)
Implicit HTTP API: access logging to /aws/apigateway/payments-dashboard (90d) + default route throttling (100 rps / 50 burst) via Globals.HttpApi.
This commit is contained in:
parent
a2a7e3f533
commit
a1f62a0d2e
1 changed files with 14 additions and 0 deletions
|
|
@ -12,8 +12,22 @@ Globals:
|
||||||
Environment:
|
Environment:
|
||||||
Variables:
|
Variables:
|
||||||
TABLE_NAME: !Ref DashboardTable
|
TABLE_NAME: !Ref DashboardTable
|
||||||
|
# Access logging + default throttling on the implicit HTTP API (audit M-18).
|
||||||
|
HttpApi:
|
||||||
|
AccessLogSettings:
|
||||||
|
DestinationArn: !GetAtt ApiAccessLogGroup.Arn
|
||||||
|
Format: '{"requestId":"$context.requestId","ip":"$context.identity.sourceIp","requestTime":"$context.requestTime","method":"$context.httpMethod","routeKey":"$context.routeKey","status":"$context.status","protocol":"$context.protocol","responseLength":"$context.responseLength","integrationError":"$context.integrationErrorMessage"}'
|
||||||
|
DefaultRouteSettings:
|
||||||
|
ThrottlingBurstLimit: 50
|
||||||
|
ThrottlingRateLimit: 100
|
||||||
|
|
||||||
Resources:
|
Resources:
|
||||||
|
ApiAccessLogGroup:
|
||||||
|
Type: AWS::Logs::LogGroup
|
||||||
|
Properties:
|
||||||
|
LogGroupName: /aws/apigateway/payments-dashboard
|
||||||
|
RetentionInDays: 90
|
||||||
|
|
||||||
# VPC with private subnet + NAT Gateway for static outbound IP
|
# VPC with private subnet + NAT Gateway for static outbound IP
|
||||||
Vpc:
|
Vpc:
|
||||||
Type: AWS::EC2::VPC
|
Type: AWS::EC2::VPC
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue