[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
ただいまコメントを受けつけておりません。
どうやればいいのか少し試行錯誤が必要だったのでメモ的に
const AWS = require('aws-sdk');
/*******
* MY_ACCESS_KEY と MY_SECRET_ACCESS_KEY は
* https://aws.amazon.com/jp/developers/access-keys/ の手順を参考に取得・代入
*
* MY_ACCOUNT_NAME は AWS アカウントの名前。
* 10桁~の数字になる
*
* MY_IAM_NAME は利用する IAM の名前
*
* MY_MFA_TOKEN は MFA のワンタイムトークン。
* https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/id_credentials_mfa_enable_virtual.html を参考に設定する
*/
const sts = new AWS.STS({
accessKeyId: MY_ACCESS_KEY,
secretAccessKey: MY_SECRET_ACCESS_KEY
});
sts.getSessionToken({
SerialNumber: `arn:aws:iam::${MY_ACCOUNT_NAME}:mfa/${MY_IAM_NAME}`,
TokenCode: MY_MFA_TOKEN,
DurationSeconds: 1800, // 30mins
}, (err, data) => {
if(err) {
console.error(err);
} else {
(new AWS.EC2({
region: 'ap-northeast-1',
credentials: sts.credentialsFrom(data)
// describeSecurityGroups を実行する理由はとくにはない。
// 私がよく使うコマンドだった、というだけ
})).describeSecurityGroups({}, (err, sg) => {
if(err) {
console.log('ERROR');
console.log(err);
} else {
console.log(JSON.stringify(sg, null, '\t'));
}
});
}
}
);ただいまコメントを受けつけておりません。