当前位置: 首页 > 知识库问答 >
问题:

从aws cli或nodeJS创建认知池id有错误,参数有什么问题?

贺经纶
2023-03-14

我创建了nodeJS脚本,以使用类“CreateIdentityPool”设置我的AWS Cognito池ID:

var cognitoidentity = new AWS.CognitoIdentity();
var params = {
    "IdentityPoolName": "samplePool",
    "AllowUnauthenticatedIdentities": true,
    "CognitoIdentityProviders": [
      {
        "ClientId": "xxxxxxxxxxx-qea4ebra0gipd0krefi37v8f48svrp8e.apps.googleusercontent.com", /* google client ID */
        "ProviderName": "accounts.google.com"
      }
    ],
    "DeveloperProviderName": "mypool"
};
cognitoidentity.createIdentityPool(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

但它有一个错误如下:

{[ValidationException:检测到1个验证错误:位于'cognitoIdentityProviders.1.member.clientId'的值'XXXXXXXXXX-qea4ebra0gipd0krefi37v8f48svrp8e.apps.googleusercontent.com'未能满足约束:成员必须满足正则表达式模式:[\w\u]]消息:“检测到1个验证错误:cognitoIdentityProviders.1.member.clientId\'上的值\'XXXXXXXXXX-qea4ebra0gipd0krefi37v8f48svrp8e.apps.googleusercontent.com\'未能满足约束:成员必须满足正则表达式模式:[\w_]',代码:'ValidationException',时间:2017年1月31日星期二21:11:48 GMT 1100(AEDT),requestId:'ad2b3366-e79d-11e6-b2e7-578f32ddcea5',状态代码:400,
可检索:false,可检索延迟:45.71310137398541}

第二种方法,我尝试先创建身份池ID而不使用Cognito鉴定提供商,然后使用类Update鉴定池运行更新以添加Cognito鉴定提供商(解锁身份验证提供商)。但是,这是同样的问题。

第三种方法,我试图创建身份池ID与阿古门-认知身份-提供者从aws cli和仍然得到相同的问题:

调用UpdateIdentityProviders.1.member.clientId操作时发生错误(ValidationException):检测到1个验证错误:在“cognitoIdentityProviders.1.member.clientId”处的值“XXXXXXXXXXXXXX-qea4ebra0gipd0krefi37v8f48svrp8e”未能满足约束:成员必须满足正则表达式模式:[\w\uUx]

第四种方法是,我尝试从aws cli创建标识池id而不使用--cognito标识提供程序,然后从aws cli更新它(添加--cognito标识提供程序)。这仍然是同一个问题。

这个问题非常沮丧,我必须从nodeJS设置它。所以,请不要建议从AWS控制台解锁认证提供商。这个问题的参考文献非常少。如果你能把我链接到解决的参考文献,我真的很感激。

谢谢你

共有1个答案

楚望
2023-03-14

您正在使用CognitoIdentityProviders,但这是针对AWS Cognito用户池的。您需要设置SupportedLoginProviders,它才能工作。这样地:

var params = {
    "IdentityPoolName": "samplePool",
    "AllowUnauthenticatedIdentities": true,
    "SupportedLoginProviders": {
        "accounts.google.com": "xxxxxxxxxxx-qea4ebra0gipd0krefi37v8f48svrp8e.apps.googleusercontent.com",
     }
};
 类似资料:
  • 我正在写一封信。Net核心web应用程序,其中我使用Azure-计算机视觉。 我所做的一切都如图所示: https://docs.microsoft.com/pl-pl/azure/cognitive-services/computer-vision/vs-computer-vision-connected-service 我的问题是: 计算机视觉API结果: {“statusCode”:401,

  • 问题内容: 我想用于物理计算,因此我需要误差的大小。 问题答案: 如果您在的呼叫中指定,它将包含更多信息: 返回的残差值是拟合误差的平方和,不确定是否是您要得到的结果: 在1.7版中,还有一个关键字将返回系数的协方差矩阵,您可以用它来计算拟合系数本身的不确定性。

  • 问题内容: 此SQL查询是由SQL Server Managment Studio生成的,它引发了一个错误: 错误是:指向但我觉得这行没问题。 有什么事吗 编辑: 我只是注释掉 现在可以了,为什么呢? 编辑2: 我将其范围缩小到: 我在这里想念什么吗? 问题答案: 我认为这取决于SQL Server数据库版本。 我尝试对SQL Server 2000数据库使用SSMS 2005进行查询,但由于您描

  • 我安装了nodejs模块youtube-dl但我出现了错误 Events.js:72 throw er;//未处理的“error”事件^error:spawn ENOENT at errnoException(child_process.js:1001:11)at process.childprocess._handle.onexit(child_process.js:792:34) 非常感谢。

  • 我正试图使用AWS Cognito在我的应用程序中帮助支持多租户。 https://aws.amazon.com/blogs/apn/managing-saas-users-with-amazon-cognito/ 预配用户池 假设要将单个用户池与每个租户关联,则需要引入配置自动化,以便在注册过程中创建租户的用户池。这还需要自动配置AmazonCognito的所有其他移动部分,以声明用户池并将其与

  • 问题内容: 我不敢相信这实际上是一个问题,但是我一直在尝试调试此错误,但是却一无所获。我敢肯定我错过了一些非常简单的事情,因为这看起来太愚蠢了。 (与addExperience对应的两个装饰器是因为这是在声明其类的文件外部定义的。) 我得到的错误是: 所以这对我来说没有任何意义,因为我清楚地声明了init函数的第二个参数。任何帮助都是极好的! 这是Experience.mro()-这表示类Expe