@node-c/domain-iam 1.0.0-beta6 → 1.0.0-beta8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/common/definitions/common.constants.d.ts +13 -9
- package/dist/common/definitions/common.constants.js +13 -10
- package/dist/common/definitions/common.constants.js.map +1 -1
- package/dist/services/authentication/iam.authentication.definitions.d.ts +11 -2
- package/dist/services/authentication/iam.authentication.definitions.js +1 -1
- package/dist/services/authentication/iam.authentication.service.d.ts +9 -4
- package/dist/services/authentication/iam.authentication.service.js +95 -4
- package/dist/services/authentication/iam.authentication.service.js.map +1 -1
- package/dist/services/authenticationConsumer/iam.authenticationConsumer.definitions.d.ts +15 -0
- package/dist/services/authenticationConsumer/iam.authenticationConsumer.definitions.js +3 -0
- package/dist/services/authenticationConsumer/iam.authenticationConsumer.definitions.js.map +1 -0
- package/dist/services/authenticationConsumer/iam.authenticationConsumer.service.d.ts +12 -0
- package/dist/services/authenticationConsumer/iam.authenticationConsumer.service.js +135 -0
- package/dist/services/authenticationConsumer/iam.authenticationConsumer.service.js.map +1 -0
- package/dist/services/authenticationConsumer/index.d.ts +2 -0
- package/dist/services/authenticationConsumer/index.js +19 -0
- package/dist/services/authenticationConsumer/index.js.map +1 -0
- package/dist/services/{userManager/iam.userManager.definitions.d.ts → authenticationManager/iam.authenticationManager.definitions.d.ts} +11 -15
- package/dist/services/authenticationManager/iam.authenticationManager.definitions.js +8 -0
- package/dist/services/authenticationManager/iam.authenticationManager.definitions.js.map +1 -0
- package/dist/services/authenticationManager/iam.authenticationManager.service.d.ts +33 -0
- package/dist/services/{userManager/iam.userManager.service.js → authenticationManager/iam.authenticationManager.service.js} +140 -72
- package/dist/services/authenticationManager/iam.authenticationManager.service.js.map +1 -0
- package/dist/services/authenticationManager/index.d.ts +2 -0
- package/dist/services/authenticationManager/index.js +19 -0
- package/dist/services/authenticationManager/index.js.map +1 -0
- package/dist/services/authenticationOAuth2/iam.authenticationOAuth2.definitions.d.ts +5 -2
- package/dist/services/authenticationOAuth2/iam.authenticationOAuth2.service.d.ts +2 -14
- package/dist/services/authenticationOAuth2/iam.authenticationOAuth2.service.js +53 -95
- package/dist/services/authenticationOAuth2/iam.authenticationOAuth2.service.js.map +1 -1
- package/dist/services/authenticationOAuth2Consumer/iam.authenticationOAuth2Consumer.definitions.d.ts +19 -0
- package/dist/services/authenticationOAuth2Consumer/iam.authenticationOAuth2Consumer.definitions.js +3 -0
- package/dist/services/authenticationOAuth2Consumer/iam.authenticationOAuth2Consumer.definitions.js.map +1 -0
- package/dist/services/authenticationOAuth2Consumer/iam.authenticationOAuth2Consumer.service.d.ts +11 -0
- package/dist/services/authenticationOAuth2Consumer/iam.authenticationOAuth2Consumer.service.js +69 -0
- package/dist/services/authenticationOAuth2Consumer/iam.authenticationOAuth2Consumer.service.js.map +1 -0
- package/dist/services/authenticationOAuth2Consumer/index.d.ts +2 -0
- package/dist/services/authenticationOAuth2Consumer/index.js +19 -0
- package/dist/services/authenticationOAuth2Consumer/index.js.map +1 -0
- package/dist/services/authenticationPassthrough/iam.authenticationPassthrough.definitions.d.ts +14 -0
- package/dist/services/authenticationPassthrough/iam.authenticationPassthrough.definitions.js +3 -0
- package/dist/services/authenticationPassthrough/iam.authenticationPassthrough.definitions.js.map +1 -0
- package/dist/services/authenticationPassthrough/iam.authenticationPassthrough.service.d.ts +9 -0
- package/dist/services/authenticationPassthrough/iam.authenticationPassthrough.service.js +70 -0
- package/dist/services/authenticationPassthrough/iam.authenticationPassthrough.service.js.map +1 -0
- package/dist/services/authenticationPassthrough/index.d.ts +2 -0
- package/dist/services/authenticationPassthrough/index.js +19 -0
- package/dist/services/authenticationPassthrough/index.js.map +1 -0
- package/dist/services/authenticationPassthroughConsumer/iam.authenticationPassthroughConsumer.definitions.d.ts +18 -0
- package/dist/services/authenticationPassthroughConsumer/iam.authenticationPassthroughConsumer.definitions.js +3 -0
- package/dist/services/authenticationPassthroughConsumer/iam.authenticationPassthroughConsumer.definitions.js.map +1 -0
- package/dist/services/authenticationPassthroughConsumer/iam.authenticationPassthroughConsumer.service.d.ts +10 -0
- package/dist/services/authenticationPassthroughConsumer/iam.authenticationPassthroughConsumer.service.js +68 -0
- package/dist/services/authenticationPassthroughConsumer/iam.authenticationPassthroughConsumer.service.js.map +1 -0
- package/dist/services/authenticationPassthroughConsumer/index.d.ts +2 -0
- package/dist/services/authenticationPassthroughConsumer/index.js +19 -0
- package/dist/services/authenticationPassthroughConsumer/index.js.map +1 -0
- package/dist/services/authenticationUserLocal/iam.authenticationUserLocal.definitions.d.ts +2 -2
- package/dist/services/authenticationUserLocal/iam.authenticationUserLocal.service.d.ts +2 -6
- package/dist/services/authenticationUserLocal/iam.authenticationUserLocal.service.js +4 -8
- package/dist/services/authenticationUserLocal/iam.authenticationUserLocal.service.js.map +1 -1
- package/dist/services/authenticationUserLocalConsumer/iam.authenticationUserLocalConsumer.definitions.d.ts +8 -0
- package/dist/services/authenticationUserLocalConsumer/iam.authenticationUserLocalConsumer.definitions.js +3 -0
- package/dist/services/authenticationUserLocalConsumer/iam.authenticationUserLocalConsumer.definitions.js.map +1 -0
- package/dist/services/authenticationUserLocalConsumer/iam.authenticationUserLocalConsumer.service.d.ts +8 -0
- package/dist/services/authenticationUserLocalConsumer/iam.authenticationUserLocalConsumer.service.js +36 -0
- package/dist/services/authenticationUserLocalConsumer/iam.authenticationUserLocalConsumer.service.js.map +1 -0
- package/dist/services/authenticationUserLocalConsumer/index.d.ts +2 -0
- package/dist/services/authenticationUserLocalConsumer/index.js +19 -0
- package/dist/services/authenticationUserLocalConsumer/index.js.map +1 -0
- package/dist/services/authorization/iam.authorization.definitions.d.ts +24 -24
- package/dist/services/authorization/iam.authorization.definitions.js +7 -7
- package/dist/services/authorization/iam.authorization.definitions.js.map +1 -1
- package/dist/services/authorization/iam.authorization.service.d.ts +8 -11
- package/dist/services/authorization/iam.authorization.service.js +26 -30
- package/dist/services/authorization/iam.authorization.service.js.map +1 -1
- package/dist/services/index.d.ts +7 -1
- package/dist/services/index.js +7 -1
- package/dist/services/index.js.map +1 -1
- package/dist/services/tokenManager/iam.tokenManager.definitions.d.ts +4 -1
- package/dist/services/tokenManager/iam.tokenManager.definitions.js.map +1 -1
- package/dist/services/tokenManager/iam.tokenManager.service.d.ts +2 -2
- package/dist/services/tokenManager/iam.tokenManager.service.js +73 -35
- package/dist/services/tokenManager/iam.tokenManager.service.js.map +1 -1
- package/dist/services/users/index.d.ts +2 -0
- package/dist/services/{userManager → users}/index.js +2 -2
- package/dist/services/users/index.js.map +1 -0
- package/dist/services/users/users.definitions.d.ts +7 -0
- package/dist/services/users/users.definitions.js +3 -0
- package/dist/services/users/users.definitions.js.map +1 -0
- package/dist/services/users/users.service.d.ts +6 -0
- package/dist/services/users/users.service.js +39 -0
- package/dist/services/users/users.service.js.map +1 -0
- package/package.json +2 -2
- package/src/common/definitions/common.constants.ts +13 -16
- package/src/services/authentication/iam.authentication.definitions.ts +11 -4
- package/src/services/authentication/iam.authentication.service.ts +79 -15
- package/src/services/authenticationConsumer/iam.authenticationConsumer.definitions.ts +43 -0
- package/src/services/authenticationConsumer/iam.authenticationConsumer.service.ts +192 -0
- package/src/services/authenticationConsumer/index.ts +2 -0
- package/src/services/{userManager/iam.userManager.definitions.ts → authenticationManager/iam.authenticationManager.definitions.ts} +11 -19
- package/src/services/{userManager/iam.userManager.service.ts → authenticationManager/iam.authenticationManager.service.ts} +174 -111
- package/src/services/authenticationManager/index.ts +2 -0
- package/src/services/authenticationOAuth2/iam.authenticationOAuth2.definitions.ts +6 -3
- package/src/services/authenticationOAuth2/iam.authenticationOAuth2.service.ts +97 -85
- package/src/services/authenticationOAuth2Consumer/iam.authenticationOAuth2Consumer.definitions.ts +56 -0
- package/src/services/authenticationOAuth2Consumer/iam.authenticationOAuth2Consumer.service.ts +93 -0
- package/src/services/authenticationOAuth2Consumer/index.ts +2 -0
- package/src/services/authenticationPassthrough/iam.authenticationPassthrough.definitions.ts +32 -0
- package/src/services/authenticationPassthrough/iam.authenticationPassthrough.service.ts +100 -0
- package/src/services/authenticationPassthrough/index.ts +2 -0
- package/src/services/authenticationPassthroughConsumer/iam.authenticationPassthroughConsumer.definitions.ts +52 -0
- package/src/services/authenticationPassthroughConsumer/iam.authenticationPassthroughConsumer.service.ts +96 -0
- package/src/services/authenticationPassthroughConsumer/index.ts +2 -0
- package/src/services/authenticationUserLocal/iam.authenticationUserLocal.definitions.ts +3 -3
- package/src/services/authenticationUserLocal/iam.authenticationUserLocal.service.ts +17 -12
- package/src/services/authenticationUserLocalConsumer/iam.authenticationUserLocalConsumer.definitions.ts +29 -0
- package/src/services/authenticationUserLocalConsumer/iam.authenticationUserLocalConsumer.service.ts +40 -0
- package/src/services/authenticationUserLocalConsumer/index.ts +2 -0
- package/src/services/authorization/iam.authorization.definitions.ts +26 -27
- package/src/services/authorization/iam.authorization.service.ts +40 -65
- package/src/services/index.ts +7 -1
- package/src/services/tokenManager/iam.tokenManager.definitions.ts +4 -1
- package/src/services/tokenManager/iam.tokenManager.service.ts +98 -45
- package/src/services/users/index.ts +2 -0
- package/src/services/users/users.definitions.ts +11 -0
- package/src/services/users/users.service.ts +46 -0
- package/dist/services/userManager/iam.userManager.definitions.js +0 -8
- package/dist/services/userManager/iam.userManager.definitions.js.map +0 -1
- package/dist/services/userManager/iam.userManager.service.d.ts +0 -33
- package/dist/services/userManager/iam.userManager.service.js.map +0 -1
- package/dist/services/userManager/index.d.ts +0 -2
- package/dist/services/userManager/index.js.map +0 -1
- package/src/services/userManager/index.ts +0 -2
|
@@ -23,36 +23,37 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
23
23
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.
|
|
26
|
+
exports.IAMAuthenticationManagerService = void 0;
|
|
27
27
|
const core_1 = require("@node-c/core");
|
|
28
28
|
const lodash_1 = __importDefault(require("lodash"));
|
|
29
|
-
const
|
|
29
|
+
const iam_authenticationManager_definitions_1 = require("./iam.authenticationManager.definitions");
|
|
30
|
+
const definitions_1 = require("../../common/definitions");
|
|
30
31
|
const authentication_1 = require("../authentication");
|
|
31
32
|
const tokenManager_1 = require("../tokenManager");
|
|
32
|
-
class
|
|
33
|
-
constructor(authServices, configProvider,
|
|
33
|
+
class IAMAuthenticationManagerService {
|
|
34
|
+
constructor(authServices, configProvider, logger, moduleName, dataUsersAuthCacheService, domainUsersEntityService, tokenManager) {
|
|
34
35
|
this.authServices = authServices;
|
|
35
36
|
this.configProvider = configProvider;
|
|
36
|
-
this.dataUsersAuthCacheService = dataUsersAuthCacheService;
|
|
37
|
-
this.domainUsersEntityService = domainUsersEntityService;
|
|
38
37
|
this.logger = logger;
|
|
39
38
|
this.moduleName = moduleName;
|
|
39
|
+
this.dataUsersAuthCacheService = dataUsersAuthCacheService;
|
|
40
|
+
this.domainUsersEntityService = domainUsersEntityService;
|
|
40
41
|
this.tokenManager = tokenManager;
|
|
41
42
|
}
|
|
42
|
-
|
|
43
|
+
authenticate(options) {
|
|
43
44
|
return __awaiter(this, void 0, void 0, function* () {
|
|
44
45
|
var _a;
|
|
45
|
-
const { configProvider, logger, moduleName } = this;
|
|
46
|
+
const { configProvider, logger, moduleName, tokenManager } = this;
|
|
46
47
|
const moduleConfig = configProvider.config.domain[moduleName];
|
|
47
48
|
const { accessTokenExpiryTimeInMinutes, defaultUserIdentifierField, refreshTokenExpiryTimeInHours } = moduleConfig;
|
|
48
49
|
const { auth: { type: authType }, rememberUser } = options;
|
|
49
|
-
logger.info(`[Domain.${moduleName}.
|
|
50
|
+
logger.info(`[Domain.${moduleName}.AuthenticationManager][${authType}]: Login attempt started${options.step ? ` for step ${options.step}` : ''}.`);
|
|
50
51
|
const authService = this.authServices[authType];
|
|
51
52
|
if (!authService) {
|
|
52
|
-
logger.info(`[Domain.${moduleName}.
|
|
53
|
+
logger.info(`[Domain.${moduleName}.AuthenticationManager][${authType}]: No authService ${authType} found.`);
|
|
53
54
|
throw new core_1.ApplicationError('Authentication failed.');
|
|
54
55
|
}
|
|
55
|
-
const authServiceBehaviorConfig = authService.
|
|
56
|
+
const authServiceBehaviorConfig = authService.getUserAuthenticationConfig();
|
|
56
57
|
let externalAccessToken;
|
|
57
58
|
let externalRefreshToken;
|
|
58
59
|
let issueTokens = false;
|
|
@@ -74,17 +75,27 @@ class IAMUserManagerService {
|
|
|
74
75
|
}), { stepResult, user } = _b, otherStepData = __rest(_b, ["stepResult", "user"]);
|
|
75
76
|
if (step === core_1.AppConfigDomainIAMAuthenticationStep.Initiate && !stepResult.mfaUsed) {
|
|
76
77
|
issueTokens = true;
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
78
|
+
if (!('skipCompleteStepAllowedOnNoMFA' in stepConfig && stepConfig.skipCompleteStepAllowedOnNoMFA)) {
|
|
79
|
+
step = core_1.AppConfigDomainIAMAuthenticationStep.Complete;
|
|
80
|
+
stepConfig = authServiceBehaviorConfig[step];
|
|
81
|
+
const finalStepData = yield this.executeStep(options, {
|
|
82
|
+
authService,
|
|
83
|
+
name: step,
|
|
84
|
+
stepConfig: lodash_1.default.omit(stepConfig, 'cache')
|
|
85
|
+
});
|
|
86
|
+
stepResult = lodash_1.default.merge(lodash_1.default.omit(stepResult, ['mfaUsed', 'mfaValid', 'valid']), finalStepData.stepResult);
|
|
87
|
+
user = user !== null && user !== void 0 ? user : finalStepData.user;
|
|
88
|
+
userFilterField = finalStepData.userFilterField;
|
|
89
|
+
userFilterValue = finalStepData.userFilterValue;
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
if ('userFilterField' in stepResult) {
|
|
93
|
+
userFilterField = stepResult.userFilterField;
|
|
94
|
+
}
|
|
95
|
+
if ('userFilterValue' in stepResult) {
|
|
96
|
+
userFilterValue = stepResult.userFilterValue;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
88
99
|
}
|
|
89
100
|
const actualStepResult = stepResult;
|
|
90
101
|
if (!userFilterField && otherStepData.userFilterField) {
|
|
@@ -95,7 +106,7 @@ class IAMUserManagerService {
|
|
|
95
106
|
}
|
|
96
107
|
if ('useReturnedTokens' in stepConfig && stepConfig.useReturnedTokens && stepConfig.authReturnsTokens) {
|
|
97
108
|
if (!actualStepResult.accessToken) {
|
|
98
|
-
logger.info(`[Domain.${moduleName}.
|
|
109
|
+
logger.info(`[Domain.${moduleName}.AuthenticationManager][${authType}]: Login attempt failed for ${userFilterField} ${userFilterValue} - no accessToken returned from the authService and useReturnedTokens is set to true.`);
|
|
99
110
|
throw new core_1.ApplicationError('Authentication failed.');
|
|
100
111
|
}
|
|
101
112
|
externalAccessToken = actualStepResult.accessToken;
|
|
@@ -104,63 +115,92 @@ class IAMUserManagerService {
|
|
|
104
115
|
}
|
|
105
116
|
}
|
|
106
117
|
if (issueTokens) {
|
|
118
|
+
if (!tokenManager) {
|
|
119
|
+
throw new core_1.ApplicationError(`[${moduleName}][AuthenticationManager] tokenManager not configured.`);
|
|
120
|
+
}
|
|
107
121
|
if (!user) {
|
|
108
|
-
logger.info(`[Domain.${moduleName}.
|
|
122
|
+
logger.info(`[Domain.${moduleName}.AuthenticationManager][${authType}]: Login attempt failed at step ${step} - user is required when issueTokens is set to true.`);
|
|
109
123
|
throw new core_1.ApplicationError('Authentication failed.');
|
|
110
124
|
}
|
|
111
|
-
|
|
125
|
+
const useExternalTokenAsLocal = 'useReturnedTokensAsLocal' in stepConfig && stepConfig.useReturnedTokensAsLocal;
|
|
112
126
|
const userIdentifierValue = user[defaultUserIdentifierField];
|
|
127
|
+
let refreshToken;
|
|
128
|
+
let refreshTokenExpiresIn;
|
|
129
|
+
let refreshTokenTTL;
|
|
113
130
|
if (externalRefreshToken || !externalAccessToken) {
|
|
114
|
-
|
|
115
|
-
|
|
131
|
+
let externalTokenData = {};
|
|
132
|
+
if (externalRefreshToken &&
|
|
133
|
+
'refreshTokenExpiresIn' in actualStepResult &&
|
|
134
|
+
actualStepResult.refreshTokenExpiresIn) {
|
|
135
|
+
externalTokenData = {
|
|
116
136
|
externalToken: externalRefreshToken,
|
|
117
137
|
externalTokenAuthService: authType
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
(
|
|
124
|
-
|
|
138
|
+
};
|
|
139
|
+
refreshTokenExpiresIn = actualStepResult.refreshTokenExpiresIn;
|
|
140
|
+
}
|
|
141
|
+
else if (!rememberUser) {
|
|
142
|
+
refreshTokenExpiresIn =
|
|
143
|
+
(refreshTokenExpiryTimeInHours
|
|
144
|
+
? refreshTokenExpiryTimeInHours
|
|
145
|
+
: definitions_1.Constants.DEFAULT_REFRESH_TOKEN_EXPIRY_TIME_IN_HOURS) * 60;
|
|
146
|
+
}
|
|
147
|
+
if (refreshTokenExpiresIn) {
|
|
148
|
+
refreshTokenTTL =
|
|
149
|
+
refreshTokenExpiresIn *
|
|
150
|
+
(moduleConfig.refreshTokenExpiryStorageTTLMultiplier ||
|
|
151
|
+
definitions_1.Constants.DEFAULT_REFRESH_TOKEN_STORAGE_TTL_MULTIPLIER);
|
|
152
|
+
}
|
|
153
|
+
const { result: { token: localRefreshToken } } = yield tokenManager.create(Object.assign({ type: tokenManager_1.TokenType.Refresh, [iam_authenticationManager_definitions_1.IAMAuthenticationManagerUserTokenUserIdentifier.FieldName]: userIdentifierValue }, externalTokenData), {
|
|
154
|
+
expiresInMinutes: refreshTokenExpiresIn,
|
|
155
|
+
identifierDataField: iam_authenticationManager_definitions_1.IAMAuthenticationManagerUserTokenUserIdentifier.FieldName,
|
|
125
156
|
persist: true,
|
|
126
157
|
purgeOldFromData: true,
|
|
127
|
-
tokenContentOnlyFields: ['externalToken']
|
|
158
|
+
tokenContentOnlyFields: ['externalToken'],
|
|
159
|
+
ttl: refreshTokenTTL,
|
|
160
|
+
useExternalTokenAsLocal
|
|
128
161
|
});
|
|
129
162
|
refreshToken = localRefreshToken;
|
|
130
163
|
}
|
|
131
164
|
const accessTokenExpiresIn = (externalAccessToken && 'accessTokenExpiresIn' in actualStepResult && actualStepResult.accessTokenExpiresIn) ||
|
|
132
|
-
accessTokenExpiryTimeInMinutes
|
|
133
|
-
|
|
165
|
+
accessTokenExpiryTimeInMinutes ||
|
|
166
|
+
definitions_1.Constants.DEFAULT_ACCESS_TOKEN_EXPIRY_TIME_IN_HOURS;
|
|
167
|
+
const accessTokenTTL = refreshTokenExpiresIn ||
|
|
168
|
+
accessTokenExpiresIn *
|
|
169
|
+
(moduleConfig.accessTokenExpiryStorageTTLMultiplier || definitions_1.Constants.DEFAULT_ACCESS_TOKEN_STORAGE_TTL_MULTIPLIER);
|
|
170
|
+
const { result: { token: accessToken } } = yield tokenManager.create(Object.assign({ refreshToken, type: tokenManager_1.TokenType.Access, [iam_authenticationManager_definitions_1.IAMAuthenticationManagerUserTokenUserIdentifier.FieldName]: userIdentifierValue }, (externalAccessToken
|
|
134
171
|
? {
|
|
135
172
|
externalToken: externalAccessToken,
|
|
136
173
|
externalTokenAuthService: authType
|
|
137
174
|
}
|
|
138
175
|
: {})), {
|
|
139
176
|
expiresInMinutes: accessTokenExpiresIn,
|
|
140
|
-
identifierDataField:
|
|
177
|
+
identifierDataField: iam_authenticationManager_definitions_1.IAMAuthenticationManagerUserTokenUserIdentifier.FieldName,
|
|
141
178
|
persist: true,
|
|
142
179
|
purgeOldFromData: true,
|
|
143
|
-
tokenContentOnlyFields: ['externalToken', 'refreshToken']
|
|
180
|
+
tokenContentOnlyFields: ['externalToken', 'refreshToken'],
|
|
181
|
+
ttl: accessTokenTTL,
|
|
182
|
+
useExternalTokenAsLocal
|
|
144
183
|
});
|
|
145
|
-
const { result: { token: idToken } } = yield
|
|
184
|
+
const { result: { token: idToken } } = yield tokenManager.create({
|
|
146
185
|
accessToken,
|
|
147
186
|
type: tokenManager_1.TokenType.Id,
|
|
148
187
|
user,
|
|
149
|
-
[
|
|
188
|
+
[iam_authenticationManager_definitions_1.IAMAuthenticationManagerUserTokenUserIdentifier.FieldName]: userIdentifierValue
|
|
150
189
|
}, {
|
|
151
190
|
expiresInMinutes: accessTokenExpiresIn,
|
|
152
|
-
identifierDataField:
|
|
191
|
+
identifierDataField: iam_authenticationManager_definitions_1.IAMAuthenticationManagerUserTokenUserIdentifier.FieldName,
|
|
153
192
|
persist: true,
|
|
154
193
|
purgeOldFromData: true,
|
|
155
|
-
tokenContentOnlyFields: ['accessToken', 'user']
|
|
194
|
+
tokenContentOnlyFields: ['accessToken', 'user'],
|
|
195
|
+
ttl: accessTokenTTL
|
|
156
196
|
});
|
|
157
|
-
logger.info(`[Domain.${moduleName}.
|
|
197
|
+
logger.info(`[Domain.${moduleName}.AuthenticationManager][${authType}]: Login attempt successful for ${userFilterField} ${userFilterValue}.`);
|
|
158
198
|
return { accessToken, idToken, refreshToken, user };
|
|
159
199
|
}
|
|
160
200
|
const returnData = { nextStepsRequired: true };
|
|
161
201
|
if ((_a = stepConfig.stepResultPublicFields) === null || _a === void 0 ? void 0 : _a.length) {
|
|
162
202
|
stepConfig.stepResultPublicFields.forEach(fieldName => {
|
|
163
|
-
(0, core_1.setNested)(returnData, fieldName, (0, core_1.getNested)(stepResult, fieldName, { removeNestedFieldEscapeSign: true }).unifiedValue);
|
|
203
|
+
(0, core_1.setNested)(returnData, fieldName, (0, core_1.getNested)(stepResult, fieldName, { removeNestedFieldEscapeSign: true }).unifiedValue, { removeNestedFieldEscapeSign: true });
|
|
164
204
|
});
|
|
165
205
|
}
|
|
166
206
|
return returnData;
|
|
@@ -168,39 +208,53 @@ class IAMUserManagerService {
|
|
|
168
208
|
}
|
|
169
209
|
executeStep(data, options) {
|
|
170
210
|
return __awaiter(this, void 0, void 0, function* () {
|
|
171
|
-
const { configProvider, domainUsersEntityService, logger, moduleName } = this;
|
|
211
|
+
const { configProvider, dataUsersAuthCacheService, domainUsersEntityService, logger, moduleName } = this;
|
|
172
212
|
const { defaultUserIdentifierField } = configProvider.config.domain[moduleName];
|
|
173
|
-
const _a = data.auth, { type:
|
|
213
|
+
const _a = data.auth, { type: authType } = _a, authData = __rest(_a, ["type"]), { filters: userFilters, mainFilterField } = data;
|
|
174
214
|
const { authService, stepConfig, name: stepName } = options;
|
|
175
215
|
const { cache: cacheSettings, findUser, findUserBeforeAuth, validWithoutUser } = stepConfig;
|
|
176
216
|
const hasFilters = userFilters && Object.keys(userFilters).length;
|
|
217
|
+
const logPrefix = `[Domain.${moduleName}.AuthenticationManager][executeStep][${authType}][${stepName}]`;
|
|
177
218
|
const stepInputData = { data: lodash_1.default.cloneDeep(authData) };
|
|
219
|
+
let runFindUserInExternalTokenPayloads = false;
|
|
178
220
|
let user = null;
|
|
179
221
|
let userFilterField;
|
|
180
222
|
let userFilterValue;
|
|
181
223
|
if (findUser && findUserBeforeAuth) {
|
|
182
224
|
if (!hasFilters) {
|
|
183
|
-
logger.info(
|
|
225
|
+
logger.info(`${logPrefix}[Part 1]: No filters provided for findUserBeforeToken=true.`);
|
|
184
226
|
throw new core_1.ApplicationError('Authentication failed.');
|
|
185
227
|
}
|
|
186
228
|
userFilterField = mainFilterField;
|
|
187
229
|
userFilterValue = userFilters[userFilterField];
|
|
188
230
|
user = yield this.getUserForStepExecution({ filters: userFilters, mainFilterField: userFilterField });
|
|
189
231
|
if (!user) {
|
|
190
|
-
logger.info(
|
|
232
|
+
logger.info(`${logPrefix}[Part 1]: Login attempt failed for ${userFilterField} ${userFilterValue} - user not found.`);
|
|
191
233
|
throw new core_1.ApplicationError('Authentication failed.');
|
|
192
234
|
}
|
|
193
235
|
}
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
236
|
+
if (user) {
|
|
237
|
+
stepInputData.options = {
|
|
238
|
+
context: user,
|
|
239
|
+
contextIdentifierField: defaultUserIdentifierField
|
|
240
|
+
};
|
|
241
|
+
}
|
|
242
|
+
else if (userFilters) {
|
|
243
|
+
stepInputData.options = {
|
|
244
|
+
context: userFilters,
|
|
245
|
+
contextIdentifierField: mainFilterField
|
|
246
|
+
};
|
|
247
|
+
}
|
|
198
248
|
if (cacheSettings && 'use' in cacheSettings && cacheSettings.use) {
|
|
249
|
+
if (!dataUsersAuthCacheService) {
|
|
250
|
+
logger.info(`${logPrefix}[Part 2]: dataUsersAuthCacheService not configured.`);
|
|
251
|
+
throw new core_1.ApplicationError('Authentication failed.');
|
|
252
|
+
}
|
|
199
253
|
const cacheInput = {
|
|
200
254
|
data: stepInputData.data,
|
|
201
255
|
options: stepInputData.options
|
|
202
256
|
};
|
|
203
|
-
const cacheResult = yield
|
|
257
|
+
const cacheResult = yield dataUsersAuthCacheService.findOne({
|
|
204
258
|
filters: {
|
|
205
259
|
[cacheSettings.settings.cacheFieldName]: (0, core_1.getNested)(cacheInput, cacheSettings.settings.inputFieldName)
|
|
206
260
|
.unifiedValue
|
|
@@ -223,8 +277,9 @@ class IAMUserManagerService {
|
|
|
223
277
|
}
|
|
224
278
|
}
|
|
225
279
|
let stepResult = yield authService[stepName](stepInputData.data, stepInputData.options);
|
|
226
|
-
if (!stepResult.valid
|
|
227
|
-
|
|
280
|
+
if ((!stepResult.valid && !stepResult.nextStepsRequired) ||
|
|
281
|
+
(stepResult.mfaUsed && !stepResult.mfaValid)) {
|
|
282
|
+
logger.info(`${logPrefix}[Part 4]: Bad step result:`, stepResult);
|
|
228
283
|
throw new core_1.ApplicationError('Authentication failed.');
|
|
229
284
|
}
|
|
230
285
|
if ('decodeReturnedTokens' in stepConfig && stepConfig.decodeReturnedTokens) {
|
|
@@ -257,6 +312,9 @@ class IAMUserManagerService {
|
|
|
257
312
|
});
|
|
258
313
|
}
|
|
259
314
|
}
|
|
315
|
+
else if ('findUserInExternalTokenPayloads' in stepConfig && stepConfig.findUserInExternalTokenPayloads) {
|
|
316
|
+
runFindUserInExternalTokenPayloads = true;
|
|
317
|
+
}
|
|
260
318
|
else if (hasFilters) {
|
|
261
319
|
userFilterField = mainFilterField;
|
|
262
320
|
userFilterValue = userFilters[userFilterField];
|
|
@@ -266,25 +324,37 @@ class IAMUserManagerService {
|
|
|
266
324
|
});
|
|
267
325
|
}
|
|
268
326
|
}
|
|
269
|
-
|
|
327
|
+
const createUser = 'createUser' in stepConfig && stepConfig.createUser;
|
|
328
|
+
if (!user && (createUser || runFindUserInExternalTokenPayloads)) {
|
|
270
329
|
const userData = yield authService.getUserDataFromExternalTokenPayloads(stepResult);
|
|
271
|
-
if (userData) {
|
|
330
|
+
if (createUser && userData) {
|
|
331
|
+
if (!domainUsersEntityService) {
|
|
332
|
+
logger.info(`${logPrefix}[Part 7]: domainUsersEntityService not configured.`);
|
|
333
|
+
throw new core_1.ApplicationError('Authentication failed.');
|
|
334
|
+
}
|
|
272
335
|
const { result: createdUser } = yield domainUsersEntityService.create(userData);
|
|
273
|
-
user = yield
|
|
336
|
+
user = yield domainUsersEntityService.getUserWithPermissionsData({
|
|
274
337
|
filters: {
|
|
275
338
|
[defaultUserIdentifierField]: createdUser[defaultUserIdentifierField]
|
|
276
339
|
}
|
|
277
340
|
}, { keepPassword: false });
|
|
278
341
|
}
|
|
342
|
+
else if (runFindUserInExternalTokenPayloads) {
|
|
343
|
+
user = userData;
|
|
344
|
+
}
|
|
279
345
|
}
|
|
280
346
|
if (validWithoutUser !== true && !user) {
|
|
281
|
-
logger.info(
|
|
347
|
+
logger.info(`${logPrefix}[Part 7]: Login attempt failed ${userFilterField && userFilterValue ? `for ${userFilterField} ${userFilterValue} ` : ''}- user not found.`);
|
|
282
348
|
throw new core_1.ApplicationError('Authentication failed.');
|
|
283
349
|
}
|
|
284
350
|
if (user && 'password' in user) {
|
|
285
351
|
delete user.password;
|
|
286
352
|
}
|
|
287
|
-
if (
|
|
353
|
+
if (cacheSettings && 'populate' in cacheSettings && cacheSettings.populate) {
|
|
354
|
+
if (!dataUsersAuthCacheService) {
|
|
355
|
+
logger.info(`${logPrefix}[Part 7]: dataUsersAuthCacheService not configured.`);
|
|
356
|
+
throw new core_1.ApplicationError('Authentication failed.');
|
|
357
|
+
}
|
|
288
358
|
const cacheInput = {
|
|
289
359
|
data: stepInputData.data,
|
|
290
360
|
options: stepInputData.options,
|
|
@@ -304,7 +374,7 @@ class IAMUserManagerService {
|
|
|
304
374
|
}
|
|
305
375
|
cacheData[inputName] = cacheInput[inputName];
|
|
306
376
|
}
|
|
307
|
-
yield
|
|
377
|
+
yield dataUsersAuthCacheService.create(Object.assign(Object.assign({}, cacheData), { [cacheSettings.settings.cacheFieldName]: (0, core_1.getNested)(cacheInput, cacheSettings.settings.inputFieldName)
|
|
308
378
|
.unifiedValue }));
|
|
309
379
|
}
|
|
310
380
|
return { stepResult, user, userFilterField, userFilterValue };
|
|
@@ -312,13 +382,16 @@ class IAMUserManagerService {
|
|
|
312
382
|
}
|
|
313
383
|
getUserForStepExecution(options) {
|
|
314
384
|
return __awaiter(this, void 0, void 0, function* () {
|
|
315
|
-
const { configProvider, moduleName } = this;
|
|
385
|
+
const { configProvider, domainUsersEntityService, moduleName } = this;
|
|
386
|
+
if (!domainUsersEntityService) {
|
|
387
|
+
throw new core_1.ApplicationError(`[${moduleName}][AuthenticationManager] domainUsersEntityService not configured.`);
|
|
388
|
+
}
|
|
316
389
|
const { defaultUserIdentifierField } = configProvider.config.domain[moduleName];
|
|
317
390
|
const { mainFilterField } = options;
|
|
318
391
|
let filters = options.filters;
|
|
319
392
|
let user = null;
|
|
320
393
|
if (mainFilterField !== defaultUserIdentifierField) {
|
|
321
|
-
const mainFilterFieldResult = yield
|
|
394
|
+
const mainFilterFieldResult = yield domainUsersEntityService.findOne({ filters });
|
|
322
395
|
if (!mainFilterFieldResult.result) {
|
|
323
396
|
return null;
|
|
324
397
|
}
|
|
@@ -329,15 +402,10 @@ class IAMUserManagerService {
|
|
|
329
402
|
else {
|
|
330
403
|
filters = options.filters;
|
|
331
404
|
}
|
|
332
|
-
user = yield
|
|
405
|
+
user = yield domainUsersEntityService.getUserWithPermissionsData({ filters }, { keepPassword: true });
|
|
333
406
|
return user;
|
|
334
407
|
});
|
|
335
408
|
}
|
|
336
|
-
getUserWithPermissionsData(_options, _privateOptions) {
|
|
337
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
338
|
-
throw new core_1.ApplicationError(`Method ${this.moduleName}.IAMUserManagerService.getUserWithPermissionsData not implemented.`);
|
|
339
|
-
});
|
|
340
|
-
}
|
|
341
409
|
}
|
|
342
|
-
exports.
|
|
343
|
-
//# sourceMappingURL=iam.
|
|
410
|
+
exports.IAMAuthenticationManagerService = IAMAuthenticationManagerService;
|
|
411
|
+
//# sourceMappingURL=iam.authenticationManager.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iam.authenticationManager.service.js","sourceRoot":"","sources":["../../../src/services/authenticationManager/iam.authenticationManager.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./iam.authenticationManager.definitions"), exports);
|
|
18
|
+
__exportStar(require("./iam.authenticationManager.service"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/authenticationManager/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0EAAwD;AACxD,sEAAoD"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IAMAuthenticationCompleteData, IAMAuthenticationCompleteOptions, IAMAuthenticationCompleteResult, IAMAuthenticationGetPayloadsFromExternalTokensData, IAMAuthenticationGetPayloadsFromExternalTokensResult,
|
|
1
|
+
import { IAMAuthenticationCompleteData, IAMAuthenticationCompleteOptions, IAMAuthenticationCompleteResult, IAMAuthenticationGetPayloadsFromExternalTokensData, IAMAuthenticationGetPayloadsFromExternalTokensResult, IAMAuthenticationGetUserAuthenticationConfigResult, IAMAuthenticationInitiateData, IAMAuthenticationInitiateOptions, IAMAuthenticationInitiateResult, IAMAuthenticationVerifyExternalAccessTokenData, IAMAuthenticationVerifyExternalAccessTokenResult } from '../authentication';
|
|
2
2
|
export interface IAMAuthenticationOAuth2AccessTokenProviderResponseData {
|
|
3
3
|
access_token: string;
|
|
4
4
|
expires_in?: number;
|
|
@@ -10,6 +10,7 @@ export interface IAMAuthenticationOAuth2AccessTokenProviderResponseData {
|
|
|
10
10
|
export interface IAMAuthenticationOAuth2CompleteData extends IAMAuthenticationCompleteData {
|
|
11
11
|
code: string;
|
|
12
12
|
codeVerifier: string;
|
|
13
|
+
redirectUri?: string;
|
|
13
14
|
state: string;
|
|
14
15
|
}
|
|
15
16
|
export type IAMAuthenticationOAuth2CompleteOptions<Context extends object> = IAMAuthenticationCompleteOptions<Context>;
|
|
@@ -19,8 +20,9 @@ export interface IAMAuthenticationOAuth2CompleteResult extends IAMAuthentication
|
|
|
19
20
|
}
|
|
20
21
|
export type IAMAuthenticationOAuth2GetPayloadsFromExternalTokensData = IAMAuthenticationGetPayloadsFromExternalTokensData;
|
|
21
22
|
export type IAMAuthenticationOAuth2GetPayloadsFromExternalTokensResult = IAMAuthenticationGetPayloadsFromExternalTokensResult;
|
|
22
|
-
export type
|
|
23
|
+
export type IAMAuthenticationOAuth2GetUserAuthenticationConfigResult = IAMAuthenticationGetUserAuthenticationConfigResult;
|
|
23
24
|
export interface IAMAuthenticationOAuth2InitiateData extends IAMAuthenticationInitiateData {
|
|
25
|
+
redirectUri?: string;
|
|
24
26
|
scope?: string;
|
|
25
27
|
}
|
|
26
28
|
export interface IAMAuthenticationOAuth2InitiateOptions<Context extends object> extends IAMAuthenticationInitiateOptions<Context> {
|
|
@@ -33,6 +35,7 @@ export interface IAMAuthenticationOAuth2InitiateResult extends IAMAuthentication
|
|
|
33
35
|
codeVerifier?: string;
|
|
34
36
|
nonce?: string;
|
|
35
37
|
state: string;
|
|
38
|
+
redirectUri: string;
|
|
36
39
|
}
|
|
37
40
|
export type IAMAuthenticationOAuth2VerifyExternalAccessTokenData = Pick<IAMAuthenticationVerifyExternalAccessTokenData, 'accessToken'>;
|
|
38
41
|
export type IAMAuthenticationOAuth2VerifyExternalAccessTokenResult = Pick<IAMAuthenticationVerifyExternalAccessTokenResult, 'accessTokenPayload' | 'error'>;
|
|
@@ -1,25 +1,13 @@
|
|
|
1
1
|
import { ConfigProviderService, LoggerService } from '@node-c/core';
|
|
2
|
-
import { IAMAuthenticationOAuth2CompleteData, IAMAuthenticationOAuth2CompleteOptions, IAMAuthenticationOAuth2CompleteResult, IAMAuthenticationOAuth2GetPayloadsFromExternalTokensData, IAMAuthenticationOAuth2GetPayloadsFromExternalTokensResult,
|
|
2
|
+
import { IAMAuthenticationOAuth2CompleteData, IAMAuthenticationOAuth2CompleteOptions, IAMAuthenticationOAuth2CompleteResult, IAMAuthenticationOAuth2GetPayloadsFromExternalTokensData, IAMAuthenticationOAuth2GetPayloadsFromExternalTokensResult, IAMAuthenticationOAuth2GetUserAuthenticationConfigResult, IAMAuthenticationOAuth2InitiateData, IAMAuthenticationOAuth2InitiateOptions, IAMAuthenticationOAuth2InitiateResult, IAMAuthenticationOAuth2VerifyExternalAccessTokenData, IAMAuthenticationOAuth2VerifyExternalAccessTokenResult } from './iam.authenticationOAuth2.definitions';
|
|
3
3
|
import { IAMAuthenticationService } from '../authentication';
|
|
4
4
|
export declare class IAMAuthenticationOAuth2Service<CompleteContext extends object, InitiateContext extends object> extends IAMAuthenticationService<CompleteContext, InitiateContext> {
|
|
5
|
-
protected configProvider: ConfigProviderService;
|
|
6
|
-
protected logger: LoggerService;
|
|
7
|
-
protected moduleName: string;
|
|
8
|
-
protected serviceName: string;
|
|
9
5
|
constructor(configProvider: ConfigProviderService, logger: LoggerService, moduleName: string, serviceName: string);
|
|
10
6
|
complete(data: IAMAuthenticationOAuth2CompleteData, _options: IAMAuthenticationOAuth2CompleteOptions<CompleteContext>): Promise<IAMAuthenticationOAuth2CompleteResult>;
|
|
11
7
|
protected generateChallenge(codeVerifier: string): Promise<string>;
|
|
12
8
|
protected generateUrlEncodedString(length: number): string;
|
|
13
9
|
getPayloadsFromExternalTokens(data: IAMAuthenticationOAuth2GetPayloadsFromExternalTokensData): Promise<IAMAuthenticationOAuth2GetPayloadsFromExternalTokensResult>;
|
|
14
|
-
|
|
10
|
+
getUserAuthenticationConfig(): IAMAuthenticationOAuth2GetUserAuthenticationConfigResult;
|
|
15
11
|
initiate(data: IAMAuthenticationOAuth2InitiateData, options: IAMAuthenticationOAuth2InitiateOptions<InitiateContext>): Promise<IAMAuthenticationOAuth2InitiateResult>;
|
|
16
12
|
verifyExternalAccessToken(data: IAMAuthenticationOAuth2VerifyExternalAccessTokenData): Promise<IAMAuthenticationOAuth2VerifyExternalAccessTokenResult>;
|
|
17
|
-
protected verifyToken<DecodedTokenContent = unknown>(token: string, options?: {
|
|
18
|
-
audiences?: string[];
|
|
19
|
-
issuer?: string;
|
|
20
|
-
secret?: string;
|
|
21
|
-
}): Promise<{
|
|
22
|
-
content?: DecodedTokenContent;
|
|
23
|
-
error?: unknown;
|
|
24
|
-
}>;
|
|
25
13
|
}
|