标签: amazon-cognito

AWS Cognito无效的标识池配置

我正在使用AWS Javascript API并尝试获取指定的cognito id:

AWS.config.credentials.get(function(err) {
    if (!err) {
        console.log("Cognito Identity Id: " + AWS.config.credentials.identityId);
    }
});
Run Code Online (Sandbox Code Playgroud)

为什么这会导致下面的消息出现400错误?

{"__type":"InvalidIdentityPoolConfigurationException","message":"Invalid identity pool configuration. Check assigned IAM roles for this pool."}
Run Code Online (Sandbox Code Playgroud)

我为经过身份验证和未经身份验证的用户配置了IAM角色.

{
"Version": "2012-10-17",
"Statement": [{
    "Action": [
        "mobileanalytics:PutEvents",
        "cognito-sync:*"
    ],
    "Effect": "Allow",
    "Resource": [
        "*"
    ]
}]
}
Run Code Online (Sandbox Code Playgroud)

amazon-web-services amazon-javascript-sdk amazon-cognito

16
推荐指数
3
解决办法
2万
查看次数

AWS Cognito用户池如何防御暴力攻击

我将使用AWS Cognito User Pool产品作为应用程序的用户目录,并有几个问题:

  1. 是亚马逊对Cognito用户池的限制请求,如果是,请求受限制的呼叫的速率限制是多少?
  2. Cognito如何防御暴力攻击登录/密码?

amazon-web-services amazon-cognito

16
推荐指数
3
解决办法
1万
查看次数

AWS Cognito - 用户陷入CONFIRMED并且email_verified = false

如何查询确认已确认但email_verified为false的用户的电子邮件?

该场景大致是代理人代表他们注册用户,我通过管理员电话adminConfirmSignUp确认用户.此时,由于email_verified标志为false,用户无法更改其密码.

我无法调用resendConfirmationCode,因为用户已经确认.

我无法调用forgotPassword,因为email_verified标志为false.

我能想到的最好的方法是删除用户帐户并调用signUp(提示他们重新输入密码或新密码),从而重新创建帐户.

amazon-cognito

16
推荐指数
4
解决办法
1万
查看次数

AWS:身份池配置无效.检查此池的已分配IAM角色

我创建了一个用户池和标识池.

我用过javascript sdk.

我可以使用javascript sdk注册,发送确认码并确认用户成功.

但是,当我尝试使用身份验证方法登录用户并尝试使用下面的代码传递idToken时,使用"CognitoIdentityCredentials"获取凭据

logins[cognitoEndpoint + "/" + userPoolId] = jwtToken;

    AWS.config.credentials = new AWS.CognitoIdentityCredentials({
      IdentityPoolId: identityPoolId,
      Logins: logins
    });
Run Code Online (Sandbox Code Playgroud)

它给了我以下错误

Error: Invalid identity pool configuration. Check assigned IAM roles for this pool.
    at Request.extractError (aws-sdk.js:104063)
    at Request.callListeners (aws-sdk.js:106060)
    at Request.emit (aws-sdk.js:106034)
    at Request.emit (aws-sdk.js:105121)
    at Request.transition (aws-sdk.js:104843)
    at AcceptorStateMachine.runTo (aws-sdk.js:108480)
    at aws-sdk.js:108492
    at Request.<anonymous> (aws-sdk.js:104859)
    at Request.<anonymous> (aws-sdk.js:105123)
    at Request.callListeners (aws-sdk.js:106070)
Run Code Online (Sandbox Code Playgroud)

我已授予管理员访问身份池的"未经身份验证的角色"和"未经身份验证的角色"以及我正在使用其凭据的用户的权限.

我是新来的.谁能告诉我我错过了什么?

任何帮助,将不胜感激.

javascript amazon-web-services angularjs amazon-cognito aws-sdk

16
推荐指数
1
解决办法
6746
查看次数

AmazonServiceException:未授权用户执行:dynamodb:DescribeTable状态代码:400; 错误代码:AccessDeniedException

我原本以为这个问题是由于区域不匹配造成的,但是在更改区域之后,我在尝试在此处找到的Amazon AWS示例时仍然会遇到以下错误:

DynamoDBMapper

 AmazonServiceException: User: arn:aws:sts::[My Account
 ARN]:assumed-role/Cognito_AndroidAppUnauth_DefaultRole/ProviderSession
 is not authorized to perform: dynamodb:DescribeTable on resource:
 arn:aws:dynamodb:us-east-1:[My Account ARN]:table/test_table (Service:
 AmazonDynamoDBv2; Status Code: 400; Error Code: AccessDeniedException;
 Request ID: BBFTS0Q8UHTMG120IORC2KSASVVV4KQNSO5AEMVJF66Q9ASUAAJG)
Run Code Online (Sandbox Code Playgroud)

