【发布时间】:2020-08-17 19:53:31
【问题描述】:
目前我正在使用以下代码访问亚马逊组织服务:
<!DOCTYPE html>
<html>
<head>
<title>AWS SDK for JavaScript - Sample Application</title>
<script src="http://localhost:8000/aws-sdk-2.417.0.min.js"></script>
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
</head>
<body>
<div id="results"></div>
<script type="text/javascript">
var params = {}
AWS.config.update({
region: 'us-east-1',
accessKeyId: '***********',
secretAccessKey: '*************'
});
var organizations = new AWS.Organizations();
organizations.listAccounts(params, function (err, data) {
if (err) console.log(err, err.stack); // an error occurred
else // successful response
var accts = []
console.log(data)
$('#results').append("<ul id='newList'></ul>");
for(var i = 0; i < data['Accounts'].length; i++) {
$("#newList").append("<li>"+ data['Accounts'][i]['Id'] + ":" + data['Accounts'][i]['Name']+"</li>");
accts.push({"id": data['Accounts'][i]['Id'], "name": data['Accounts'][i]['Name']});
}
console.log(accts);
});
</script>
</body>
</html>
在我的生产系统中,有没有一种方法可以让客户使用他们的 AWS 账户登录,然后无需获取访问密钥和密钥?
【问题讨论】:
-
你必须使用来自服务器的 aws-sdk,这个开发者也有同样的问题.. 这里链接。 stackoverflow.com/questions/54993479/…
-
我想访问客户的账户,所以访问凭证应该是客户的。它必须在网页上完成。通过提供凭据或通过 sso 等效行为。
-
你可能想要进入 Assume Role 方向...docs.aws.amazon.com/cli/latest/userguide/…
-
@nishantpathak 您将 AWS 访问密钥和秘密密钥作为您客户的输入并执行此操作
标签: aws-sdk aws-sdk-js aws-organizations