@sungly/cognito-cli
Version:
CLI for all Cognito user life cycle management
144 lines (113 loc) • 4.49 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _regenerator = require('babel-runtime/regenerator');
var _regenerator2 = _interopRequireDefault(_regenerator);
var _asyncToGenerator2 = require('babel-runtime/helpers/asyncToGenerator');
var _asyncToGenerator3 = _interopRequireDefault(_asyncToGenerator2);
var userPasswordAuth = function () {
var _ref3 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee(_ref2) {
var username = _ref2.username,
password = _ref2.password;
var clientId, clientSecret, authParams, params;
return _regenerator2.default.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
clientId = _config2.default.clientId, clientSecret = _config2.default.clientSecret;
authParams = clientSecretCheck({
username: username,
password: password,
clientId: clientId,
clientSecret: clientSecret
});
params = {
AuthFlow: 'USER_PASSWORD_AUTH',
ClientId: _config2.default.clientId,
AuthParameters: authParams
};
_context.next = 5;
return _util.cognitoClient.initiateAuth(params).promise();
case 5:
return _context.abrupt('return', _context.sent);
case 6:
case 'end':
return _context.stop();
}
}
}, _callee, this);
}));
return function userPasswordAuth(_x) {
return _ref3.apply(this, arguments);
};
}();
var _prompt = require('prompt');
var _prompt2 = _interopRequireDefault(_prompt);
var _util = require('../../util');
var _config = require('../../config');
var _config2 = _interopRequireDefault(_config);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function clientSecretCheck(_ref) {
var username = _ref.username,
password = _ref.password,
clientId = _ref.clientId,
clientSecret = _ref.clientSecret;
var authParams = {
USERNAME: username,
PASSWORD: password
};
if (clientSecret) {
authParams.SECRET_HASH = (0, _util.hash)({
username: username,
clientId: clientId,
clientSecret: clientSecret
});
}
return authParams;
}
function login() {
var _this = this;
_prompt2.default.start();
_prompt2.default.get([{
name: 'username',
required: true
}, {
name: 'password',
hidden: true
}], function () {
var _ref4 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee2(err, result) {
var res;
return _regenerator2.default.wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
_util.logger.info('message: Logging in...');
_context2.prev = 1;
_context2.next = 4;
return userPasswordAuth({
username: result.username,
password: result.password
});
case 4:
res = _context2.sent;
_util.logger.info(res);
_context2.next = 11;
break;
case 8:
_context2.prev = 8;
_context2.t0 = _context2['catch'](1);
_util.logger.error(_context2.t0.message);
case 11:
case 'end':
return _context2.stop();
}
}
}, _callee2, _this, [[1, 8]]);
}));
return function (_x2, _x3) {
return _ref4.apply(this, arguments);
};
}());
}
exports.default = login;