API GatewayのリソースポリシーでIPアドレスを制限

API Gatewayの「リソースポリシー」を使用するとAPIにアクセス制限を設定することができます。ここでは、特定の送信元IPアドレスだけAPIの利用を許可するように設定して動作確認します。

目次

リソースポリシーを設定

リソースポリシーの設定

API Gatewayの管理画面を開き、対象APIのリソースポリシーをクリックします。

以下の設定を登録します。

項目概要
account-id12桁のAWSアカウントIDを指定します。

api-idAPI Gateway識別子を指定します。

xxx.xxx.xxx.xxx許可するIPアドレスを指定します。

デプロイ

設定を変更したので再度APIをデプロイします。

動作確認

許可したIPの場合

$ curl https://xxxxxxxxxxx.execute-api.ap-northeast-1.amazonaws.com/dev/message?name=wakuwaku
Hello wakuwaku

正常にAPIを実行できました。

許可したIP以外の場合

$ curl https://xxxxxxxxxxx.execute-api.ap-northeast-1.amazonaws.com/dev/message?name=wakuwaku
{"Message":"User: anonymous is not authorized to perform: execute-api:Invoke on resource: arn:aws:execute-api:ap-northeast-1:********XXXX:xxxxxxxxxxx/dev/GET/message"}

APIを実行できず、上記メッセージが表示されました。

参考

よかったらシェアしてね!
目次