Aws sdk Cognito AdminCreateUser设置密码并确认
使用Cognito的Aws sdk Cognito AdminCreateUser设置密码并确认,aws-sdk,Aws Sdk,使用Cognito的AdminCreateUser时,如何在用户创建时指定永久密码?此外,如何将该用户设置为“已确认”?从大量文档中挖掘出来,这至少需要两个步骤-使用临时密码创建用户,并通过设置永久密码“完成”其注册。发布NodeJS解决方案 首先,使用SDK使用临时(未真正使用)密码创建用户: 从“aws sdk”导入{CognitoIdentityService Provider}; const adminCreateUser=async( 用户名:string, 密码:string ):承
AdminCreateUser
时,如何在用户创建时指定永久密码?此外,如何将该用户设置为“已确认”?从大量文档中挖掘出来,这至少需要两个步骤-使用临时密码创建用户,并通过设置永久密码“完成”其注册。发布NodeJS解决方案
从“aws sdk”导入{CognitoIdentityService Provider};
const adminCreateUser=async(
用户名:string,
密码:string
):承诺=>{
返回新承诺((解决、拒绝)=>{
新CognitoIdentityServiceProvider({
区域:“”,
accessKeyId:“我们需要调用authenticateUser
来触发NewPasswordRequired
回调,在这种情况下,我们使用永久密码调用completeNewPasswordChallenge
:
导入{
身份验证详细信息,
认知用户,
CognitoUserPool,
}来自“亚马逊cognito身份js”;
export const cognitoPool:CognitoUserPool=new CognitoUserPool({
用户池ID:“”,
客户端ID:“”,
});
导出常量adminConfirmUser=async(
用户名:string,
密码:string
):承诺=>{
返回新承诺((解决、拒绝)=>{
const cognitoUser=新的cognitoUser({
用户名:用户名,
池:cognitoPool,
});
cognitoUser.authenticateUser(
新的身份验证详细信息({
用户名:用户名,
密码:密码,
}),
{
onSuccess:(会话,需要用户确认)=>{
//用户已确认
解决();
},
onFailure:err=>{
//错误
拒绝(错误);
},
newPasswordRequired:(userAttributes,requiredAttributes)=>{
cognitoUser.completeNewPasswordChallenge(密码,null{
onSuccess:session=>{
//用户确认
解决();
},
onFailure:err=>{
//确认用户时出错
拒绝(错误);
},
});
},
}
);
});
};
请注意,在确认用户注册时,您可能需要传递所需的属性,这取决于您设置Cognito池的方式