setSTSToken.js 906 B

1234567891011121314151617181920212223242526
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. exports.setSTSToken = void 0;
  4. const formatObjKey_1 = require("./formatObjKey");
  5. async function setSTSToken() {
  6. if (!this.options)
  7. this.options = {};
  8. let credentials = await this.options.refreshSTSToken();
  9. credentials = formatObjKey_1.formatObjKey(credentials, 'firstLowerCase');
  10. if (credentials.securityToken) {
  11. credentials.stsToken = credentials.securityToken;
  12. }
  13. checkCredentials(credentials);
  14. Object.assign(this.options, credentials);
  15. }
  16. exports.setSTSToken = setSTSToken;
  17. function checkCredentials(obj) {
  18. const stsTokenKey = ['accessKeySecret', 'accessKeyId', 'stsToken'];
  19. const objKeys = Object.keys(obj);
  20. stsTokenKey.forEach(_ => {
  21. if (!objKeys.find(key => key === _)) {
  22. throw Error(`refreshSTSToken must return contains ${_}`);
  23. }
  24. });
  25. }