問題タブ [amazon-cognito]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2189 参照

android - Cognito / S3 ユーザー固有のポリシー

Cognito と一緒に AWS SDK for Android を使用して、(Login With Amazon 経由で) ユーザーを AWS リソースに認証しています。私がやろうとしているのは、次のように S3 バケットをセットアップすることです。

したがって、my-bucketバケットには、ユーザーの電子メール アドレスに基づくフォルダーが含まれます。

ポリシーを設定するための最初の刺し傷は次のとおりです。

テストとして、次のようなユーザーのフォルダーをダウンロードしようとしています。

ただし、これを実行すると、「禁止」例外が発生します。ポリシーを変更して、明示的に参照するのfirst_user@email.comではなく、正常に${www.amazon.com:user_id}機能するようにします。

質問

  1. LWA ユーザーの電子メール アドレスを使用して、このように構成することは可能ですか?
  2. リクエストを行ったときに実際にどのパラメータが発生しているかを記録する方法はありますか?

このような参考文献を見たことがありますが、どれが実際に当てはまるかわかりません。リクエストを行ったときに、どのような値が出てくるかを何らかの方法で確認できれば素晴らしいと思います。

前もって感謝します。

0 投票する
2 に答える
6286 参照

ios - Cognito ID に基づく S3 フォルダー アクセスの IAM ポリシー

Cognito ユーザーが S3 バケットに書き込むことを許可する IAM ポリシーを作成しましたが、Cognito ID に基づいてフォルダーに書き込みを制限したいと考えています。ここでAmazon の指示に従い、次のようなポリシーを作成しました。

しかし、AWS iOS SDK の v2 を使用してアップロードしようとすると、アクセス拒否エラーが発生します。

リソースの最後のパス コンポーネントを変更して、SDK から取得し${cognito-identity.amazonaws.com:sub}た明示的な値に置き換えると、機能します。identityIdAWSCognitoCredentialsProvider

私の理解では、これらは同じものに等しいはずです。ポリシーに何か不足がありますか? それとも、アップロード リクエストで別のパスを使用する必要がありますか?

**更新**

私はもともとiOSでこの問題を抱えていたので、今夜、node.jsで同じことを試してみましたが、結果は同じです。ノードで使用している簡単なコードは次のとおりです。

そして、iOS で得られるのと同じ結果が得られます。IAM ポリシーで明示的な cognito ID を提供しない限り、API は 403 で応答します。

IAM ポリシーを最小限に抑えました。これは機能しません:

これは次のことを行います。

ここに何が欠けているのかわかりません...私が見つけることができた唯一のドキュメントは、私が使用してきたのと同じリソース値の例を常に示しています。

0 投票する
1 に答える
1857 参照

node.js - API で Cognito トークンを使用するにはどうすればよいですか?

Google oAuth を使用して iOS アプリに正常にサインインし、Cognito トークンと ID を取得できました。ここで、node.js API を呼び出して、DynamoDB で何らかのアクションを実行したいと思います。

API 呼び出しに何をどのように渡すのですか? API メソッド自体で実行できる認証および認証チェックは何ですか?

背景: 基礎となるストレージの詳細をユーザーに公開/漏洩したくないので、たとえばアプリ自体から DynamoDB を使用しません。

0 投票する
1 に答える
7432 参照

amazon-dynamodb - Cognito ID に基づいて AWS DynamoDB ポリシーを指定できますか?

ポリシーを AWS DynamoDB テーブルに適用して、それにアクセスするユーザーの Cognito ID に基づいて制限することはできますか?

たとえば、Customer テーブルには、Cognito ID と等しいプライマリ ハッシュ キーがあります。同じ ID を共有するユーザー以外の誰かがアイテムを取得しようとすると、無許可の例外が発生します。

(DynanoDB 以外のポリシーもおそらく有効です。)

0 投票する
2 に答える
1003 参照

android - Amazon Cognito を使用して一時的な AWSCredentials を作成する

私の Android アプリでは、AWS の一時認証情報を作成して、秘密の AWS 認証情報をアプリに保存する必要がないようにしたいと考えています。このコードを使用して資格情報を作成します。

このように試してみると、コードの最後の行に error というエラーが表示されます"Not authorized to perform sts:AssumeRoleWithWeb Identity"myUnauthRoleと で使用しているポリシーに問題があると思いますmyAuthRole。次のようになります。

ポリシー内で他に何かしなければならないことはありますか? インターネットで私のユースケースの実例を見つけることができませんでした。ここでサポートを得ることができれば最高です。

ありがとう!

0 投票する
1 に答える
695 参照

ios7 - STS と AWSS3TransferManagerUploadRequest および AWSS3TransferManagerDownloadRequest の統合

Android および iOS アプリに AWS Security Token Service を実装しようとしています。バックエンドでは、以下のコードを使用してトークンを生成しています。

生成されたトークンは、別の Web サービス呼び出しを介して iOS および Android アプリで取得されます。

Android では、取得したトークンを使用するために以下のコードを使用しています。

問題は -

iOS 用の AWS モバイル SDK バージョン 2 には Android のような API はありません。これを使用して、取得したトークンを消費できます。iOS でこれを実現する最善の方法は、おそらく AWSCognitoCredentialsProvider を使用することですが、よくわかりません。

提案してください - AWS Security Token Service を iOS に統合する最良の方法は何ですか?