问题标签 [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.
android - 我在哪里可以找到通过 AWS Cognito 在我的 android 应用程序中输入的数据
我开发了一个 android 应用程序,我在其中使用 AWS Cognito 进行同步。我从以下官方链接下载了示例代码。在我的应用程序中,我可以输入数据。现在我的问题是,这些数据存储在哪里,我在哪里可以访问它们?
ios - AWS DynamoDB iOS SDK 静默失败但始终返回成功状态
我使用 AWSiOSSDKv2 按照 AWS 移动开发工具包示例创建了一个 iOS 应用程序。
我已经成功地将未经授权的 Cognito 帐户连接到 DynamoDB 并写入表。我登录 AWS,查看表格并查看我的记录。
但是,现在我想测试失败时会发生什么。我故意尝试通过将 dynamoDBTableName 更改为不存在的内容来导致错误。不幸的是,即使不是,我的代码也总是返回成功。
我在另一个线程中发现有人建议我将日志记录设置为详细。
在控制台中,我确实看到 AWSLogger 显示错误:
[{"__type":"com.amazon.coral.service#AccessDeniedException","Message":"User: arn:aws:sts::xxxxxx:assumed-role/Cognito_xxxxxxxxUnauth_DefaultRole/iOS-Provider 无权执行:dynamodb :PutItem 资源: arn:aws:dynamodb:us-east-1:xxxxxxxxxxxxx:table/xxxxxxxx"}]
但是,在我上面的代码中,它总是写“成功地将数据插入表中。”。
我什至尝试过修改 AWS 移动示例并且可以重现相同的错误。我还尝试安装 POD 并将 AWSiOSSDKv2 框架手动添加到我的项目中,但都没有解决问题。
有没有人遇到过这个问题,有人知道如何解决吗?我正在尝试创建一个仅对 dynamodb 表具有写访问权限的未经授权的用户。
谢谢
amazon-web-services - 可以在 AWS 凭据提供程序上将已验证身份更改回未验证身份吗?
我知道我们可以通过向 AWSCognitoCredentialProvider 提供“登录”来将未经身份验证的用户更改为经过身份验证的用户。我已经实现了 FB 登录,效果很好。
现在的问题是,如果用户想在没有 FB 凭据的情况下再次登录怎么办?就像他以前将他的 FB 帐户链接到应用程序之前的方式一样。因此,我需要清除与他的 FB 凭据关联的凭据提供程序,并将未经身份验证的角色归还给他。
我尝试的是使用清除缓存的凭据方法,但是一旦我在没有登录的情况下初始化新的凭据提供程序,就会发生错误。错误是关于刷新失败,openIDGet 失败。
有人可以帮助解决这个问题吗?
谢谢!
javascript - 在浏览器 (javascript) 中将 Cognito 凭证与 AWS 一起使用时,不断收到“缺少凭证”错误
我正在尝试使用 AWS 的 JavaScript SDK 从 Web 浏览器将文件上传到我的 S3 存储桶。我的代码如下所示:
但是,每当它到达 putObject 命令时,我都会不断从 AWS 收到错误消息:
“错误:配置中缺少凭据 {消息:“配置中缺少凭据”,代码:“CredentialsError”...”
我确定我在这里遗漏了一些简单而愚蠢的东西,但我无法弄清楚我的生活是什么。(当我尝试硬编码一个伪造的密钥或其他东西时,我得到了一个不同的错误,所以我很确定这与我尝试设置 cognito 凭据的方式有关。)
ios - AWS“无权执行 sts:AssumeRoleWithWebIdentity”
我正在尝试使用来自aws-ios-sdk的 AWSS3TransferManager 将照片从 iOS 上传到 s3 。
我通过使用boto3在 django 后端调用GetOpenIdTokenForDeveloperIdentity 并将返回的令牌传递给 iOS来使用 AWS cognito Developer Authenticated Identities 。我已经实现了一个从“AWSAbstractIdentityProvider”继承的身份提供者,并设置了 self.token 和 self.identityID 字段,然后将我开发的实例化提供者传递给“credentialsProvider”参数。
凭据提供程序在我创建的身份提供程序中实例化如下:
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 中创建了一个身份池,并按照建议创建了一个具有以下权限的角色:
它还具有以下信任关系:
{
"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 设置了开发人员身份验证身份
我已按照文档中的教程进行操作: 使用 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 这样的服务?Parse 是否可以像 Firebase 一样进行实时更新?
ios - 在 iOS 上使用 AWS 上传图像时如何解决错误
我正在关注本教程,其中涉及使用 cognito 将 UIImage 上传到 s3 存储桶进行身份验证。我能够连接到 cognito,因为我的设备显示在身份池中。但是,当我尝试将图像上传到存储桶时,我收到此错误:
cognito 身份验证策略如下所示:
设置凭据的代码如下所示:
将图像上传到 s3 的代码如下所示:
ios - AWS Cognito 仅在 USEast1 工作
我有一个使用 AWS Cognito API 用 Swift 编写的 iOS 应用程序。连接到 USEast1 按预期工作并验证我的用户
我有必要的代码允许在单独的登录控制器中登录 G+,没有特定的区域。
但是,如果我使用完全相同的代码,但将区域更改为 EUWest1 并使用基于欧盟的识别池,我会收到以下异常:
我的 IAM 角色的信任策略允许访问两个身份池:
我是否错过了我应该覆盖该地区的地方?