一切都或多或少相同,我改变的唯一事情就是将DBclient区域更改US_EAST_1为托管我的测试表的位置,并使用通过以下生成的"Amazon Cognito Starter Code"页面中的信息修改Constants文件Cognito入门文档.

sdkforandroid-cognito-AUTH

对于我的Cognito_AndroidAppUnauth_DefaultRole角色策略,我修改了默认的移动分析和同步服务权限,还包括对所有表的所有操作的访问权限,无论是否存在:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "CognitoPolicy",
            "Action": [
                "mobileanalytics:PutEvents",
                "cognito-sync:*"
            ],
            "Effect": "Allow",
            "Resource": [
                "*"
            ]
        },
        {
            "Sid": "DynamoDBPolicy",
            "Effect": "Allow",
            "Action": [
                "dynamodb: *"
            ],
            "Resource": "*"
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

那么,为什么在使用正确的区域并且Unauth策略应该允许表访问时它声称它没有权限?

编辑:在DynamoDB资源(创建表)上调用方法时的Stacktrace,它是否有用

   com.amazonaws.AmazonServiceException: …
Run Code Online (Sandbox Code Playgroud)

android amazon-web-services amazon-dynamodb amazon-iam amazon-cognito

15
推荐指数
1
解决办法
2万
查看次数

我应该使用AWS Cognito"username"或"sub"(uid)存储在数据库中吗?

我在AWS Cognito服务中有一个经过身份验证的用户,并希望将其唯一标识符存储在数据库中.我应该存储用户的用户名(这是他的电话号码)还是他的"子"(这是他的uid)?所有Amazon API函数(如AdminGetUser)都使用"username"参数,但不使用sub/uid.

但我也读过那篇文章,作者说"总是生成关于'sub'声明的价值的政策,而不是'用户名',因为用户名是可重新分配的.Sub是用户的UUID,永远不会被重新分配给另一个用户."

所以,现在我犹豫了我必须用作唯一用户标识符 - "username"或"sub"

谢谢.

amazon-web-services amazon-cognito

15
推荐指数
4
解决办法
6584
查看次数

使用带有Cognito身份验证用户的Web套接字连接到AWS IoT

我正在尝试使用浏览器中的Web套接字连接到AWS IoT.

我试过这个例子:https: //github.com/awslabs/aws-iot-examples/tree/master/mqttSample

另一个有点修改,因此它可以与Cognito Identity Pool登录用户一起使用. https://github.com/dwyl/learn-aws-iot/blob/master/src/js/utils/request.js#L27

如果我使用具有有效IoT策略的IAM用户,我可以成功连接,但如果我使用用户凭据,则会收到"101 Switching Protocols"响应,但随后会关闭.

与经过身份验证的用户关联的IAM角色是正确的,我可以签署请求并执行其他私有操作,如调用APIG端点.套接字连接也没有响应403.所以它可能不是权限问题.

还有什么呢?

amazon-web-services websocket amazon-cognito aws-iot

15
推荐指数
4
解决办法
5447
查看次数

在Cognito中查找标识池标识的位置

Cognito Console中的标识池在哪里.如文档中所述,它具有以下格式:

IdentityPoolId

标识为REGION:GUID的标识池标识.

但我只看到Pool IdPool ARN在控制台中.哪种格式不同.

amazon-web-services amazon-cognito aws-cognito

15
推荐指数
3
解决办法
6790
查看次数

aws cognito用户池域 - Invalid_Request

我创建了一个用户池和设置域,其中包含应用客户端设置()以主持注册并在cognito本身登录页面.当我尝试使用类似于的网址 -

https://myDomain.auth.us-east-1.amazoncognito.com/login?response_type=code&client_id=fkjfkasjfkasjfdweinfskfsfsfnk&redirect_uri=https://google.com

在浏览器中我被重定向到

https://myDomain.auth.us-east-1.amazoncognito.com/error?error=invalid_request#

注意:我尝试使用Cognito用户池和Facebook身份提供商,但未启用OAuth2.

我错过了什么吗?

amazon-cognito aws-cognito

15
推荐指数
2
解决办法
4897
查看次数

知识产权用户池和联合身份之间的服务差异

AWS提供cognito,为开发人员提供注册和登录功能,包括与OpenId兼容身份提供商(如facebook,google等)的联合.

cognito开发者控制台中有两种类别.这些是管理用户池和管理联合身份.

我只是有点困惑,因为两者非常相似,即使我们想要提供我们的客户登录他们的Facebook帐户.cognito用户池本身提供联合身份验证和联合身份池,也由身份验证提供程序提供.

问题是,如果我想允许我的客户使用自己的Facebook帐户登录,我应该使用哪些类别?用户池或联合身份?

另外,如果我想在API网关中配置授权器,我必须创建cognito用户池但联合身份池.这是选择认知类别的主要原因吗?

amazon-web-services amazon-cognito

15
推荐指数
3
解决办法
3586
查看次数