Raj*_*ath 4 node.js amazon-cognito
如何从 nodejs 中的 * cognito * 中删除用户帐户。
我正在尝试从cognito 中删除用户,但它对我不起作用。
AWS 配置
const AWS = require('aws-sdk');
const cognitoidentityserviceprovider = new AWS.CognitoIdentityServiceProvider();
池配置
const poolConfig = {
UserPoolId: keys.cognito.userPoolId,
ClientId: keys.cognito.clientId
};
以上配置位于以下删除功能之上。
删除功能
function deleteUserFunc(req, decodedToken) {
return new Promise((resolve, reject) => {
const decodedEmailid = decodedToken.email;
const decodedSub = decodedToken.sub;
try {
const userDetails = { Username: decodedSub, Pool: userPool };
console.log('DEBUG : ' + JSON.stringify(userDetails));
const cognitoUser = new AmazonCognitoIdentity.CognitoUser(userDetails);
// Attempting to delete the user
cognitoidentityserviceprovider.adminDeleteUser({
UserPoolId: keys.cognito.userPoolId,
Username: decodedEmailid
}, (err, data)=>
if(err) {
return reject({
error: err.message
});
} else {
return resolve({
error: null
});
}
}).promise().catch(err=>{
return reject({
error: err.message
});
});
console.log('User deleteion status : ' + result);
return resolve({
error: null,
});
});
} catch (err) {
return reject({
error: err,
});
}
});
}
Run Code Online (Sandbox Code Playgroud)
我也尝试删除用户,
const userDetails = { Username: decodedEmailId, Pool: userPool }但没有用。
任何帮助将不胜感激。
尝试这个:
const AWS = require('aws-sdk');
AWS.config.update({
accessKeyId: 'access key id',
secretAccessKey: 'secret access key',
region: 'region',
});
const cognito = new AWS.CognitoIdentityServiceProvider();
await cognito.adminDeleteUser({
UserPoolId: 'pool id',
Username: 'username',
}).promise();
Run Code Online (Sandbox Code Playgroud)
请注意,您在 sdk 中使用的访问令牌应该cognito-idp:AdminDeleteUser对所需的池具有权限。
| 归档时间: |
|
| 查看次数: |
3807 次 |
| 最近记录: |