API Gatewayのリソースポリシーで特定IPからのアクセス制限を行う
API GatewayのリソースポリシーでIP制限をしてみます。
リソースポリシー
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Principal": "*", "Action": "execute-api:Invoke", "Resource": "arn:aws:execute-api:ap-northeast-1:123456789012:ry67q79e3g/*/*/*", "Condition": { "IpAddress": { "aws:SourceIp": "176.32.250.250" } } }, { "Effect": "Allow", "Principal": "*", "Action": "execute-api:Invoke", "Resource": "arn:aws:execute-api:ap-northeast-1:123456789012:ry67q79e3g/*/*/*" } ] }
176.32.250.250のIPからアクセスがあった場合に制限をかけます。52.95.36.0/22というようなCIDR表記も可能です。
Resourceはワイルドカードにしていますがこちらも設定が可能です。
VPC内のプライベートIPからの制限は、aws:VpcSourceIpを使用します。
アクセス制限の画面
アクセス拒否したIPからアクセスした画面です。
参考サイト
特定の IP アドレスが API Gateway REST API にアクセスすることを許可する
特定の IP アドレスのみが自分の Amazon API Gateway REST API にアクセスすることを許可したいと考えています。API Gateway REST API へのアクセスを制限するにはどうすればよいですか?
IAM JSON policy elements: Condition operators - AWS Identity and Access Management
Describes the operators that you can use in the Condition element of the IAM JSON policy language.
AWS condition keys that can be used in API Gateway resource policies - Amazon API Gateway
Learn condition keys that can be used in API Gateway resource policies.
KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^
コメント