問題タブ [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.
ios - AWS DynamoDB iOS SDK がサイレントに失敗するが、常に成功ステータスを返す
AWSiOSSDKv2 を使用して、AWS Mobile SDK の例に従って iOS アプリケーションを作成しました。
無許可の Cognito アカウントで DynamoDB に接続し、テーブルに書き込むことができました。AWS にログインし、テーブルをチェックして、自分のレコードがそこにあることを確認します。
ただし、ここで、障害が発生した場合に何が起こるかをテストしたいと思います。dynamoDBTableName を存在しないものに変更して、意図的にエラーを発生させようとしています。残念ながら、私のコードは、そうでなくても常に成功を返します。
別のスレッドで、ログを冗長にすることを勧めている人を見つけました。
コンソールでは、AWSLogger がエラーを表示していることがわかります。
[{"__type":"com.amazon.coral.service#AccessDeniedException","Message":"ユーザー: arn:aws:sts::xxxxxx:assumed-role/Cognito_xxxxxxxxUnauth_DefaultRole/iOS-Provider は実行する権限がありません: dynamodb :PutItem on resource: arn:aws:dynamodb:us-east-1:xxxxxxxxxxxxx:table/xxxxxxxx"}]
ただし、上記のコードでは、常に「データをテーブルに挿入しました。」と書かれています。
AWS Mobile Examples を変更してみましたが、同じバグを再現できます。また、POD をインストールし、AWSiOSSDKv2 フレームワークをプロジェクトに手動で追加しようとしましたが、どちらも問題を解決しませんでした。
この問題に遭遇した人はいますか?解決方法を知っている人はいますか? dynamodb テーブルへの書き込みアクセス権しか持たない無許可のユーザーを作成しようとしています。
ありがとう
amazon-web-services - AWS 認証情報プロバイダーで認証済みを非認証に戻すことは可能ですか?
AWSCognitoCredentialProvider に「ログイン」を提供することで、認証されていないユーザーを認証済みに変更できることを知っています。私は FB ログインを実装しましたが、それはかなりうまく機能します。
ここで、ユーザーが FB 資格情報なしで再度ログインしたい場合はどうすればよいでしょうか? FB アカウントをアプリにリンクする前と同じように。したがって、彼の FB 資格情報に関連付けられている資格情報プロバイダーをクリアし、認証されていない役割を彼に戻す必要があります。
私が試したのは、キャッシュされた資格情報をクリアする方法を使用することですが、ログインせずに新しい資格情報プロバイダーを初期化するとすぐにエラーが発生します。エラーは、更新の失敗、openIDGet の失敗に関するものです。
誰でもこの問題について助けてもらえますか?
ありがとう!
javascript - ブラウザ (javascript) で AWS で Cognito 資格情報を使用すると、「資格情報がありません」というエラーが発生し続ける
AWS の JavaScript SDK を使用して、Web ブラウザから私の S3 バケットにファイルをアップロードしようとしています。私のコードは次のようになります。
ただし、putObject コマンドに到達するたびに、AWS からエラーが返され続けます。
「エラー: 構成に資格情報がありません {メッセージ: "構成に資格情報がありません"、コード: "CredentialsError"..."
ここには単純で愚かな何かが欠けていると確信していますが、私の人生のために何ができるのかわかりません。(偽の秘密鍵などをハードコーディングしようとすると別のエラーが発生するので、cognito資格情報を設定しようとしている方法に関係があると確信しています。)
ios - DynamoDB iOS サンプル権限エラー
ここでAWS が提供する DynamoDB サンプルを使用しようとしていますが、次のエラーが発生します。
Auth と UnAuth の両方に対する私の IAM ポリシーは次のとおりです。
私は次に何をしようか、少し立ち往生しています。助けてください!ありがとうございました
ios - AWS "sts:AssumeRoleWithWebIdentity を実行する権限がありません"
aws-ios-sdkから AWSS3TransferManager を使用して、iOS から s3 に写真をアップロードしようとしています。
boto3 を使用して Django バックエンドでGetOpenIdTokenForDeveloperIdentityを呼び出し、返されたトークンを iOS に渡すことで、AWS cognito Developer Authenticated Identitiesを使用しています。「AWSAbstractIdentityProvider」から継承する ID プロバイダーを実装し、self.token フィールドと self.identityID フィールドを設定してから、開発したインスタンス化されたプロバイダーを「credentialsProvider」パラメーターに渡します。
資格情報プロバイダーは、作成した ID プロバイダーで次のようにインスタンス化されます。
AWSCognitoCredentialsProvider *provider = [[AWSCognitoCredentialsProvider alloc]
initWithRegionType:AWSRegionUSEast1
identityProvider:self
unauthRoleArn:CognitoRoleUnauth
authRoleArn:CognitoRoleAuth];
CognitoRoleAuth は、以下に示すアクセス許可で作成した IAM ロールの arn です。すぐ下は構成のインスタンス化です。
AWSServiceConfiguration *configuration = [AWSServiceConfiguration configurationWithRegion:AWSRegionUSEast1 credentialsProvider:credentialsProvider];
次に、作成した構成を使用して、次のコードで「AWSS3TransferManager」オブジェクトをインスタンス化します。
`AWSServiceConfiguration *configuration = [appDelegate getConfig];
Amazon Cognito で ID プールを作成し、次のアクセス許可で提案されているようにロールを作成しました。
また、次の信頼関係があります。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Federated": "cognito-identity.amazonaws.com"
},
"Action": "sts:AssumeRoleWithWebIdentity",
"Condition": {
"StringEquals": {
"cognito-identity.amazonaws.com:aud": "us-east-1:identityPoolID"
},
"ForAnyValue:StringLike": {
"cognito-identity.amazonaws.com:amr": "authenticated"
}
}
}
]
}
転送マネージャーで「アップロード」を呼び出そうとするたびに、次のエラー メッセージが表示されます。
「sts:AssumeRoleWithWebIdentity を実行する権限がありません」
何を間違えたのかはわかりませんが、信頼関係に関係があるのかもしれません。助言がありますか?助けてください!
ios - Amazon Web Services : エラー - リクエストに含まれるセキュリティ トークンが無効です
iOS アプリで Amazon Cognito 用に設定された開発者認証 ID を持っています
ドキュメントのチュートリアルに従いました: Using Developer Authenticated Identities
私のバックエンドは問題なくトークンを生成し、identityIds を取得できます。また、指示に従って iOS アプリで cognito を初期化できます。しかし、dynamoDb リクエストを行うと、エラーが発生します
Cognito 初期化コード:
誰かが私が間違っているかもしれないことを知っていますか?
amazon-web-services - Parse、Firebase、AWS Cognito のどちらを使用するのが良いですか?
アプリケーションに同期サービスを使用したいと考えています。でも、いいものを選びたい。この中でどれがいいのか知りたいです。私のアプリケーションは Android 、 IOS 、 Windows 、および Web で動作します。
テストしたので、Firebaseを使用します。迅速な結果が得られ、オフラインで作業することもできます。Parse と AWS Cognito のどちらを使用しますか?
Google Cloud のオプションもあります。Google Cloud は Firebase のようなサービスを提供していますか? また、Firebase のように Parse でリアルタイムの更新は可能ですか?
ios - iOS 上の AWS でイメージをアップロードする際のエラーを解決する方法
認証にcognitoを使用してUIImageをs3バケットにアップロードすることを含むこのチュートリアルに従っています。デバイスが ID プールに表示されているため、cognito に接続できます。ただし、画像をバケットにアップロードしようとすると、次のエラーが発生します。
cognito 認証ポリシーは次のようになります。
資格情報を設定するためのコードは次のようになります。
画像を s3 にアップロードするコードは次のようになります。
ios - USEast1 でのみ動作する AWS Cognito
AWS Cognito API を使用して Swift で作成された iOS アプリがあります。USEast1 への接続は期待どおりに機能し、ユーザーを認証します
別のログイン コントローラーで G+ に対するログインを許可するために必要なコードがあり、地域固有のものはありません。
ただし、まったく同じコードを使用し、リージョンを EUWest1 に変更し、EU ベースの識別プールを使用すると、次の例外が発生します。
私の IAM ロールの信頼ポリシーは、両方の ID プールへのアクセスを許可します。
リージョンをオーバーライドする必要がある場所がありませんか?