Lambdaの関数URLでAWS_IAMを有効にしてLambdaを実行する
Lambda関数のfucntion urlで認証タイプを「AWS_IAM」にしてcurlできるか試してみます。
関数URLを有効にする
「関数URLを作成」をクリックします。
「AWS_IAM」にして「保存」します。
これでHTTPSエンドポイントが発行されます。
Lambda(Python)
Lambda(Python)のコードを少し書き換えます。東京リージョンのLambdaとします。
import json def lambda_handler(event, context): # TODO implement return { 'statusCode': 200, 'body': json.dumps(event) # この部分 }
curlコマンドでテスト
CloudShellでcurlコマンドで試してみます。※2024.02.22時点でのCloudShell環境のcurlは8.5.0です
--user
オプションでクレデンシャル情報を設定する必要があります。
$ export AWS_ACCESS_KEY_ID=クレデンシャル情報 $ export AWS_SECRET_ACCESS_KEY=クレデンシャル情報 $ curl -i --aws-sigv4 "aws:amz:ap-northeast-1:lambda" \ --user "${AWS_ACCESS_KEY_ID}:${AWS_SECRET_ACCESS_KEY}" \ https://swvz7jshndh72svqumwjd6l6la0ozhlu.lambda-url.ap-southeast-1.on.aws/
結果のキャプチャです。

KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^