0

私はAWSには比較的新しいですが、数多くのドキュメントを読み、必要なものを見つけることができませんでした。Cognito User Pool(またはDynamoDB)のユーザプロパティに基づいて認可を実装する方法は?

ユーザーがサブスクリプションの支払いをして支払いを行ったかどうかに基づいて、S3バケットとアイテムにアクセスできる認証を実装しようとしています。

API GatewayをCognitoオーソライザで使用しようとしましたが、ユーザーが支払いをした場合(たとえば、DynamoDBで調べるなど)、チェックを追加する方法がわかりません。 Cognitoオーソライザにカスタム認証ロジックを追加する方法はありますか?そうでない場合は、Cognito User Poolをカスタム認可者とともに使用することは可能ですか?そして、最も重要なことは、あなたはどのように全体を実装するのですか?

私は提案があります。

答えて

1

私が探していたものが見つかりました。

カスタムユーザー属性subscribedを追加しました。次に、blueprint for custom authorizer for Amazon Cognito User Poolsを使用して私がカスタムオーソライザとして使用したラムダ関数を作成しました。カスタム属性subscribed(接頭辞はcustom:なので、custom:subscribedになる)を抽出し、trueに設定されているかどうかを確認するようにコードを修正しました。私はラムダ関数に青写真をアップロードし、必要なエンドポイントとメソッドのオーソライザとして設定しました。

フラグを更新するために、ユーザがcron jobsのサブスクリプションを有効に支払う(またはサブスクリプションを削除した)後に、lambdaのカスタムロケーションで呼び出すCognitoIdentityServiceProvider. adminUpdateUserAttributesを使用しました。

記事:

https://aws.amazon.com/blogs/mobile/integrating-amazon-cognito-user-pools-with-api-gateway/ https://aws.amazon.com/blogs/compute/author/

+0

この情報を掲示していただきありがとうございます。 Cognito開発者には非常に良い。 –

関連する問題