AWS API GatewayのAPIキーの使用方法
API GatewayでAPIキーを使用してそのAPIの使用量の制限を細かく設定したり、使用状況を見ることができます。
APIキーと使用量を設定します。
APIキーの役割としては認証認可としては20文字以上の固定文字列の為不向きです。
Lambdaはデフォルトで作成したLambdaを設定しています。
exports.handler = async (event) => { const response = { statusCode: 200, body: JSON.stringify('Hello from Lambda!'), }; return response; };
API Gatewayをデプロイしてブラウザでアクセスします。(curlコマンドでもOKです)
ヘッダ情報にx-api-key:値
を付加します。POSTMANやcurlコマンドでヘッダ情報を付加して試します。ヘッダ情報を付加すると正常にアクセスすることが確認できます。
$ curl https://6pvien1at6.execute-api.ap-southeast-2.amazonaws.com/dev/test {"message":"Forbidden"} $ curl --header "x-api-key:12345678901234567890" https://6pvien1at6.execute-api.ap-southeast-2.amazonaws.com/dev/test {"statusCode":200,"body":"\"Hello from Lambda!\""}
APIキーの用途は認証認可ではない
APIキーは認証認可用の機能ではなく、使用量の制限などに使うようです。
クライアント – サーバ間で認証認可でAPIキーのみを使用するには向いていません。公式ドキュメントにも記載があります。
認証および API の認証の唯一の手段として API キーに依存しないようにしてください。
KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^
コメント