我查看了类似的问题,但无法解决我的问题.我正在开发一个Web应用程序,用户将使用AWS Cognito的身份验证进行身份验证.注册部分没问题,但是当我尝试登录时,我收到了"未授权"的例外情况.我已经尝试将自定义策略附加到我的IAM角色(授权sts:AssumeRoleWithWebIdentity),但是没有用.以下是代码的编写方式:
var cognitoUser = new AWSCognito.CognitoIdentityServiceProvider.CognitoUser(userData);
cognitoUser.authenticateUser(authenticationDetails, {
onSuccess: function (result) {
var sts = new AWS.STS({apiVersion: '2011-06-15'});
var params = {
RoleArn: 'arn:aws:iam::981601120657:role/Cognito_AliceAuth_Role', /* required */
RoleSessionName: 'AliceUserSession',
WebIdentityToken: result.getIdToken().getJwtToken(),
Policy: '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "sts:AssumeRoleWithWebIdentity", "Resource": "*" } ] }'
};
sts.assumeRoleWithWebIdentity(params, function (err, data) {
if (err)
console.log(err, err.stack); // ** <-- ERROR HERE
else
console.log(data); // successful response
});
//document.getElementById('authForm').submit();
},
onFailure: function (err) {
alert(err);
}
});
Run Code Online (Sandbox Code Playgroud)
如您所见,我也在代码中指定了策略,但我仍然得到"AccessDenied:未授权执行sts:AssumeRoleWithWebIdentity"错误.请帮我 :/ …
我正在尝试获得访问用户公共个人资料的权限,以便我可以向使用应用程序的其他人提供此人个人资料的链接。
在 api 响应中,我们有一个“链接”,但它是一个https://facebook.com/ ... 链接,而不是像这样的意图链接fb://profile/<id>
那么如何在没有全局用户 ID 和用户名的情况下创建此链接呢?
我也尝试过使用fb://facewebmodal/f?href=<link>,但它会将我重定向到我自己的 Facebook 主页(提要)
谢谢你!