@pulumi/auth0 3.3.1 → 3.3.2
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/action.d.ts +3 -3
- package/attackProtection.d.ts +17 -19
- package/attackProtection.js +17 -19
- package/attackProtection.js.map +1 -1
- package/branding.d.ts +0 -21
- package/branding.js +0 -21
- package/branding.js.map +1 -1
- package/brandingTheme.d.ts +0 -83
- package/brandingTheme.js +0 -83
- package/brandingTheme.js.map +1 -1
- package/client.d.ts +47 -49
- package/client.js +42 -44
- package/client.js.map +1 -1
- package/clientCredentials.d.ts +0 -72
- package/clientCredentials.js +0 -54
- package/clientCredentials.js.map +1 -1
- package/connection.d.ts +457 -111
- package/connection.js +454 -108
- package/connection.js.map +1 -1
- package/connectionClient.d.ts +6 -5
- package/connectionClient.js +6 -5
- package/connectionClient.js.map +1 -1
- package/connectionClients.d.ts +7 -6
- package/connectionClients.js +7 -6
- package/connectionClients.js.map +1 -1
- package/customDomain.d.ts +1 -3
- package/customDomain.js +1 -3
- package/customDomain.js.map +1 -1
- package/customDomainVerification.d.ts +0 -8
- package/customDomainVerification.js.map +1 -1
- package/emailProvider.d.ts +0 -38
- package/emailProvider.js +0 -38
- package/emailProvider.js.map +1 -1
- package/emailTemplate.d.ts +3 -4
- package/emailTemplate.js +3 -4
- package/emailTemplate.js.map +1 -1
- package/getAttackProtection.d.ts +0 -4
- package/getAttackProtection.js +0 -4
- package/getAttackProtection.js.map +1 -1
- package/getBranding.d.ts +0 -4
- package/getBranding.js +0 -4
- package/getBranding.js.map +1 -1
- package/getBrandingTheme.d.ts +0 -4
- package/getBrandingTheme.js +0 -4
- package/getBrandingTheme.js.map +1 -1
- package/getClient.d.ts +16 -4
- package/getClient.js +4 -4
- package/getClient.js.map +1 -1
- package/getConnection.d.ts +10 -4
- package/getConnection.js +4 -4
- package/getConnection.js.map +1 -1
- package/getOrganization.d.ts +4 -4
- package/getOrganization.js +4 -4
- package/getPages.d.ts +0 -4
- package/getPages.js +0 -4
- package/getPages.js.map +1 -1
- package/getResourceServer.d.ts +4 -4
- package/getResourceServer.js +4 -4
- package/getRole.d.ts +10 -4
- package/getRole.js +4 -4
- package/getRole.js.map +1 -1
- package/getTenant.d.ts +0 -4
- package/getTenant.js +0 -4
- package/getTenant.js.map +1 -1
- package/getUser.d.ts +2 -4
- package/getUser.js +2 -4
- package/getUser.js.map +1 -1
- package/guardian.d.ts +17 -19
- package/guardian.js +17 -19
- package/guardian.js.map +1 -1
- package/hook.d.ts +7 -9
- package/hook.js +7 -9
- package/hook.js.map +1 -1
- package/logStream.d.ts +12 -12
- package/logStream.js +12 -12
- package/organization.d.ts +5 -6
- package/organization.js +5 -6
- package/organization.js.map +1 -1
- package/organizationConnection.d.ts +9 -5
- package/organizationConnection.js +9 -5
- package/organizationConnection.js.map +1 -1
- package/organizationConnections.d.ts +12 -5
- package/organizationConnections.js +12 -5
- package/organizationConnections.js.map +1 -1
- package/organizationMember.d.ts +5 -4
- package/organizationMember.js +5 -4
- package/organizationMember.js.map +1 -1
- package/organizationMemberRole.d.ts +7 -6
- package/organizationMemberRole.js +7 -6
- package/organizationMemberRole.js.map +1 -1
- package/organizationMemberRoles.d.ts +8 -7
- package/organizationMemberRoles.js +8 -7
- package/organizationMemberRoles.js.map +1 -1
- package/organizationMembers.d.ts +7 -6
- package/organizationMembers.js +7 -6
- package/organizationMembers.js.map +1 -1
- package/package.json +1 -1
- package/pages.d.ts +9 -11
- package/pages.js +9 -11
- package/pages.js.map +1 -1
- package/prompt.d.ts +2 -4
- package/prompt.js +2 -4
- package/prompt.js.map +1 -1
- package/promptCustomText.d.ts +0 -2
- package/promptCustomText.js +0 -2
- package/promptCustomText.js.map +1 -1
- package/promptPartials.d.ts +5 -7
- package/promptPartials.js +5 -7
- package/promptPartials.js.map +1 -1
- package/provider.d.ts +4 -4
- package/resourceServer.d.ts +4 -5
- package/resourceServer.js +4 -5
- package/resourceServer.js.map +1 -1
- package/resourceServerScope.d.ts +6 -5
- package/resourceServerScope.js +6 -5
- package/resourceServerScope.js.map +1 -1
- package/resourceServerScopes.d.ts +5 -4
- package/resourceServerScopes.js +5 -4
- package/resourceServerScopes.js.map +1 -1
- package/role.d.ts +4 -3
- package/role.js +4 -3
- package/role.js.map +1 -1
- package/rule.d.ts +3 -5
- package/rule.js +3 -5
- package/rule.js.map +1 -1
- package/ruleConfig.d.ts +4 -6
- package/ruleConfig.js +4 -6
- package/ruleConfig.js.map +1 -1
- package/tenant.d.ts +11 -13
- package/tenant.js +11 -13
- package/tenant.js.map +1 -1
- package/triggerAction.d.ts +3 -4
- package/triggerAction.js +3 -4
- package/triggerAction.js.map +1 -1
- package/triggerActions.d.ts +5 -5
- package/triggerActions.js +5 -5
- package/types/input.d.ts +30 -39
- package/types/output.d.ts +30 -39
- package/user.d.ts +4 -5
- package/user.js +4 -5
- package/user.js.map +1 -1
- package/userRole.d.ts +6 -4
- package/userRole.js +6 -4
- package/userRole.js.map +1 -1
- package/userRoles.d.ts +6 -4
- package/userRoles.js +6 -4
- package/userRoles.js.map +1 -1
package/connection.d.ts
CHANGED
|
@@ -9,27 +9,94 @@ import * as outputs from "./types/output";
|
|
|
9
9
|
*
|
|
10
10
|
* ## Example Usage
|
|
11
11
|
*
|
|
12
|
+
* ### Auth0 Connection
|
|
13
|
+
*
|
|
14
|
+
* ```typescript
|
|
15
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
16
|
+
* import * as auth0 from "@pulumi/auth0";
|
|
17
|
+
*
|
|
18
|
+
* // This is an example of an Auth0 connection.
|
|
19
|
+
* const myConnection = new auth0.Connection("my_connection", {
|
|
20
|
+
* name: "Example-Connection",
|
|
21
|
+
* isDomainConnection: true,
|
|
22
|
+
* strategy: "auth0",
|
|
23
|
+
* metadata: {
|
|
24
|
+
* key1: "foo",
|
|
25
|
+
* key2: "bar",
|
|
26
|
+
* },
|
|
27
|
+
* options: {
|
|
28
|
+
* passwordPolicy: "excellent",
|
|
29
|
+
* bruteForceProtection: true,
|
|
30
|
+
* enabledDatabaseCustomization: true,
|
|
31
|
+
* importMode: false,
|
|
32
|
+
* requiresUsername: true,
|
|
33
|
+
* disableSignup: false,
|
|
34
|
+
* customScripts: {
|
|
35
|
+
* get_user: ` function getByEmail(email, callback) {
|
|
36
|
+
* return callback(new Error("Whoops!"));
|
|
37
|
+
* }
|
|
38
|
+
* `,
|
|
39
|
+
* },
|
|
40
|
+
* configuration: {
|
|
41
|
+
* foo: "bar",
|
|
42
|
+
* bar: "baz",
|
|
43
|
+
* },
|
|
44
|
+
* upstreamParams: JSON.stringify({
|
|
45
|
+
* screen_name: {
|
|
46
|
+
* alias: "login_hint",
|
|
47
|
+
* },
|
|
48
|
+
* }),
|
|
49
|
+
* passwordHistories: [{
|
|
50
|
+
* enable: true,
|
|
51
|
+
* size: 3,
|
|
52
|
+
* }],
|
|
53
|
+
* passwordNoPersonalInfo: {
|
|
54
|
+
* enable: true,
|
|
55
|
+
* },
|
|
56
|
+
* passwordDictionary: {
|
|
57
|
+
* enable: true,
|
|
58
|
+
* dictionaries: [
|
|
59
|
+
* "password",
|
|
60
|
+
* "admin",
|
|
61
|
+
* "1234",
|
|
62
|
+
* ],
|
|
63
|
+
* },
|
|
64
|
+
* passwordComplexityOptions: {
|
|
65
|
+
* minLength: 12,
|
|
66
|
+
* },
|
|
67
|
+
* validation: {
|
|
68
|
+
* username: {
|
|
69
|
+
* min: 10,
|
|
70
|
+
* max: 40,
|
|
71
|
+
* },
|
|
72
|
+
* },
|
|
73
|
+
* mfa: {
|
|
74
|
+
* active: true,
|
|
75
|
+
* returnEnrollSettings: true,
|
|
76
|
+
* },
|
|
77
|
+
* },
|
|
78
|
+
* });
|
|
79
|
+
* ```
|
|
80
|
+
*
|
|
12
81
|
* ### Google OAuth2 Connection
|
|
13
82
|
*
|
|
14
83
|
* > Your Auth0 account may be pre-configured with a `google-oauth2` connection.
|
|
15
84
|
*
|
|
16
|
-
* <!--Start PulumiCodeChooser -->
|
|
17
85
|
* ```typescript
|
|
18
86
|
* import * as pulumi from "@pulumi/pulumi";
|
|
19
87
|
* import * as auth0 from "@pulumi/auth0";
|
|
20
88
|
*
|
|
21
|
-
*
|
|
89
|
+
* // This is an example of a Google OAuth2 connection.
|
|
90
|
+
* const googleOauth2 = new auth0.Connection("google_oauth2", {
|
|
91
|
+
* name: "Google-OAuth2-Connection",
|
|
92
|
+
* strategy: "google-oauth2",
|
|
22
93
|
* options: {
|
|
94
|
+
* clientId: "<client-id>",
|
|
95
|
+
* clientSecret: "<client-secret>",
|
|
23
96
|
* allowedAudiences: [
|
|
24
97
|
* "example.com",
|
|
25
98
|
* "api.example.com",
|
|
26
99
|
* ],
|
|
27
|
-
* clientId: "<client-id>",
|
|
28
|
-
* clientSecret: "<client-secret>",
|
|
29
|
-
* nonPersistentAttrs: [
|
|
30
|
-
* "ethnicity",
|
|
31
|
-
* "gender",
|
|
32
|
-
* ],
|
|
33
100
|
* scopes: [
|
|
34
101
|
* "email",
|
|
35
102
|
* "profile",
|
|
@@ -37,27 +104,67 @@ import * as outputs from "./types/output";
|
|
|
37
104
|
* "youtube",
|
|
38
105
|
* ],
|
|
39
106
|
* setUserRootAttributes: "on_each_login",
|
|
107
|
+
* nonPersistentAttrs: [
|
|
108
|
+
* "ethnicity",
|
|
109
|
+
* "gender",
|
|
110
|
+
* ],
|
|
40
111
|
* },
|
|
41
|
-
* strategy: "google-oauth2",
|
|
42
112
|
* });
|
|
43
113
|
* ```
|
|
44
|
-
* <!--End PulumiCodeChooser -->
|
|
45
114
|
*
|
|
46
|
-
* ###
|
|
115
|
+
* ### Google Apps
|
|
47
116
|
*
|
|
48
|
-
* <!--Start PulumiCodeChooser -->
|
|
49
117
|
* ```typescript
|
|
50
118
|
* import * as pulumi from "@pulumi/pulumi";
|
|
51
119
|
* import * as auth0 from "@pulumi/auth0";
|
|
52
120
|
*
|
|
53
|
-
* const
|
|
121
|
+
* const googleApps = new auth0.Connection("google_apps", {
|
|
122
|
+
* name: "connection-google-apps",
|
|
123
|
+
* isDomainConnection: false,
|
|
124
|
+
* strategy: "google-apps",
|
|
125
|
+
* showAsButton: false,
|
|
54
126
|
* options: {
|
|
55
|
-
* clientId: "
|
|
56
|
-
* clientSecret: "
|
|
127
|
+
* clientId: "",
|
|
128
|
+
* clientSecret: "",
|
|
129
|
+
* domain: "example.com",
|
|
130
|
+
* tenantDomain: "example.com",
|
|
131
|
+
* domainAliases: [
|
|
132
|
+
* "example.com",
|
|
133
|
+
* "api.example.com",
|
|
134
|
+
* ],
|
|
135
|
+
* apiEnableUsers: true,
|
|
136
|
+
* scopes: [
|
|
137
|
+
* "ext_profile",
|
|
138
|
+
* "ext_groups",
|
|
139
|
+
* ],
|
|
140
|
+
* iconUrl: "https://example.com/assets/logo.png",
|
|
141
|
+
* upstreamParams: JSON.stringify({
|
|
142
|
+
* screen_name: {
|
|
143
|
+
* alias: "login_hint",
|
|
144
|
+
* },
|
|
145
|
+
* }),
|
|
146
|
+
* setUserRootAttributes: "on_each_login",
|
|
57
147
|
* nonPersistentAttrs: [
|
|
58
148
|
* "ethnicity",
|
|
59
149
|
* "gender",
|
|
60
150
|
* ],
|
|
151
|
+
* },
|
|
152
|
+
* });
|
|
153
|
+
* ```
|
|
154
|
+
*
|
|
155
|
+
* ### Facebook Connection
|
|
156
|
+
*
|
|
157
|
+
* ```typescript
|
|
158
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
159
|
+
* import * as auth0 from "@pulumi/auth0";
|
|
160
|
+
*
|
|
161
|
+
* // This is an example of a Facebook connection.
|
|
162
|
+
* const facebook = new auth0.Connection("facebook", {
|
|
163
|
+
* name: "Facebook-Connection",
|
|
164
|
+
* strategy: "facebook",
|
|
165
|
+
* options: {
|
|
166
|
+
* clientId: "<client-id>",
|
|
167
|
+
* clientSecret: "<client-secret>",
|
|
61
168
|
* scopes: [
|
|
62
169
|
* "public_profile",
|
|
63
170
|
* "email",
|
|
@@ -65,86 +172,85 @@ import * as outputs from "./types/output";
|
|
|
65
172
|
* "user_birthday",
|
|
66
173
|
* ],
|
|
67
174
|
* setUserRootAttributes: "on_each_login",
|
|
175
|
+
* nonPersistentAttrs: [
|
|
176
|
+
* "ethnicity",
|
|
177
|
+
* "gender",
|
|
178
|
+
* ],
|
|
68
179
|
* },
|
|
69
|
-
* strategy: "facebook",
|
|
70
180
|
* });
|
|
71
181
|
* ```
|
|
72
|
-
* <!--End PulumiCodeChooser -->
|
|
73
182
|
*
|
|
74
183
|
* ### Apple Connection
|
|
75
184
|
*
|
|
76
|
-
* <!--Start PulumiCodeChooser -->
|
|
77
185
|
* ```typescript
|
|
78
186
|
* import * as pulumi from "@pulumi/pulumi";
|
|
79
187
|
* import * as auth0 from "@pulumi/auth0";
|
|
80
188
|
*
|
|
189
|
+
* // This is an example of an Apple connection.
|
|
81
190
|
* const apple = new auth0.Connection("apple", {
|
|
191
|
+
* name: "Apple-Connection",
|
|
192
|
+
* strategy: "apple",
|
|
82
193
|
* options: {
|
|
83
194
|
* clientId: "<client-id>",
|
|
84
195
|
* clientSecret: `-----BEGIN PRIVATE KEY-----
|
|
85
196
|
* MIHBAgEAMA0GCSqGSIb3DQEBAQUABIGsMIGpAgEAA
|
|
86
|
-
* -----END PRIVATE KEY
|
|
87
|
-
*
|
|
197
|
+
* -----END PRIVATE KEY-----`,
|
|
198
|
+
* teamId: "<team-id>",
|
|
88
199
|
* keyId: "<key-id>",
|
|
89
|
-
* nonPersistentAttrs: [
|
|
90
|
-
* "ethnicity",
|
|
91
|
-
* "gender",
|
|
92
|
-
* ],
|
|
93
200
|
* scopes: [
|
|
94
201
|
* "email",
|
|
95
202
|
* "name",
|
|
96
203
|
* ],
|
|
97
204
|
* setUserRootAttributes: "on_first_login",
|
|
98
|
-
*
|
|
205
|
+
* nonPersistentAttrs: [
|
|
206
|
+
* "ethnicity",
|
|
207
|
+
* "gender",
|
|
208
|
+
* ],
|
|
99
209
|
* },
|
|
100
|
-
* strategy: "apple",
|
|
101
210
|
* });
|
|
102
211
|
* ```
|
|
103
|
-
* <!--End PulumiCodeChooser -->
|
|
104
212
|
*
|
|
105
213
|
* ### LinkedIn Connection
|
|
106
214
|
*
|
|
107
|
-
* <!--Start PulumiCodeChooser -->
|
|
108
215
|
* ```typescript
|
|
109
216
|
* import * as pulumi from "@pulumi/pulumi";
|
|
110
217
|
* import * as auth0 from "@pulumi/auth0";
|
|
111
218
|
*
|
|
219
|
+
* // This is an example of an LinkedIn connection.
|
|
112
220
|
* const linkedin = new auth0.Connection("linkedin", {
|
|
221
|
+
* name: "Linkedin-Connection",
|
|
222
|
+
* strategy: "linkedin",
|
|
113
223
|
* options: {
|
|
114
224
|
* clientId: "<client-id>",
|
|
115
225
|
* clientSecret: "<client-secret>",
|
|
116
|
-
*
|
|
117
|
-
* "ethnicity",
|
|
118
|
-
* "gender",
|
|
119
|
-
* ],
|
|
226
|
+
* strategyVersion: 2,
|
|
120
227
|
* scopes: [
|
|
121
228
|
* "basic_profile",
|
|
122
229
|
* "profile",
|
|
123
230
|
* "email",
|
|
124
231
|
* ],
|
|
125
232
|
* setUserRootAttributes: "on_each_login",
|
|
126
|
-
*
|
|
233
|
+
* nonPersistentAttrs: [
|
|
234
|
+
* "ethnicity",
|
|
235
|
+
* "gender",
|
|
236
|
+
* ],
|
|
127
237
|
* },
|
|
128
|
-
* strategy: "linkedin",
|
|
129
238
|
* });
|
|
130
239
|
* ```
|
|
131
|
-
* <!--End PulumiCodeChooser -->
|
|
132
240
|
*
|
|
133
241
|
* ### GitHub Connection
|
|
134
242
|
*
|
|
135
|
-
* <!--Start PulumiCodeChooser -->
|
|
136
243
|
* ```typescript
|
|
137
244
|
* import * as pulumi from "@pulumi/pulumi";
|
|
138
245
|
* import * as auth0 from "@pulumi/auth0";
|
|
139
246
|
*
|
|
247
|
+
* // This is an example of an GitHub connection.
|
|
140
248
|
* const github = new auth0.Connection("github", {
|
|
249
|
+
* name: "GitHub-Connection",
|
|
250
|
+
* strategy: "github",
|
|
141
251
|
* options: {
|
|
142
252
|
* clientId: "<client-id>",
|
|
143
253
|
* clientSecret: "<client-secret>",
|
|
144
|
-
* nonPersistentAttrs: [
|
|
145
|
-
* "ethnicity",
|
|
146
|
-
* "gender",
|
|
147
|
-
* ],
|
|
148
254
|
* scopes: [
|
|
149
255
|
* "email",
|
|
150
256
|
* "profile",
|
|
@@ -152,177 +258,417 @@ import * as outputs from "./types/output";
|
|
|
152
258
|
* "repo",
|
|
153
259
|
* ],
|
|
154
260
|
* setUserRootAttributes: "on_each_login",
|
|
261
|
+
* nonPersistentAttrs: [
|
|
262
|
+
* "ethnicity",
|
|
263
|
+
* "gender",
|
|
264
|
+
* ],
|
|
155
265
|
* },
|
|
156
|
-
* strategy: "github",
|
|
157
266
|
* });
|
|
158
267
|
* ```
|
|
159
|
-
* <!--End PulumiCodeChooser -->
|
|
160
268
|
*
|
|
161
269
|
* ### SalesForce Connection
|
|
162
270
|
*
|
|
163
|
-
* <!--Start PulumiCodeChooser -->
|
|
164
271
|
* ```typescript
|
|
165
272
|
* import * as pulumi from "@pulumi/pulumi";
|
|
166
273
|
* import * as auth0 from "@pulumi/auth0";
|
|
167
274
|
*
|
|
275
|
+
* // This is an example of an SalesForce connection.
|
|
168
276
|
* const salesforce = new auth0.Connection("salesforce", {
|
|
277
|
+
* name: "Salesforce-Connection",
|
|
278
|
+
* strategy: "salesforce",
|
|
169
279
|
* options: {
|
|
170
280
|
* clientId: "<client-id>",
|
|
171
281
|
* clientSecret: "<client-secret>",
|
|
172
282
|
* communityBaseUrl: "https://salesforce.example.com",
|
|
173
|
-
* nonPersistentAttrs: [
|
|
174
|
-
* "ethnicity",
|
|
175
|
-
* "gender",
|
|
176
|
-
* ],
|
|
177
283
|
* scopes: [
|
|
178
284
|
* "openid",
|
|
179
285
|
* "email",
|
|
180
286
|
* ],
|
|
181
287
|
* setUserRootAttributes: "on_first_login",
|
|
288
|
+
* nonPersistentAttrs: [
|
|
289
|
+
* "ethnicity",
|
|
290
|
+
* "gender",
|
|
291
|
+
* ],
|
|
182
292
|
* },
|
|
183
|
-
* strategy: "salesforce",
|
|
184
293
|
* });
|
|
185
294
|
* ```
|
|
186
|
-
* <!--End PulumiCodeChooser -->
|
|
187
295
|
*
|
|
188
296
|
* ### OAuth2 Connection
|
|
189
297
|
*
|
|
190
298
|
* Also applies to following connection strategies: `dropbox`, `bitbucket`, `paypal`, `twitter`, `amazon`, `yahoo`, `box`, `wordpress`, `shopify`, `custom`
|
|
191
299
|
*
|
|
192
|
-
* <!--Start PulumiCodeChooser -->
|
|
193
300
|
* ```typescript
|
|
194
301
|
* import * as pulumi from "@pulumi/pulumi";
|
|
195
302
|
* import * as auth0 from "@pulumi/auth0";
|
|
196
303
|
*
|
|
304
|
+
* // This is an example of an OAuth2 connection.
|
|
197
305
|
* const oauth2 = new auth0.Connection("oauth2", {
|
|
306
|
+
* name: "OAuth2-Connection",
|
|
307
|
+
* strategy: "oauth2",
|
|
198
308
|
* options: {
|
|
199
|
-
* authorizationEndpoint: "https://auth.example.com/oauth2/authorize",
|
|
200
309
|
* clientId: "<client-id>",
|
|
201
310
|
* clientSecret: "<client-secret>",
|
|
202
|
-
* iconUrl: "https://auth.example.com/assets/logo.png",
|
|
203
|
-
* nonPersistentAttrs: [
|
|
204
|
-
* "ethnicity",
|
|
205
|
-
* "gender",
|
|
206
|
-
* ],
|
|
207
|
-
* pkceEnabled: true,
|
|
208
311
|
* scopes: [
|
|
209
312
|
* "basic_profile",
|
|
210
313
|
* "profile",
|
|
211
314
|
* "email",
|
|
212
315
|
* ],
|
|
316
|
+
* tokenEndpoint: "https://auth.example.com/oauth2/token",
|
|
317
|
+
* authorizationEndpoint: "https://auth.example.com/oauth2/authorize",
|
|
318
|
+
* pkceEnabled: true,
|
|
319
|
+
* iconUrl: "https://auth.example.com/assets/logo.png",
|
|
213
320
|
* scripts: {
|
|
214
321
|
* fetchUserProfile: ` function fetchUserProfile(accessToken, context, callback) {
|
|
215
322
|
* return callback(new Error("Whoops!"));
|
|
216
323
|
* }
|
|
217
|
-
*
|
|
218
324
|
* `,
|
|
219
325
|
* },
|
|
220
326
|
* setUserRootAttributes: "on_each_login",
|
|
221
|
-
*
|
|
327
|
+
* nonPersistentAttrs: [
|
|
328
|
+
* "ethnicity",
|
|
329
|
+
* "gender",
|
|
330
|
+
* ],
|
|
222
331
|
* },
|
|
223
|
-
* strategy: "oauth2",
|
|
224
332
|
* });
|
|
225
333
|
* ```
|
|
226
|
-
* <!--End PulumiCodeChooser -->
|
|
227
334
|
*
|
|
228
|
-
* ###
|
|
335
|
+
* ### Active Directory (AD)
|
|
229
336
|
*
|
|
230
|
-
* > To be able to see this in the management dashboard as well, the name of the connection must be set to "sms".
|
|
231
|
-
*
|
|
232
|
-
* <!--Start PulumiCodeChooser -->
|
|
233
337
|
* ```typescript
|
|
234
338
|
* import * as pulumi from "@pulumi/pulumi";
|
|
235
339
|
* import * as auth0 from "@pulumi/auth0";
|
|
236
340
|
*
|
|
237
|
-
* const
|
|
238
|
-
*
|
|
341
|
+
* const ad = new auth0.Connection("ad", {
|
|
342
|
+
* name: "connection-active-directory",
|
|
343
|
+
* displayName: "Active Directory Connection",
|
|
344
|
+
* strategy: "ad",
|
|
345
|
+
* showAsButton: true,
|
|
239
346
|
* options: {
|
|
347
|
+
* disableSelfServiceChangePassword: true,
|
|
240
348
|
* bruteForceProtection: true,
|
|
241
|
-
*
|
|
242
|
-
*
|
|
243
|
-
*
|
|
244
|
-
*
|
|
245
|
-
*
|
|
246
|
-
*
|
|
247
|
-
*
|
|
248
|
-
*
|
|
249
|
-
*
|
|
250
|
-
*
|
|
251
|
-
*
|
|
252
|
-
*
|
|
253
|
-
*
|
|
254
|
-
*
|
|
255
|
-
*
|
|
256
|
-
*
|
|
257
|
-
*
|
|
258
|
-
*
|
|
259
|
-
*
|
|
349
|
+
* tenantDomain: "example.com",
|
|
350
|
+
* iconUrl: "https://example.com/assets/logo.png",
|
|
351
|
+
* domainAliases: [
|
|
352
|
+
* "example.com",
|
|
353
|
+
* "api.example.com",
|
|
354
|
+
* ],
|
|
355
|
+
* ips: [
|
|
356
|
+
* "192.168.1.1",
|
|
357
|
+
* "192.168.1.2",
|
|
358
|
+
* ],
|
|
359
|
+
* setUserRootAttributes: "on_each_login",
|
|
360
|
+
* nonPersistentAttrs: [
|
|
361
|
+
* "ethnicity",
|
|
362
|
+
* "gender",
|
|
363
|
+
* ],
|
|
364
|
+
* upstreamParams: JSON.stringify({
|
|
365
|
+
* screen_name: {
|
|
366
|
+
* alias: "login_hint",
|
|
367
|
+
* },
|
|
368
|
+
* }),
|
|
369
|
+
* useCertAuth: false,
|
|
370
|
+
* useKerberos: false,
|
|
371
|
+
* disableCache: false,
|
|
372
|
+
* },
|
|
373
|
+
* });
|
|
374
|
+
* ```
|
|
375
|
+
*
|
|
376
|
+
* ### Azure AD Connection
|
|
377
|
+
*
|
|
378
|
+
* ```typescript
|
|
379
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
380
|
+
* import * as auth0 from "@pulumi/auth0";
|
|
381
|
+
*
|
|
382
|
+
* const azureAd = new auth0.Connection("azure_ad", {
|
|
383
|
+
* name: "connection-azure-ad",
|
|
384
|
+
* strategy: "waad",
|
|
385
|
+
* showAsButton: true,
|
|
386
|
+
* options: {
|
|
387
|
+
* identityApi: "azure-active-directory-v1.0",
|
|
388
|
+
* clientId: "123456",
|
|
389
|
+
* clientSecret: "123456",
|
|
390
|
+
* appId: "app-id-123",
|
|
391
|
+
* tenantDomain: "example.onmicrosoft.com",
|
|
392
|
+
* domain: "example.onmicrosoft.com",
|
|
393
|
+
* domainAliases: [
|
|
394
|
+
* "example.com",
|
|
395
|
+
* "api.example.com",
|
|
396
|
+
* ],
|
|
397
|
+
* iconUrl: "https://example.onmicrosoft.com/assets/logo.png",
|
|
398
|
+
* useWsfed: false,
|
|
399
|
+
* waadProtocol: "openid-connect",
|
|
400
|
+
* waadCommonEndpoint: false,
|
|
401
|
+
* maxGroupsToRetrieve: "250",
|
|
402
|
+
* apiEnableUsers: true,
|
|
403
|
+
* scopes: [
|
|
404
|
+
* "basic_profile",
|
|
405
|
+
* "ext_groups",
|
|
406
|
+
* "ext_profile",
|
|
407
|
+
* ],
|
|
408
|
+
* setUserRootAttributes: "on_each_login",
|
|
409
|
+
* shouldTrustEmailVerifiedConnection: "never_set_emails_as_verified",
|
|
410
|
+
* upstreamParams: JSON.stringify({
|
|
411
|
+
* screen_name: {
|
|
412
|
+
* alias: "login_hint",
|
|
413
|
+
* },
|
|
414
|
+
* }),
|
|
415
|
+
* nonPersistentAttrs: [
|
|
416
|
+
* "ethnicity",
|
|
417
|
+
* "gender",
|
|
418
|
+
* ],
|
|
260
419
|
* },
|
|
261
|
-
* strategy: "sms",
|
|
262
420
|
* });
|
|
263
421
|
* ```
|
|
264
|
-
* <!--End PulumiCodeChooser -->
|
|
265
422
|
*
|
|
266
423
|
* ### Email Connection
|
|
267
424
|
*
|
|
268
425
|
* > To be able to see this in the management dashboard as well, the name of the connection must be set to "email".
|
|
269
426
|
*
|
|
270
|
-
* <!--Start PulumiCodeChooser -->
|
|
271
427
|
* ```typescript
|
|
272
428
|
* import * as pulumi from "@pulumi/pulumi";
|
|
273
429
|
* import * as auth0 from "@pulumi/auth0";
|
|
274
430
|
*
|
|
275
|
-
*
|
|
431
|
+
* // This is an example of an Email connection.
|
|
432
|
+
* const passwordlessEmail = new auth0.Connection("passwordless_email", {
|
|
433
|
+
* strategy: "email",
|
|
434
|
+
* name: "email",
|
|
276
435
|
* options: {
|
|
277
|
-
* authParams: {
|
|
278
|
-
* responseType: "code",
|
|
279
|
-
* scope: "openid email profile offline_access",
|
|
280
|
-
* },
|
|
281
|
-
* bruteForceProtection: true,
|
|
282
|
-
* disableSignup: false,
|
|
283
|
-
* from: "{{ application.name }} <root@auth0.com>",
|
|
284
436
|
* name: "email",
|
|
285
|
-
*
|
|
286
|
-
* setUserRootAttributes: "on_each_login",
|
|
437
|
+
* from: "{{ application.name }} <root@auth0.com>",
|
|
287
438
|
* subject: "Welcome to {{ application.name }}",
|
|
288
439
|
* syntax: "liquid",
|
|
289
440
|
* template: "<html>This is the body of the email</html>",
|
|
441
|
+
* disableSignup: false,
|
|
442
|
+
* bruteForceProtection: true,
|
|
443
|
+
* setUserRootAttributes: "on_each_login",
|
|
444
|
+
* nonPersistentAttrs: [],
|
|
445
|
+
* authParams: {
|
|
446
|
+
* scope: "openid email profile offline_access",
|
|
447
|
+
* response_type: "code",
|
|
448
|
+
* },
|
|
290
449
|
* totp: {
|
|
291
|
-
* length: 6,
|
|
292
450
|
* timeStep: 300,
|
|
451
|
+
* length: 6,
|
|
452
|
+
* },
|
|
453
|
+
* },
|
|
454
|
+
* });
|
|
455
|
+
* ```
|
|
456
|
+
*
|
|
457
|
+
* ### SAML Connection
|
|
458
|
+
*
|
|
459
|
+
* ```typescript
|
|
460
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
461
|
+
* import * as auth0 from "@pulumi/auth0";
|
|
462
|
+
*
|
|
463
|
+
* // This is an example of a SAML connection.
|
|
464
|
+
* const samlp = new auth0.Connection("samlp", {
|
|
465
|
+
* name: "SAML-Connection",
|
|
466
|
+
* strategy: "samlp",
|
|
467
|
+
* options: {
|
|
468
|
+
* debug: false,
|
|
469
|
+
* signingCert: "<signing-certificate>",
|
|
470
|
+
* signInEndpoint: "https://saml.provider/sign_in",
|
|
471
|
+
* signOutEndpoint: "https://saml.provider/sign_out",
|
|
472
|
+
* disableSignOut: true,
|
|
473
|
+
* tenantDomain: "example.com",
|
|
474
|
+
* domainAliases: [
|
|
475
|
+
* "example.com",
|
|
476
|
+
* "alias.example.com",
|
|
477
|
+
* ],
|
|
478
|
+
* protocolBinding: "urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST",
|
|
479
|
+
* requestTemplate: `<samlp:AuthnRequest xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
|
|
480
|
+
* @@AssertServiceURLAndDestination@@
|
|
481
|
+
* ID="@@ID@@"
|
|
482
|
+
* IssueInstant="@@IssueInstant@@"
|
|
483
|
+
* ProtocolBinding="@@ProtocolBinding@@" Version="2.0">
|
|
484
|
+
* <saml:Issuer xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion">@@Issuer@@</saml:Issuer>
|
|
485
|
+
* </samlp:AuthnRequest>`,
|
|
486
|
+
* userIdAttribute: "https://saml.provider/imi/ns/identity-200810",
|
|
487
|
+
* signatureAlgorithm: "rsa-sha256",
|
|
488
|
+
* digestAlgorithm: "sha256",
|
|
489
|
+
* iconUrl: "https://saml.provider/assets/logo.png",
|
|
490
|
+
* entityId: "<entity_id>",
|
|
491
|
+
* metadataXml: ` <?xml version="1.0"?>
|
|
492
|
+
* <md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" entityID="https://example.com">
|
|
493
|
+
* <md:IDPSSODescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
|
|
494
|
+
* <md:SingleLogoutService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="https://saml.provider/sign_out"/>
|
|
495
|
+
* <md:SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="https://saml.provider/sign_in"/>
|
|
496
|
+
* </md:IDPSSODescriptor>
|
|
497
|
+
* </md:EntityDescriptor>
|
|
498
|
+
* `,
|
|
499
|
+
* metadataUrl: "https://saml.provider/imi/ns/FederationMetadata.xml",
|
|
500
|
+
* fieldsMap: JSON.stringify({
|
|
501
|
+
* name: [
|
|
502
|
+
* "name",
|
|
503
|
+
* "nameidentifier",
|
|
504
|
+
* ],
|
|
505
|
+
* email: [
|
|
506
|
+
* "emailaddress",
|
|
507
|
+
* "nameidentifier",
|
|
508
|
+
* ],
|
|
509
|
+
* family_name: "surname",
|
|
510
|
+
* }),
|
|
511
|
+
* signingKey: {
|
|
512
|
+
* key: `-----BEGIN PRIVATE KEY-----
|
|
513
|
+
* ...{your private key here}...
|
|
514
|
+
* -----END PRIVATE KEY-----`,
|
|
515
|
+
* cert: `-----BEGIN CERTIFICATE-----
|
|
516
|
+
* ...{your public key cert here}...
|
|
517
|
+
* -----END CERTIFICATE-----`,
|
|
518
|
+
* },
|
|
519
|
+
* decryptionKey: {
|
|
520
|
+
* key: `-----BEGIN PRIVATE KEY-----
|
|
521
|
+
* ...{your private key here}...
|
|
522
|
+
* -----END PRIVATE KEY-----`,
|
|
523
|
+
* cert: `-----BEGIN CERTIFICATE-----
|
|
524
|
+
* ...{your public key cert here}...
|
|
525
|
+
* -----END CERTIFICATE-----`,
|
|
526
|
+
* },
|
|
527
|
+
* idpInitiated: {
|
|
528
|
+
* clientId: "client_id",
|
|
529
|
+
* clientProtocol: "samlp",
|
|
530
|
+
* clientAuthorizeQuery: "type=code&timeout=30",
|
|
293
531
|
* },
|
|
294
532
|
* },
|
|
295
|
-
* strategy: "email",
|
|
296
533
|
* });
|
|
297
534
|
* ```
|
|
298
|
-
* <!--End PulumiCodeChooser -->
|
|
299
535
|
*
|
|
300
536
|
* ### WindowsLive Connection
|
|
301
537
|
*
|
|
302
|
-
* <!--Start PulumiCodeChooser -->
|
|
303
538
|
* ```typescript
|
|
304
539
|
* import * as pulumi from "@pulumi/pulumi";
|
|
305
540
|
* import * as auth0 from "@pulumi/auth0";
|
|
306
541
|
*
|
|
542
|
+
* // This is an example of a WindowsLive connection.
|
|
307
543
|
* const windowslive = new auth0.Connection("windowslive", {
|
|
544
|
+
* name: "Windowslive-Connection",
|
|
545
|
+
* strategy: "windowslive",
|
|
308
546
|
* options: {
|
|
309
547
|
* clientId: "<client-id>",
|
|
310
548
|
* clientSecret: "<client-secret>",
|
|
549
|
+
* strategyVersion: 2,
|
|
550
|
+
* scopes: [
|
|
551
|
+
* "signin",
|
|
552
|
+
* "graph_user",
|
|
553
|
+
* ],
|
|
554
|
+
* setUserRootAttributes: "on_first_login",
|
|
311
555
|
* nonPersistentAttrs: [
|
|
312
556
|
* "ethnicity",
|
|
313
557
|
* "gender",
|
|
314
558
|
* ],
|
|
559
|
+
* },
|
|
560
|
+
* });
|
|
561
|
+
* ```
|
|
562
|
+
*
|
|
563
|
+
* ### OIDC Connection
|
|
564
|
+
*
|
|
565
|
+
* ```typescript
|
|
566
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
567
|
+
* import * as auth0 from "@pulumi/auth0";
|
|
568
|
+
*
|
|
569
|
+
* // This is an example of an OIDC connection.
|
|
570
|
+
* const oidc = new auth0.Connection("oidc", {
|
|
571
|
+
* name: "oidc-connection",
|
|
572
|
+
* displayName: "OIDC Connection",
|
|
573
|
+
* strategy: "oidc",
|
|
574
|
+
* showAsButton: false,
|
|
575
|
+
* options: {
|
|
576
|
+
* clientId: "1234567",
|
|
577
|
+
* clientSecret: "1234567",
|
|
578
|
+
* domainAliases: ["example.com"],
|
|
579
|
+
* tenantDomain: "",
|
|
580
|
+
* iconUrl: "https://example.com/assets/logo.png",
|
|
581
|
+
* type: "back_channel",
|
|
582
|
+
* issuer: "https://www.paypalobjects.com",
|
|
583
|
+
* jwksUri: "https://api.paypal.com/v1/oauth2/certs",
|
|
584
|
+
* discoveryUrl: "https://www.paypalobjects.com/.well-known/openid-configuration",
|
|
585
|
+
* tokenEndpoint: "https://api.paypal.com/v1/oauth2/token",
|
|
586
|
+
* userinfoEndpoint: "https://api.paypal.com/v1/oauth2/token/userinfo",
|
|
587
|
+
* authorizationEndpoint: "https://www.paypal.com/signin/authorize",
|
|
315
588
|
* scopes: [
|
|
316
|
-
* "
|
|
317
|
-
* "
|
|
589
|
+
* "openid",
|
|
590
|
+
* "email",
|
|
318
591
|
* ],
|
|
319
592
|
* setUserRootAttributes: "on_first_login",
|
|
320
|
-
*
|
|
593
|
+
* nonPersistentAttrs: [
|
|
594
|
+
* "ethnicity",
|
|
595
|
+
* "gender",
|
|
596
|
+
* ],
|
|
597
|
+
* connectionSettings: {
|
|
598
|
+
* pkce: "auto",
|
|
599
|
+
* },
|
|
600
|
+
* attributeMap: {
|
|
601
|
+
* mappingMode: "use_map",
|
|
602
|
+
* userinfoScope: "openid email profile groups",
|
|
603
|
+
* attributes: JSON.stringify({
|
|
604
|
+
* name: "${context.tokenset.name}",
|
|
605
|
+
* email: "${context.tokenset.email}",
|
|
606
|
+
* email_verified: "${context.tokenset.email_verified}",
|
|
607
|
+
* nickname: "${context.tokenset.nickname}",
|
|
608
|
+
* picture: "${context.tokenset.picture}",
|
|
609
|
+
* given_name: "${context.tokenset.given_name}",
|
|
610
|
+
* family_name: "${context.tokenset.family_name}",
|
|
611
|
+
* }),
|
|
612
|
+
* },
|
|
613
|
+
* },
|
|
614
|
+
* });
|
|
615
|
+
* ```
|
|
616
|
+
*
|
|
617
|
+
* ### Okta Connection
|
|
618
|
+
*
|
|
619
|
+
* ```typescript
|
|
620
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
621
|
+
* import * as auth0 from "@pulumi/auth0";
|
|
622
|
+
*
|
|
623
|
+
* // This is an example of an Okta Workforce connection.
|
|
624
|
+
* const okta = new auth0.Connection("okta", {
|
|
625
|
+
* name: "okta-connection",
|
|
626
|
+
* displayName: "Okta Workforce Connection",
|
|
627
|
+
* strategy: "okta",
|
|
628
|
+
* showAsButton: false,
|
|
629
|
+
* options: {
|
|
630
|
+
* clientId: "1234567",
|
|
631
|
+
* clientSecret: "1234567",
|
|
632
|
+
* domain: "example.okta.com",
|
|
633
|
+
* domainAliases: ["example.com"],
|
|
634
|
+
* issuer: "https://example.okta.com",
|
|
635
|
+
* jwksUri: "https://example.okta.com/oauth2/v1/keys",
|
|
636
|
+
* tokenEndpoint: "https://example.okta.com/oauth2/v1/token",
|
|
637
|
+
* userinfoEndpoint: "https://example.okta.com/oauth2/v1/userinfo",
|
|
638
|
+
* authorizationEndpoint: "https://example.okta.com/oauth2/v1/authorize",
|
|
639
|
+
* scopes: [
|
|
640
|
+
* "openid",
|
|
641
|
+
* "email",
|
|
642
|
+
* ],
|
|
643
|
+
* setUserRootAttributes: "on_first_login",
|
|
644
|
+
* nonPersistentAttrs: [
|
|
645
|
+
* "ethnicity",
|
|
646
|
+
* "gender",
|
|
647
|
+
* ],
|
|
648
|
+
* upstreamParams: JSON.stringify({
|
|
649
|
+
* screen_name: {
|
|
650
|
+
* alias: "login_hint",
|
|
651
|
+
* },
|
|
652
|
+
* }),
|
|
653
|
+
* connectionSettings: {
|
|
654
|
+
* pkce: "auto",
|
|
655
|
+
* },
|
|
656
|
+
* attributeMap: {
|
|
657
|
+
* mappingMode: "basic_profile",
|
|
658
|
+
* userinfoScope: "openid email profile groups",
|
|
659
|
+
* attributes: JSON.stringify({
|
|
660
|
+
* name: "${context.tokenset.name}",
|
|
661
|
+
* email: "${context.tokenset.email}",
|
|
662
|
+
* email_verified: "${context.tokenset.email_verified}",
|
|
663
|
+
* nickname: "${context.tokenset.nickname}",
|
|
664
|
+
* picture: "${context.tokenset.picture}",
|
|
665
|
+
* given_name: "${context.tokenset.given_name}",
|
|
666
|
+
* family_name: "${context.tokenset.family_name}",
|
|
667
|
+
* }),
|
|
668
|
+
* },
|
|
321
669
|
* },
|
|
322
|
-
* strategy: "windowslive",
|
|
323
670
|
* });
|
|
324
671
|
* ```
|
|
325
|
-
* <!--End PulumiCodeChooser -->
|
|
326
672
|
*
|
|
327
673
|
* ## Import
|
|
328
674
|
*
|
|
@@ -367,7 +713,7 @@ export declare class Connection extends pulumi.CustomResource {
|
|
|
367
713
|
[key: string]: string;
|
|
368
714
|
} | undefined>;
|
|
369
715
|
/**
|
|
370
|
-
*
|
|
716
|
+
* Name of the connection.
|
|
371
717
|
*/
|
|
372
718
|
readonly name: pulumi.Output<string>;
|
|
373
719
|
/**
|
|
@@ -414,7 +760,7 @@ export interface ConnectionState {
|
|
|
414
760
|
[key: string]: pulumi.Input<string>;
|
|
415
761
|
}>;
|
|
416
762
|
/**
|
|
417
|
-
*
|
|
763
|
+
* Name of the connection.
|
|
418
764
|
*/
|
|
419
765
|
name?: pulumi.Input<string>;
|
|
420
766
|
/**
|
|
@@ -453,7 +799,7 @@ export interface ConnectionArgs {
|
|
|
453
799
|
[key: string]: pulumi.Input<string>;
|
|
454
800
|
}>;
|
|
455
801
|
/**
|
|
456
|
-
*
|
|
802
|
+
* Name of the connection.
|
|
457
803
|
*/
|
|
458
804
|
name?: pulumi.Input<string>;
|
|
459
805
|
/**
|