2017-10-18 137 views
0

我們一直在嘗試在我們的Cognito用戶池中創建用戶,但不斷髮現一個相當奇怪的錯誤。堆棧跟蹤如下所示:無法在AWS Cognito中以管理員身份創建用戶

{ 
    "errorMessage": "Not Found", 
    "errorType": "UnknownError", 
    "stackTrace": [ 
    "Request.extractError (/var/task/node_modules/aws-sdk/lib/protocol/json.js:48:27)", 
    "Request.callListeners (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:105:20)", 
    "Request.emit (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:77:10)", 
    "Request.emit (/var/task/node_modules/aws-sdk/lib/request.js:683:14)", 
    "Request.transition (/var/task/node_modules/aws-sdk/lib/request.js:22:10)", 
    "AcceptorStateMachine.runTo (/var/task/node_modules/aws-sdk/lib/state_machine.js:14:12)", 
    "/var/task/node_modules/aws-sdk/lib/state_machine.js:26:10", 
    "Request.<anonymous> (/var/task/node_modules/aws-sdk/lib/request.js:38:9)", 
    "Request.<anonymous> (/var/task/node_modules/aws-sdk/lib/request.js:685:12)", 
    "Request.callListeners (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:115:18)" 
    ] 
} 

這是我們在Lambda中執行的代碼。 Lambda函數本身由API Gateway調用,無需代理集成。

const AWS = require('aws-sdk'); 

AWS.config.update({ 
    region: "ap-south-1", 
    endpoint: "https://dynamodb.ap-south-1.amazonaws.com", 
}); 

const docClient = new AWS.DynamoDB.DocumentClient(); 
const cispClient = new AWS.CognitoIdentityServiceProvider({ 
    region: 'us-east-1' 
}); 

const table = process.env.TABLE_NAME || "User_Info_Test"; 

exports.newDriverCreated = function (event, context) { 

    console.log('event: ', event); 

    // Get username, password 
    const username = event.username; 
    const password = event.password; 

    // Get first and last name 
    const firstName = event.name; 
    const lastName = event.family_name; 

    // Get phone number 
    const phone = event.phone; 

    const driverData = { 
    "TemporaryPassword": password, 
    "UserAttributes": [ 
     { 
     "Name": "phone_number", 
     "Value": phone, 
     }, 
     { 
     "Name": "first_name", 
     "Value": firstName, 
     }, 
     { 
     "Name": "family_name", 
     "Value": lastName, 
     }, 
    ], 
    "Username": username, 
    "UserPoolId": 'user-pool-id', 
    "ValidationData": [ 
     { 
     "Name": "phone_number", 
     "Value": phone 
     } 
    ] 
    } 

    cispClient.adminCreateUser(driverData, (err, data) => { 
    if (err) { 
     console.error('adminCreateUser error: ', err); 
     context.done(err); 
    } else { 
     console.log('adminCreateUser data: ', data); 
     context.done(null, data); 
    } 

    }); 

} 

當我們調用adminCreateUser()函數時會發生錯誤。我們完全不知道會出現什麼問題,因爲我們對整個AWS真的很陌生。

任何幫助將不勝感激。

謝謝。

+0

這個lambda有什麼作用? – Kannaiyan

+0

你試圖在'us-east-1'中執行cognito,而你的區域設置爲「ap-south-1」 – Harrison

回答

相關問題