気まぐれメモランダム / でたらめフィードバック

タグ: AWS

pytest+motoでセットアップを共有する方法

公開:
Python初心者かつAWS初心者の私がAWS Lambdaの開発をはじめて半年強、ようやくpytestを使って単体テストを本格的に書けるようになってきました。motoというAWSのモックサービスを使うとローカルであることをほぼ意識せずに単体テストが書けることも学習。ただしmotoのもっとも手軽な使用法であるデコレータでの指定だとせっかくのAWSモックセットアップがテストケース間で共有できません。テストケースをクラスでグループ化してクラスにデコレータで指定しても駄目。まあそんなものかと思っていたのですが、「共通化できるのでは?」との声があがったので本腰を入れて調べて、無事解決に至ったのでメモとして残しておきます。…
エントリを表示

Cognito Authentication Extension Libraryのメソッドはnullを返すことあり(2023年9月現在)

公開:
Amazon CognitoアクセスライブラリとしてAWSが.NET向けに公式に提供するAmazon Cognito Authentication Extension Library。README.mdに掲載されているコード片からだとCognitoUser.StartWithSrpAuthAsyncメソッドはnullを返すことがないように読めるのですが、実際には確認済みでないCognitoユーザーを指定して呼びだすとnullを返すことを確認しました。なんで例外送出でないのかは不明。こういう落とし穴は気づきづらくてこまりますね……。皆様もお気を付けを。
エントリを表示

Boto3 S3 Client APIのupload_file関数はメタデータ設定可能

公開:
必要に迫られてAWS SDK for Python (Boto3)を使った S3 へのファイルアップロード機能について調べたところ、クライアント API のupload_fileではオブジェクトメタデータは設定できないとする Web ページをいくつか目にしました。たとえば次。python で S3 にメタデータをつけてファイルをアップする - たそらぼAWS S3 オブジェクトの Metadata 管理 - public note実際にはUploading files - Boto3 1.28.14 documentation の The ExtraArgs parameterで説明されているとおり、upload_file でもメタデータは設定できます。…
エントリを表示

Amazon Cognito関連のエラー応答を整理する(2023年7月版)

公開:
AWS 提供サービスのご多分に漏れずAmazon Cognitoも求める情報を膨大な公式ドキュメントの中から得るのに骨が折れます。Cognito はユースケースが幅広いこともありその苦労もひとしお。特に苦労したのはエラー応答に関する情報で、まとまっているのを Web ではあまり見かけないように思うので、自分用の整理も兼ねてメモしておきます。Cognito のエラーハンドリングが必要になるパターンは典型的には次かと思います。URL 指定で直接アクセスしたときAPI Gateway のオーソライザーに設定したとき各種 SDK でアクセスしたとき以下それぞれについて。

URL 指定で直接アクセスしたとき

エントリを表示

Amazon CognitoはEメール送信数超過でエラーLimitExceededExceptionを返す(2023年7月現在)

公開:
先日見舞われて愕然としたので共有。AWS の提供する認証サービスAmazon Cognitoはメール他による通知機能を提供しています。このうち E メールに関してはAmazon SESと関連付けないかぎり 24 時間の送信数が最大 50 件になります(Amazon Cognito のクォータ - Amazon Cognitoより)。実運用に耐える数字とは思えませんが、AWS としては SES との関連付けが前提で、関連付けなしは評価用等の想定なのでしょう。ではこの制限を超えたらどうなるか。当然 E メールは送られず、Cognito の API はエラーLimitExceededException…
エントリを表示

Pick up work

最近のエントリ

アーカイブ

ブログ情報