0
如何在Lambda函數中獲取用戶?用戶在Cognito中進行身份驗證並使用API網關調用lambda。 API網關方法具有AWS_IAM授權者並選中「使用Lambda代理集成」複選框將AWS Lambda與Cognito和API網關一起使用
如何在Lambda函數中獲取用戶?用戶在Cognito中進行身份驗證並使用API網關調用lambda。 API網關方法具有AWS_IAM授權者並選中「使用Lambda代理集成」複選框將AWS Lambda與Cognito和API網關一起使用
如果您已經檢查了AWS_IAM API網關,最終用戶的身份可用於您的功能。您可以按如下方式訪問身份證件。
exports.handler = function(event, context) {
var identity = event.requestContext.identity.cognitoIdentityId;
console.log("clientID = " + identity);
context.succeed("Your client ID is " + identity);
}
然後使用AWS SDK for Cognito調用describeIdentity-property
方法,你應該能夠檢索可用於識別的附加信息。
var params = {
IdentityId: 'STRING_VALUE' /* required */
};
cognitoidentity.describeIdentity(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
沒有context.identity屬性。我使用https調用API https://www.npmjs.com/package/aws-api-gateway-client 上下文對象具有以下屬性:callbackWaitsForEmptyEventLoop,logGroupName,logStreamName,functionName,memoryLimitInMB,functionVersion,invokeid,awsRequestId,invokedFunctionArn – Ildar
但是,事件對象中是event.requestContext.identity.cognitoIdentityId。謝謝 – Ildar
我檢查了移動SDK的調用。但是,謝謝你會相應地更新答案。 – Ashan