angularjs – AWS Cognito来自Developer身份验证的令牌无效登录
发布时间:2020-12-17 10:22:56 所属栏目:安全 来源:网络整理
导读:我想直接从角度js上的浏览器将对象放到AWS S3. 为此,我使用了cognito开发人员身份验证. 我从我的rails服务器获得了cognito身份标识和令牌. 使用该令牌(我认为它是有效的),我的put操作被拒绝来自AWS S3:无效的登录令牌. 我不知道为什么.. 这是我的代码. AWS.
我想直接从角度js上的浏览器将对象放到AWS S3.
为此,我使用了cognito开发人员身份验证. 我从我的rails服务器获得了cognito身份标识和令牌. 使用该令牌(我认为它是有效的),我的put操作被拒绝来自AWS S3:无效的登录令牌. 这是我的代码. AWS.config.region = 'us-east-1'; AWS.config.credentials = new AWS.CognitoIdentityCredentials({ AccountId: '0000',IdentityPoolId: 'us-east-1:0000-0000-0000',RoleArn: 'arn:aws:iam::0000:role/myRoleName',Logins: { 'cognito-identity.amazonaws.com': 'token from cognito.get_open_id_token_for_developer_identity' } }); var bucket = new AWS.S3({ params: { Region: 'ap-northeast-1',Bucket: 'my bucket name' }}); (0000部分只是样品) 我在我的角色(myRoleName)中添加了对托管策略的s3完全访问权限,并将以下设置添加到内联策略. (我还在内联策略中添加了’以下设置的资源*版本’) { "Version": "2012-10-17","Statement": [ { "Sid": "0000","Effect": "Allow","Action": [ "s3:GetObject","s3:PutObject" ],"Resource": [ "arn:aws:s3:::myBucketName" ] } ] }
看起来您正在尝试使用“基本authflow”.以下是我们关于身份验证流程的文档的链接:
http://docs.aws.amazon.com/cognito/devguide/identity/concepts/authentication-flow/#developer-authenticated-identities-authflow
这不是使用您在登录映射中提供的令牌. 我建议使用“增强的authflow”.去做这个: (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |