auth0 2.36.1 → 2.38.1
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/CHANGELOG.md +557 -0
- package/README.md +33 -11
- package/package.json +22 -15
- package/src/Auth0RestClient.js +72 -71
- package/src/RetryRestClient.js +78 -81
- package/src/auth/DatabaseAuthenticator.js +242 -259
- package/src/auth/OAUthWithIDTokenValidation.js +99 -103
- package/src/auth/OAuthAuthenticator.js +325 -344
- package/src/auth/PasswordlessAuthenticator.js +238 -252
- package/src/auth/TokensManager.js +231 -246
- package/src/auth/UsersManager.js +149 -160
- package/src/auth/idToken.js +22 -19
- package/src/auth/index.js +510 -581
- package/src/errors.js +23 -23
- package/src/index.js +3 -2
- package/src/management/ActionsManager.js +503 -585
- package/src/management/BlacklistedTokensManager.js +77 -84
- package/src/management/BrandingManager.js +141 -163
- package/src/management/ClientGrantsManager.js +132 -145
- package/src/management/ClientsManager.js +145 -161
- package/src/management/ConnectionsManager.js +215 -204
- package/src/management/CustomDomainsManager.js +140 -157
- package/src/management/DeviceCredentialsManager.js +95 -111
- package/src/management/EmailProviderManager.js +110 -128
- package/src/management/EmailTemplatesManager.js +96 -112
- package/src/management/GrantsManager.js +94 -101
- package/src/management/GuardianManager.js +381 -455
- package/src/management/HooksManager.js +283 -325
- package/src/management/JobsManager.js +310 -343
- package/src/management/LogStreamsManager.js +142 -158
- package/src/management/LogsManager.js +92 -99
- package/src/management/ManagementTokenProvider.js +112 -120
- package/src/management/MigrationsManager.js +81 -90
- package/src/management/OrganizationsManager.js +686 -761
- package/src/management/PromptsManager.js +160 -182
- package/src/management/ResourceServersManager.js +143 -160
- package/src/management/RolesManager.js +323 -369
- package/src/management/RulesConfigsManager.js +94 -110
- package/src/management/RulesManager.js +154 -176
- package/src/management/StatsManager.js +87 -103
- package/src/management/TenantManager.js +81 -97
- package/src/management/TicketsManager.js +107 -115
- package/src/management/UserBlocksManager.js +135 -162
- package/src/management/UsersManager.js +729 -852
- package/src/management/index.js +3094 -3619
- package/src/utils.js +31 -60
|
@@ -1,508 +1,434 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
var RetryRestClient = require('../RetryRestClient');
|
|
1
|
+
const { ArgumentError } = require('rest-facade');
|
|
2
|
+
const Auth0RestClient = require('../Auth0RestClient');
|
|
3
|
+
const RetryRestClient = require('../RetryRestClient');
|
|
5
4
|
|
|
6
5
|
/**
|
|
7
|
-
* Simple facade for consuming a REST API endpoint.
|
|
8
|
-
* @external RestClient
|
|
9
|
-
* @see https://github.com/ngonzalvez/rest-facade
|
|
10
|
-
*/
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* @class
|
|
14
6
|
* Abstracts interaction with the Guardian endpoint.
|
|
15
|
-
* @constructor
|
|
16
|
-
* @memberOf module:management
|
|
17
|
-
*
|
|
18
|
-
* @param {Object} options The client options.
|
|
19
|
-
* @param {String} options.baseUrl The URL of the API.
|
|
20
|
-
* @param {Object} [options.headers] Headers to be included in all requests.
|
|
21
|
-
* @param {Object} [options.retry] Retry Policy Config
|
|
22
7
|
*/
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
8
|
+
class GuardianManager {
|
|
9
|
+
/**
|
|
10
|
+
* @param {object} options The client options.
|
|
11
|
+
* @param {string} options.baseUrl The URL of the API.
|
|
12
|
+
* @param {object} [options.headers] Headers to be included in all requests.
|
|
13
|
+
* @param {object} [options.retry] Retry Policy Config
|
|
14
|
+
*/
|
|
15
|
+
constructor(options) {
|
|
16
|
+
if (options === null || typeof options !== 'object') {
|
|
17
|
+
throw new ArgumentError('Must provide manager options');
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
if (options.baseUrl === null || options.baseUrl === undefined) {
|
|
21
|
+
throw new ArgumentError('Must provide a base URL for the API');
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
if ('string' !== typeof options.baseUrl || options.baseUrl.length === 0) {
|
|
25
|
+
throw new ArgumentError('The provided base URL is invalid');
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
const clientOptions = {
|
|
29
|
+
errorFormatter: { message: 'message', name: 'error' },
|
|
30
|
+
headers: options.headers,
|
|
31
|
+
query: { repeatParams: false },
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Provides an abstraction layer for retrieving Guardian enrollments.
|
|
36
|
+
*
|
|
37
|
+
* @type {external:RestClient}
|
|
38
|
+
*/
|
|
39
|
+
const guardianEnrollmentsAuth0RestClient = new Auth0RestClient(
|
|
40
|
+
`${options.baseUrl}/guardian/enrollments/:id`,
|
|
41
|
+
clientOptions,
|
|
42
|
+
options.tokenProvider
|
|
43
|
+
);
|
|
44
|
+
this.enrollments = new RetryRestClient(guardianEnrollmentsAuth0RestClient, options.retry);
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Provides an abstraction layer for retrieving Guardian tickets.
|
|
48
|
+
*
|
|
49
|
+
* @type {external:RestClient}
|
|
50
|
+
*/
|
|
51
|
+
const guardianTicketsAuth0RestClient = new Auth0RestClient(
|
|
52
|
+
`${options.baseUrl}/guardian/enrollments/ticket`,
|
|
53
|
+
clientOptions,
|
|
54
|
+
options.tokenProvider
|
|
55
|
+
);
|
|
56
|
+
this.tickets = new RetryRestClient(guardianTicketsAuth0RestClient, options.retry);
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Provides an abstraction layer for retrieving Guardian factors.
|
|
60
|
+
*
|
|
61
|
+
* @type {external:RestClient}
|
|
62
|
+
*/
|
|
63
|
+
const guardianFactorsAuth0RestClient = new Auth0RestClient(
|
|
64
|
+
`${options.baseUrl}/guardian/factors/:name`,
|
|
65
|
+
clientOptions,
|
|
66
|
+
options.tokenProvider
|
|
67
|
+
);
|
|
68
|
+
this.factors = new RetryRestClient(guardianFactorsAuth0RestClient, options.retry);
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Provides an abstraction layer for configuring Factor settings
|
|
72
|
+
*
|
|
73
|
+
* @type {external:RestClient}
|
|
74
|
+
*/
|
|
75
|
+
const guardianFactorSettingsAuth0RestClient = new Auth0RestClient(
|
|
76
|
+
`${options.baseUrl}/guardian/factors/:name/settings`,
|
|
77
|
+
clientOptions,
|
|
78
|
+
options.tokenProvider
|
|
79
|
+
);
|
|
80
|
+
this.factorSettings = new RetryRestClient(guardianFactorSettingsAuth0RestClient, options.retry);
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* Provides an abstraction layer for retrieving Guardian factor templates.
|
|
84
|
+
*
|
|
85
|
+
* @type {external:RestClient}
|
|
86
|
+
*/
|
|
87
|
+
const guardianFactorsTemplatesAuth0RestClient = new Auth0RestClient(
|
|
88
|
+
`${options.baseUrl}/guardian/factors/:name/templates`,
|
|
89
|
+
clientOptions,
|
|
90
|
+
options.tokenProvider
|
|
91
|
+
);
|
|
92
|
+
this.factorsTemplates = new RetryRestClient(
|
|
93
|
+
guardianFactorsTemplatesAuth0RestClient,
|
|
94
|
+
options.retry
|
|
95
|
+
);
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Provides an abstraction layer for retrieving Guardian factor providers.
|
|
99
|
+
*
|
|
100
|
+
* @type {external:RestClient}
|
|
101
|
+
*/
|
|
102
|
+
const guardianFactorsProvidersAuth0RestClient = new Auth0RestClient(
|
|
103
|
+
`${options.baseUrl}/guardian/factors/:name/providers/:provider`,
|
|
104
|
+
clientOptions,
|
|
105
|
+
options.tokenProvider
|
|
106
|
+
);
|
|
107
|
+
this.factorsProviders = new RetryRestClient(
|
|
108
|
+
guardianFactorsProvidersAuth0RestClient,
|
|
109
|
+
options.retry
|
|
110
|
+
);
|
|
111
|
+
|
|
112
|
+
/**
|
|
113
|
+
* Provides an abstraction layer for retrieving Guardian policies.
|
|
114
|
+
*
|
|
115
|
+
* @type {external:RestClient}
|
|
116
|
+
*/
|
|
117
|
+
const guardianPoliciesAuth0RestClient = new Auth0RestClient(
|
|
118
|
+
`${options.baseUrl}/guardian/policies`,
|
|
119
|
+
clientOptions,
|
|
120
|
+
options.tokenProvider
|
|
121
|
+
);
|
|
122
|
+
this.policies = new RetryRestClient(guardianPoliciesAuth0RestClient, options.retry);
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* Provides an abstraction layer for retrieving Guardian phone factor selected provider.
|
|
126
|
+
*
|
|
127
|
+
* @type {external:RestClient}
|
|
128
|
+
*/
|
|
129
|
+
const guardianFactorsPhoneSelectedProviderAuth0RestClient = new Auth0RestClient(
|
|
130
|
+
`${options.baseUrl}/guardian/factors/sms/selected-provider`,
|
|
131
|
+
clientOptions,
|
|
132
|
+
options.tokenProvider
|
|
133
|
+
);
|
|
134
|
+
this.factorsPhoneSelectedProvider = new RetryRestClient(
|
|
135
|
+
guardianFactorsPhoneSelectedProviderAuth0RestClient,
|
|
136
|
+
options.retry
|
|
137
|
+
);
|
|
138
|
+
|
|
139
|
+
/**
|
|
140
|
+
* Provides an abstraction layer for retrieving Guardian phone factor message types.
|
|
141
|
+
*
|
|
142
|
+
* @type {external:RestClient}
|
|
143
|
+
*/
|
|
144
|
+
const guardianFactorsPhoneMessageTypesAuth0RestClient = new Auth0RestClient(
|
|
145
|
+
`${options.baseUrl}/guardian/factors/phone/message-types`,
|
|
146
|
+
clientOptions,
|
|
147
|
+
options.tokenProvider
|
|
148
|
+
);
|
|
149
|
+
this.factorsPhoneMessageTypes = new RetryRestClient(
|
|
150
|
+
guardianFactorsPhoneMessageTypesAuth0RestClient,
|
|
151
|
+
options.retry
|
|
152
|
+
);
|
|
26
153
|
}
|
|
27
154
|
|
|
28
|
-
|
|
29
|
-
|
|
155
|
+
/**
|
|
156
|
+
* Get a single Guardian enrollment.
|
|
157
|
+
*
|
|
158
|
+
* @example
|
|
159
|
+
* management.guardian.getGuardianEnrollment({ id: ENROLLMENT_ID }, function (err, enrollment) {
|
|
160
|
+
* console.log(enrollment);
|
|
161
|
+
* });
|
|
162
|
+
* @param {object} data The user data object.
|
|
163
|
+
* @param {string} data.id The user id.
|
|
164
|
+
* @param {Function} [cb] Callback function.
|
|
165
|
+
* @returns {Promise|undefined}
|
|
166
|
+
*/
|
|
167
|
+
getGuardianEnrollment(...args) {
|
|
168
|
+
return this.enrollments.get(...args);
|
|
30
169
|
}
|
|
31
170
|
|
|
32
|
-
|
|
33
|
-
|
|
171
|
+
/**
|
|
172
|
+
* Delete a Guardian enrollment.
|
|
173
|
+
*
|
|
174
|
+
* @example
|
|
175
|
+
* management.guardian.deleteGuardianEnrollment({ id: ENROLLMENT_ID }, function (err, enrollments) {
|
|
176
|
+
* console.log(enrollments);
|
|
177
|
+
* });
|
|
178
|
+
* @param {object} data The user data object.
|
|
179
|
+
* @param {string} data.id The user id.
|
|
180
|
+
* @param {Function} [cb] Callback function.
|
|
181
|
+
* @returns {Promise|undefined}
|
|
182
|
+
*/
|
|
183
|
+
deleteGuardianEnrollment(...args) {
|
|
184
|
+
return this.enrollments.delete(...args);
|
|
34
185
|
}
|
|
35
186
|
|
|
36
|
-
var clientOptions = {
|
|
37
|
-
errorFormatter: { message: 'message', name: 'error' },
|
|
38
|
-
headers: options.headers,
|
|
39
|
-
query: { repeatParams: false }
|
|
40
|
-
};
|
|
41
|
-
|
|
42
187
|
/**
|
|
43
|
-
*
|
|
188
|
+
* Create a Guardian enrollment ticket.
|
|
44
189
|
*
|
|
45
|
-
* @
|
|
190
|
+
* @example
|
|
191
|
+
* management.guardian.createEnrollmentTicket(function (err, ticket) {
|
|
192
|
+
* console.log(ticket);
|
|
193
|
+
* });
|
|
194
|
+
* @param {Function} [cb] Callback function.
|
|
195
|
+
* @returns {Promise|undefined}
|
|
46
196
|
*/
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
options.tokenProvider
|
|
51
|
-
);
|
|
52
|
-
this.enrollments = new RetryRestClient(guardianEnrollmentsAuth0RestClient, options.retry);
|
|
197
|
+
createEnrollmentTicket(...args) {
|
|
198
|
+
return this.tickets.create(...args);
|
|
199
|
+
}
|
|
53
200
|
|
|
54
201
|
/**
|
|
55
|
-
*
|
|
202
|
+
* Get a list of factors and statuses.
|
|
56
203
|
*
|
|
57
|
-
* @
|
|
204
|
+
* @example
|
|
205
|
+
* management.guardian.getFactors(function (err, factors) {
|
|
206
|
+
* console.log(factors.length);
|
|
207
|
+
* });
|
|
208
|
+
* @param {Function} [cb] Callback function.
|
|
209
|
+
* @returns {Promise|undefined}
|
|
58
210
|
*/
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
options.tokenProvider
|
|
63
|
-
);
|
|
64
|
-
this.tickets = new RetryRestClient(guardianTicketsAuth0RestClient, options.retry);
|
|
211
|
+
getFactors(...args) {
|
|
212
|
+
return this.factors.getAll(...args);
|
|
213
|
+
}
|
|
65
214
|
|
|
66
215
|
/**
|
|
67
|
-
*
|
|
216
|
+
* Get Guardian factor configuration
|
|
68
217
|
*
|
|
69
|
-
* @
|
|
218
|
+
* @example
|
|
219
|
+
* management.guardian.getFactorSettings({ name: 'webauthn-roaming' }, function (err, settings) {
|
|
220
|
+
* console.log(settings);
|
|
221
|
+
* });
|
|
222
|
+
* @param {object} params Factor parameters.
|
|
223
|
+
* @param {Function} [cb] Callback function.
|
|
224
|
+
* @returns {Promise|undefined}
|
|
70
225
|
*/
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
options.tokenProvider
|
|
75
|
-
);
|
|
76
|
-
this.factors = new RetryRestClient(guardianFactorsAuth0RestClient, options.retry);
|
|
226
|
+
getFactorSettings(...args) {
|
|
227
|
+
return this.factorSettings.get(...args);
|
|
228
|
+
}
|
|
77
229
|
|
|
78
230
|
/**
|
|
79
|
-
*
|
|
231
|
+
* Update Guardian factor configuration
|
|
80
232
|
*
|
|
81
|
-
* @
|
|
233
|
+
* @example
|
|
234
|
+
* management.guardian.updateFactorSettings(
|
|
235
|
+
* { name: 'webauthn-roaming' },
|
|
236
|
+
* { userVerification: 'discouraged', overrideRelyingParty: false },
|
|
237
|
+
* function (err, settings) {
|
|
238
|
+
* console.log(settings);
|
|
239
|
+
* });
|
|
240
|
+
* @param {object} params Factor parameters.
|
|
241
|
+
* @param {Function} [cb] Callback function.
|
|
242
|
+
* @returns {Promise|undefined}
|
|
82
243
|
*/
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
options.tokenProvider
|
|
87
|
-
);
|
|
88
|
-
this.factorSettings = new RetryRestClient(guardianFactorSettingsAuth0RestClient, options.retry);
|
|
244
|
+
updateFactorSettings(...args) {
|
|
245
|
+
return this.factorSettings.update(...args);
|
|
246
|
+
}
|
|
89
247
|
|
|
90
248
|
/**
|
|
91
|
-
*
|
|
249
|
+
* Get Guardian factor provider configuration
|
|
92
250
|
*
|
|
93
|
-
* @
|
|
251
|
+
* @example
|
|
252
|
+
* management.guardian.getFactorProvider({ name: 'sms', provider: 'twilio'}, function (err, provider) {
|
|
253
|
+
* console.log(provider);
|
|
254
|
+
* });
|
|
255
|
+
* @param {object} params Factor provider parameters.
|
|
256
|
+
* @param {Function} [cb] Callback function.
|
|
257
|
+
* @returns {Promise|undefined}
|
|
94
258
|
*/
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
options.tokenProvider
|
|
99
|
-
);
|
|
100
|
-
this.factorsTemplates = new RetryRestClient(
|
|
101
|
-
guardianFactorsTemplatesAuth0RestClient,
|
|
102
|
-
options.retry
|
|
103
|
-
);
|
|
259
|
+
getFactorProvider(...args) {
|
|
260
|
+
return this.factorsProviders.get(...args);
|
|
261
|
+
}
|
|
104
262
|
|
|
105
263
|
/**
|
|
106
|
-
*
|
|
264
|
+
* Update Guardian's factor provider
|
|
107
265
|
*
|
|
108
|
-
* @
|
|
266
|
+
* @example
|
|
267
|
+
* management.guardian.updateFactorProvider({ name: 'sms', provider: 'twilio' }, {
|
|
268
|
+
* messaging_service_sid: 'XXXXXXXXXXXXXX',
|
|
269
|
+
* auth_token: 'XXXXXXXXXXXXXX',
|
|
270
|
+
* sid: 'XXXXXXXXXXXXXX'
|
|
271
|
+
* }, function (err, provider) {
|
|
272
|
+
* console.log(provider);
|
|
273
|
+
* });
|
|
274
|
+
* @param {object} params Factor provider parameters.
|
|
275
|
+
* @param {object} data Updated Factor provider data.
|
|
276
|
+
* @param {Function} [cb] Callback function.
|
|
277
|
+
* @returns {Promise|undefined}
|
|
109
278
|
*/
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
options.tokenProvider
|
|
114
|
-
);
|
|
115
|
-
this.factorsProviders = new RetryRestClient(
|
|
116
|
-
guardianFactorsProvidersAuth0RestClient,
|
|
117
|
-
options.retry
|
|
118
|
-
);
|
|
279
|
+
updateFactorProvider(...args) {
|
|
280
|
+
return this.factorsProviders.update(...args);
|
|
281
|
+
}
|
|
119
282
|
|
|
120
283
|
/**
|
|
121
|
-
*
|
|
284
|
+
* Get Guardian enrollment and verification factor templates
|
|
122
285
|
*
|
|
123
|
-
* @
|
|
286
|
+
* @example
|
|
287
|
+
* management.guardian.getFactorTemplates({ name: 'sms' }, function (err, templates) {
|
|
288
|
+
* console.log(templates);
|
|
289
|
+
* });
|
|
290
|
+
* @param {object} params Factor parameters.
|
|
291
|
+
* @param {Function} [cb] Callback function.
|
|
292
|
+
* @returns {Promise|undefined}
|
|
124
293
|
*/
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
options.tokenProvider
|
|
129
|
-
);
|
|
130
|
-
this.policies = new RetryRestClient(guardianPoliciesAuth0RestClient, options.retry);
|
|
294
|
+
getFactorTemplates(...args) {
|
|
295
|
+
return this.factorsTemplates.get(...args);
|
|
296
|
+
}
|
|
131
297
|
|
|
132
298
|
/**
|
|
133
|
-
*
|
|
299
|
+
* Update Guardian enrollment and verification factor templates
|
|
134
300
|
*
|
|
135
|
-
* @
|
|
301
|
+
* @example
|
|
302
|
+
* management.guardian.updateFactorProvider({ name: 'sms' }, {
|
|
303
|
+
* enrollment_message: "{{code}} is your verification code for {{tenant.friendly_name}}. Please enter this code to verify your enrollment.",
|
|
304
|
+
* verification_message: "{{code}} is your verification code for {{tenant.friendly_name}}"
|
|
305
|
+
* }, function (err, templates) {
|
|
306
|
+
* console.log(templates);
|
|
307
|
+
* });
|
|
308
|
+
* @param {object} params Factor parameters.
|
|
309
|
+
* @param {object} data Updated factor templates data.
|
|
310
|
+
* @param {Function} [cb] Callback function.
|
|
311
|
+
* @returns {Promise|undefined}
|
|
136
312
|
*/
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
options.tokenProvider
|
|
141
|
-
);
|
|
142
|
-
this.factorsPhoneSelectedProvider = new RetryRestClient(
|
|
143
|
-
guardianFactorsPhoneSelectedProviderAuth0RestClient,
|
|
144
|
-
options.retry
|
|
145
|
-
);
|
|
313
|
+
updateFactorTemplates(...args) {
|
|
314
|
+
return this.factorsTemplates.update(...args);
|
|
315
|
+
}
|
|
146
316
|
|
|
147
317
|
/**
|
|
148
|
-
*
|
|
318
|
+
* Update Guardian Factor
|
|
149
319
|
*
|
|
150
|
-
* @
|
|
320
|
+
* @example
|
|
321
|
+
* management.guardian.updateFactor({ name: 'sms' }, {
|
|
322
|
+
* enabled: true
|
|
323
|
+
* }, function (err, factor) {
|
|
324
|
+
* console.log(factor);
|
|
325
|
+
* });
|
|
326
|
+
* @param {object} params Factor parameters.
|
|
327
|
+
* @param {object} data Updated factor data.
|
|
328
|
+
* @param {Function} [cb] Callback function.
|
|
329
|
+
* @returns {Promise|undefined}
|
|
151
330
|
*/
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
options.tokenProvider
|
|
156
|
-
);
|
|
157
|
-
this.factorsPhoneMessageTypes = new RetryRestClient(
|
|
158
|
-
guardianFactorsPhoneMessageTypesAuth0RestClient,
|
|
159
|
-
options.retry
|
|
160
|
-
);
|
|
161
|
-
};
|
|
162
|
-
|
|
163
|
-
/**
|
|
164
|
-
* Get a single Guardian enrollment.
|
|
165
|
-
*
|
|
166
|
-
* @method getGuardianEnrollment
|
|
167
|
-
* @memberOf module:management.GuardianManager.prototype
|
|
168
|
-
*
|
|
169
|
-
* @example
|
|
170
|
-
* management.guardian.getGuardianEnrollment({ id: ENROLLMENT_ID }, function (err, enrollment) {
|
|
171
|
-
* console.log(enrollment);
|
|
172
|
-
* });
|
|
173
|
-
*
|
|
174
|
-
* @param {Object} data The user data object.
|
|
175
|
-
* @param {String} data.id The user id.
|
|
176
|
-
* @param {Function} [cb] Callback function.
|
|
177
|
-
*
|
|
178
|
-
* @return {Promise|undefined}
|
|
179
|
-
*/
|
|
180
|
-
utils.wrapPropertyMethod(GuardianManager, 'getGuardianEnrollment', 'enrollments.get');
|
|
181
|
-
|
|
182
|
-
/**
|
|
183
|
-
* Delete a Guardian enrollment.
|
|
184
|
-
*
|
|
185
|
-
* @method deleteGuardianEnrollment
|
|
186
|
-
* @memberOf module:management.GuardianManager.prototype
|
|
187
|
-
*
|
|
188
|
-
* @example
|
|
189
|
-
* management.guardian.deleteGuardianEnrollment({ id: ENROLLMENT_ID }, function (err, enrollments) {
|
|
190
|
-
* console.log(enrollments);
|
|
191
|
-
* });
|
|
192
|
-
*
|
|
193
|
-
* @param {Object} data The user data object.
|
|
194
|
-
* @param {String} data.id The user id.
|
|
195
|
-
* @param {Function} [cb] Callback function.
|
|
196
|
-
*
|
|
197
|
-
* @return {Promise|undefined}
|
|
198
|
-
*/
|
|
199
|
-
utils.wrapPropertyMethod(GuardianManager, 'deleteGuardianEnrollment', 'enrollments.delete');
|
|
200
|
-
|
|
201
|
-
/**
|
|
202
|
-
* Create a Guardian enrollment ticket.
|
|
203
|
-
*
|
|
204
|
-
* @method createEnrollmentTicket
|
|
205
|
-
* @memberOf module:management.GuardianManager.prototype
|
|
206
|
-
*
|
|
207
|
-
* @example
|
|
208
|
-
* management.guardian.createEnrollmentTicket(function (err, ticket) {
|
|
209
|
-
* console.log(ticket);
|
|
210
|
-
* });
|
|
211
|
-
*
|
|
212
|
-
* @param {Function} [cb] Callback function.
|
|
213
|
-
*
|
|
214
|
-
* @return {Promise|undefined}
|
|
215
|
-
*/
|
|
216
|
-
utils.wrapPropertyMethod(GuardianManager, 'createEnrollmentTicket', 'tickets.create');
|
|
217
|
-
|
|
218
|
-
/**
|
|
219
|
-
* Get a list of factors and statuses.
|
|
220
|
-
*
|
|
221
|
-
* @method getFactors
|
|
222
|
-
* @memberOf module:management.GuardianManager.prototype
|
|
223
|
-
*
|
|
224
|
-
* @example
|
|
225
|
-
* management.guardian.getFactors(function (err, factors) {
|
|
226
|
-
* console.log(factors.length);
|
|
227
|
-
* });
|
|
228
|
-
*
|
|
229
|
-
* @param {Function} [cb] Callback function.
|
|
230
|
-
*
|
|
231
|
-
* @return {Promise|undefined}
|
|
232
|
-
*/
|
|
233
|
-
utils.wrapPropertyMethod(GuardianManager, 'getFactors', 'factors.getAll');
|
|
234
|
-
|
|
235
|
-
/**
|
|
236
|
-
* Get Guardian factor configuration
|
|
237
|
-
*
|
|
238
|
-
* @method getFactorSettings
|
|
239
|
-
* @memberOf module:management.GuardianManager.prototype
|
|
240
|
-
*
|
|
241
|
-
* @example
|
|
242
|
-
* management.guardian.getFactorSettings({ name: 'webauthn-roaming' }, function (err, settings) {
|
|
243
|
-
* console.log(settings);
|
|
244
|
-
* });
|
|
245
|
-
*
|
|
246
|
-
* @param {Object} params Factor parameters.
|
|
247
|
-
* @param {Function} [cb] Callback function.
|
|
248
|
-
*
|
|
249
|
-
* @return {Promise|undefined}
|
|
250
|
-
*/
|
|
251
|
-
utils.wrapPropertyMethod(GuardianManager, 'getFactorSettings', 'factorSettings.get');
|
|
252
|
-
|
|
253
|
-
/**
|
|
254
|
-
* Update Guardian factor configuration
|
|
255
|
-
*
|
|
256
|
-
* @method updateFactorSettings
|
|
257
|
-
* @memberOf module:management.GuardianManager.prototype
|
|
258
|
-
*
|
|
259
|
-
* @example
|
|
260
|
-
* management.guardian.updateFactorSettings(
|
|
261
|
-
* { name: 'webauthn-roaming' },
|
|
262
|
-
* { userVerification: 'discouraged', overrideRelyingParty: false },
|
|
263
|
-
* function (err, settings) {
|
|
264
|
-
* console.log(settings);
|
|
265
|
-
* });
|
|
266
|
-
*
|
|
267
|
-
* @param {Object} params Factor parameters.
|
|
268
|
-
* @param {Function} [cb] Callback function.
|
|
269
|
-
*
|
|
270
|
-
* @return {Promise|undefined}
|
|
271
|
-
*/
|
|
272
|
-
utils.wrapPropertyMethod(GuardianManager, 'updateFactorSettings', 'factorSettings.update');
|
|
273
|
-
|
|
274
|
-
/**
|
|
275
|
-
* Get Guardian factor provider configuration
|
|
276
|
-
*
|
|
277
|
-
* @method getFactorProvider
|
|
278
|
-
* @memberOf module:management.GuardianManager.prototype
|
|
279
|
-
*
|
|
280
|
-
* @example
|
|
281
|
-
* management.guardian.getFactorProvider({ name: 'sms', provider: 'twilio'}, function (err, provider) {
|
|
282
|
-
* console.log(provider);
|
|
283
|
-
* });
|
|
284
|
-
*
|
|
285
|
-
* @param {Object} params Factor provider parameters.
|
|
286
|
-
* @param {Function} [cb] Callback function.
|
|
287
|
-
*
|
|
288
|
-
* @return {Promise|undefined}
|
|
289
|
-
*/
|
|
290
|
-
utils.wrapPropertyMethod(GuardianManager, 'getFactorProvider', 'factorsProviders.get');
|
|
291
|
-
|
|
292
|
-
/**
|
|
293
|
-
* Update Guardian's factor provider
|
|
294
|
-
*
|
|
295
|
-
* @method updateFactorProvider
|
|
296
|
-
* @memberOf module:management.GuardianManager.prototype
|
|
297
|
-
*
|
|
298
|
-
* @example
|
|
299
|
-
* management.guardian.updateFactorProvider({ name: 'sms', provider: 'twilio' }, {
|
|
300
|
-
* messaging_service_sid: 'XXXXXXXXXXXXXX',
|
|
301
|
-
* auth_token: 'XXXXXXXXXXXXXX',
|
|
302
|
-
* sid: 'XXXXXXXXXXXXXX'
|
|
303
|
-
* }, function (err, provider) {
|
|
304
|
-
* console.log(provider);
|
|
305
|
-
* });
|
|
306
|
-
*
|
|
307
|
-
* @param {Object} params Factor provider parameters.
|
|
308
|
-
* @param {Object} data Updated Factor provider data.
|
|
309
|
-
* @param {Function} [cb] Callback function.
|
|
310
|
-
*
|
|
311
|
-
* @return {Promise|undefined}
|
|
312
|
-
*/
|
|
313
|
-
utils.wrapPropertyMethod(GuardianManager, 'updateFactorProvider', 'factorsProviders.update');
|
|
314
|
-
|
|
315
|
-
/**
|
|
316
|
-
* Get Guardian enrollment and verification factor templates
|
|
317
|
-
*
|
|
318
|
-
* @method getFactorTemplates
|
|
319
|
-
* @memberOf module:management.GuardianManager.prototype
|
|
320
|
-
*
|
|
321
|
-
* @example
|
|
322
|
-
* management.guardian.getFactorTemplates({ name: 'sms' }, function (err, templates) {
|
|
323
|
-
* console.log(templates);
|
|
324
|
-
* });
|
|
325
|
-
*
|
|
326
|
-
* @param {Object} params Factor parameters.
|
|
327
|
-
* @param {Function} [cb] Callback function.
|
|
328
|
-
*
|
|
329
|
-
* @return {Promise|undefined}
|
|
330
|
-
*/
|
|
331
|
-
utils.wrapPropertyMethod(GuardianManager, 'getFactorTemplates', 'factorsTemplates.get');
|
|
332
|
-
|
|
333
|
-
/**
|
|
334
|
-
* Update Guardian enrollment and verification factor templates
|
|
335
|
-
*
|
|
336
|
-
* @method updateFactorTemplates
|
|
337
|
-
* @memberOf module:management.GuardianManager.prototype
|
|
338
|
-
*
|
|
339
|
-
* @example
|
|
340
|
-
* management.guardian.updateFactorProvider({ name: 'sms' }, {
|
|
341
|
-
* enrollment_message: "{{code}} is your verification code for {{tenant.friendly_name}}. Please enter this code to verify your enrollment.",
|
|
342
|
-
* verification_message: "{{code}} is your verification code for {{tenant.friendly_name}}"
|
|
343
|
-
* }, function (err, templates) {
|
|
344
|
-
* console.log(templates);
|
|
345
|
-
* });
|
|
346
|
-
*
|
|
347
|
-
* @param {Object} params Factor parameters.
|
|
348
|
-
* @param {Object} data Updated factor templates data.
|
|
349
|
-
* @param {Function} [cb] Callback function.
|
|
350
|
-
*
|
|
351
|
-
* @return {Promise|undefined}
|
|
352
|
-
*/
|
|
353
|
-
utils.wrapPropertyMethod(GuardianManager, 'updateFactorTemplates', 'factorsTemplates.update');
|
|
354
|
-
|
|
355
|
-
/**
|
|
356
|
-
* Update Guardian Factor
|
|
357
|
-
*
|
|
358
|
-
* @method updateFactor
|
|
359
|
-
* @memberOf module:management.GuardianManager.prototype
|
|
360
|
-
*
|
|
361
|
-
* @example
|
|
362
|
-
* management.guardian.updateFactor({ name: 'sms' }, {
|
|
363
|
-
* enabled: true
|
|
364
|
-
* }, function (err, factor) {
|
|
365
|
-
* console.log(factor);
|
|
366
|
-
* });
|
|
367
|
-
*
|
|
368
|
-
* @param {Object} params Factor parameters.
|
|
369
|
-
* @param {Object} data Updated factor data.
|
|
370
|
-
* @param {Function} [cb] Callback function.
|
|
371
|
-
*
|
|
372
|
-
* @return {Promise|undefined}
|
|
373
|
-
*/
|
|
374
|
-
utils.wrapPropertyMethod(GuardianManager, 'updateFactor', 'factors.update');
|
|
331
|
+
updateFactor(...args) {
|
|
332
|
+
return this.factors.update(...args);
|
|
333
|
+
}
|
|
375
334
|
|
|
376
|
-
/**
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
* @return {Promise|undefined}
|
|
390
|
-
*/
|
|
391
|
-
utils.wrapPropertyMethod(GuardianManager, 'getPolicies', 'policies.get');
|
|
335
|
+
/**
|
|
336
|
+
* Get enabled Guardian policies
|
|
337
|
+
*
|
|
338
|
+
* @example
|
|
339
|
+
* management.guardian.getPolicies(function (err, policies) {
|
|
340
|
+
* console.log(policies);
|
|
341
|
+
* });
|
|
342
|
+
* @param {Function} [cb] Callback function.
|
|
343
|
+
* @returns {Promise|undefined}
|
|
344
|
+
*/
|
|
345
|
+
getPolicies(...args) {
|
|
346
|
+
return this.policies.get(...args);
|
|
347
|
+
}
|
|
392
348
|
|
|
393
|
-
/**
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
* @return {Promise|undefined}
|
|
411
|
-
*/
|
|
412
|
-
utils.wrapPropertyMethod(GuardianManager, 'updatePolicies', 'policies.update');
|
|
349
|
+
/**
|
|
350
|
+
* Update enabled Guardian policies
|
|
351
|
+
*
|
|
352
|
+
* @example
|
|
353
|
+
* management.guardian.updatePolicies({}, [
|
|
354
|
+
* 'all-applications'
|
|
355
|
+
* ], function (err, policies) {
|
|
356
|
+
* console.log(policies);
|
|
357
|
+
* });
|
|
358
|
+
* @param {object} params Parameters.
|
|
359
|
+
* @param {string[]} data Policies to enable. Empty array disables all policies.
|
|
360
|
+
* @param {Function} [cb] Callback function.
|
|
361
|
+
* @returns {Promise|undefined}
|
|
362
|
+
*/
|
|
363
|
+
updatePolicies(...args) {
|
|
364
|
+
return this.policies.update(...args);
|
|
365
|
+
}
|
|
413
366
|
|
|
414
|
-
/**
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
* @return {Promise|undefined}
|
|
428
|
-
*/
|
|
429
|
-
utils.wrapPropertyMethod(
|
|
430
|
-
GuardianManager,
|
|
431
|
-
'getPhoneFactorSelectedProvider',
|
|
432
|
-
'factorsPhoneSelectedProvider.get'
|
|
433
|
-
);
|
|
367
|
+
/**
|
|
368
|
+
* Get the Guardian phone factor's selected provider
|
|
369
|
+
*
|
|
370
|
+
* @example
|
|
371
|
+
* management.guardian.getPhoneFactorSelectedProvider(function (err, selectedProvider) {
|
|
372
|
+
* console.log(selectedProvider);
|
|
373
|
+
* });
|
|
374
|
+
* @param {Function} [cb] Callback function.
|
|
375
|
+
* @returns {Promise|undefined}
|
|
376
|
+
*/
|
|
377
|
+
getPhoneFactorSelectedProvider(...args) {
|
|
378
|
+
return this.factorsPhoneSelectedProvider.get(...args);
|
|
379
|
+
}
|
|
434
380
|
|
|
435
|
-
/**
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
* @return {Promise|undefined}
|
|
454
|
-
*/
|
|
455
|
-
utils.wrapPropertyMethod(
|
|
456
|
-
GuardianManager,
|
|
457
|
-
'updatePhoneFactorSelectedProvider',
|
|
458
|
-
'factorsPhoneSelectedProvider.update'
|
|
459
|
-
);
|
|
381
|
+
/**
|
|
382
|
+
* Update the Guardian phone factor's selected provider
|
|
383
|
+
*
|
|
384
|
+
* @example
|
|
385
|
+
* management.guardian.updatePhoneFactorSelectedProvider({}, {
|
|
386
|
+
* provider: 'twilio'
|
|
387
|
+
* }, function (err, factor) {
|
|
388
|
+
* console.log(factor);
|
|
389
|
+
* });
|
|
390
|
+
* @param {object} params Parameters.
|
|
391
|
+
* @param {object} data Updated selected provider data.
|
|
392
|
+
* @param {string} data.provider Name of the selected provider
|
|
393
|
+
* @param {Function} [cb] Callback function.
|
|
394
|
+
* @returns {Promise|undefined}
|
|
395
|
+
*/
|
|
396
|
+
updatePhoneFactorSelectedProvider(...args) {
|
|
397
|
+
return this.factorsPhoneSelectedProvider.update(...args);
|
|
398
|
+
}
|
|
460
399
|
|
|
461
|
-
/**
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
* @return {Promise|undefined}
|
|
475
|
-
*/
|
|
476
|
-
utils.wrapPropertyMethod(
|
|
477
|
-
GuardianManager,
|
|
478
|
-
'getPhoneFactorMessageTypes',
|
|
479
|
-
'factorsPhoneMessageTypes.get'
|
|
480
|
-
);
|
|
400
|
+
/**
|
|
401
|
+
* Get the Guardian phone factor's message types
|
|
402
|
+
*
|
|
403
|
+
* @example
|
|
404
|
+
* management.guardian.getPhoneFactorMessageTypes(function (err, messageTypes) {
|
|
405
|
+
* console.log(messageTypes);
|
|
406
|
+
* });
|
|
407
|
+
* @param {Function} [cb] Callback function.
|
|
408
|
+
* @returns {Promise|undefined}
|
|
409
|
+
*/
|
|
410
|
+
getPhoneFactorMessageTypes(...args) {
|
|
411
|
+
return this.factorsPhoneMessageTypes.get(...args);
|
|
412
|
+
}
|
|
481
413
|
|
|
482
|
-
/**
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
*/
|
|
502
|
-
utils.wrapPropertyMethod(
|
|
503
|
-
GuardianManager,
|
|
504
|
-
'updatePhoneFactorMessageTypes',
|
|
505
|
-
'factorsPhoneMessageTypes.update'
|
|
506
|
-
);
|
|
414
|
+
/**
|
|
415
|
+
* Update the Guardian phone factor's message types
|
|
416
|
+
*
|
|
417
|
+
* @example
|
|
418
|
+
* management.guardian.updatePhoneFactorMessageTypes({}, {
|
|
419
|
+
* message_types: ['sms', 'voice']
|
|
420
|
+
* }, function (err, factor) {
|
|
421
|
+
* console.log(factor);
|
|
422
|
+
* });
|
|
423
|
+
* @param {object} params Parameters.
|
|
424
|
+
* @param {object} data Updated selected provider data.
|
|
425
|
+
* @param {string[]} data.message_types Message types (only `"sms"` and `"voice"` are supported).
|
|
426
|
+
* @param {Function} [cb] Callback function.
|
|
427
|
+
* @returns {Promise|undefined}
|
|
428
|
+
*/
|
|
429
|
+
updatePhoneFactorMessageTypes(...args) {
|
|
430
|
+
return this.factorsPhoneMessageTypes.update(...args);
|
|
431
|
+
}
|
|
432
|
+
}
|
|
507
433
|
|
|
508
434
|
module.exports = GuardianManager;
|