@descope/pulumi-descope 0.3.2 → 0.3.13

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.
Files changed (51) hide show
  1. package/accessKey.d.ts +197 -0
  2. package/accessKey.d.ts.map +1 -0
  3. package/accessKey.js +105 -0
  4. package/accessKey.js.map +1 -0
  5. package/config/index.d.ts +1 -0
  6. package/config/index.d.ts.map +1 -0
  7. package/config/vars.d.ts +7 -0
  8. package/config/vars.d.ts.map +1 -0
  9. package/config/vars.js +24 -1
  10. package/config/vars.js.map +1 -1
  11. package/descoper.d.ts +178 -0
  12. package/descoper.d.ts.map +1 -0
  13. package/descoper.js +175 -0
  14. package/descoper.js.map +1 -0
  15. package/engine.d.ts +77 -0
  16. package/engine.d.ts.map +1 -0
  17. package/engine.js +83 -0
  18. package/engine.js.map +1 -0
  19. package/inboundApp.d.ts +243 -0
  20. package/inboundApp.d.ts.map +1 -0
  21. package/inboundApp.js +109 -0
  22. package/inboundApp.js.map +1 -0
  23. package/index.d.ts +16 -0
  24. package/index.d.ts.map +1 -0
  25. package/index.js +42 -5
  26. package/index.js.map +1 -1
  27. package/managementKey.d.ts +189 -0
  28. package/managementKey.d.ts.map +1 -0
  29. package/managementKey.js +159 -0
  30. package/managementKey.js.map +1 -0
  31. package/package.json +4 -4
  32. package/project.d.ts +319 -28
  33. package/project.d.ts.map +1 -0
  34. package/project.js +297 -4
  35. package/project.js.map +1 -1
  36. package/provider.d.ts +22 -3
  37. package/provider.d.ts.map +1 -0
  38. package/provider.js +27 -4
  39. package/provider.js.map +1 -1
  40. package/types/index.d.ts +1 -0
  41. package/types/index.d.ts.map +1 -0
  42. package/types/index.js +25 -2
  43. package/types/index.js.map +1 -1
  44. package/types/input.d.ts +2552 -797
  45. package/types/input.d.ts.map +1 -0
  46. package/types/output.d.ts +1815 -60
  47. package/types/output.d.ts.map +1 -0
  48. package/utilities.d.ts +1 -0
  49. package/utilities.d.ts.map +1 -0
  50. package/utilities.js +24 -1
  51. package/utilities.js.map +1 -1
package/project.d.ts CHANGED
@@ -1,6 +1,272 @@
1
1
  import * as pulumi from "@pulumi/pulumi";
2
2
  import * as inputs from "./types/input";
3
3
  import * as outputs from "./types/output";
4
+ /**
5
+ * Manages the configuration of a Descope project. A project is the core entity in Descope—it contains all authentication settings, user flows, roles, connectors, and other configuration for your application.
6
+ *
7
+ * This resource manages _project configuration_, not users or tenants. For user management, use the [Descope Management API](https://docs.descope.com/api/openapi) or [SDKs](https://docs.descope.com).
8
+ *
9
+ * For a full reference of all supported connectors, see the [connectors reference](https://docs.descope.com/connectors) in the Descope documentation.
10
+ *
11
+ * ## Example Usage
12
+ *
13
+ * ### Basic Project
14
+ *
15
+ * ```typescript
16
+ * import * as pulumi from "@pulumi/pulumi";
17
+ * import * as descope from "@descope/pulumi-descope";
18
+ *
19
+ * const example = new descope.Project("example", {
20
+ * name: "my-app",
21
+ * environment: "production",
22
+ * tags: [
23
+ * "prod",
24
+ * "v2",
25
+ * ],
26
+ * });
27
+ * ```
28
+ *
29
+ * ### Authentication Methods
30
+ *
31
+ * Enable and configure the authentication methods your users will use:
32
+ *
33
+ * ```typescript
34
+ * import * as pulumi from "@pulumi/pulumi";
35
+ * import * as descope from "@descope/pulumi-descope";
36
+ *
37
+ * const example = new descope.Project("example", {
38
+ * name: "my-app",
39
+ * authentication: {
40
+ * magicLink: {
41
+ * expirationTime: "1 hour",
42
+ * },
43
+ * password: {
44
+ * lock: true,
45
+ * lockAttempts: 5,
46
+ * minLength: 12,
47
+ * },
48
+ * otp: {
49
+ * expirationTime: "5 minutes",
50
+ * },
51
+ * passkeys: {
52
+ * disabled: false,
53
+ * },
54
+ * },
55
+ * });
56
+ * ```
57
+ *
58
+ * ### Roles and Permissions (RBAC)
59
+ *
60
+ * Define roles and permissions for your users:
61
+ *
62
+ * ```typescript
63
+ * import * as pulumi from "@pulumi/pulumi";
64
+ * import * as descope from "@descope/pulumi-descope";
65
+ *
66
+ * const example = new descope.Project("example", {
67
+ * name: "my-app",
68
+ * authorization: {
69
+ * permissions: [
70
+ * {
71
+ * name: "read:data",
72
+ * description: "Read access to application data",
73
+ * },
74
+ * {
75
+ * name: "write:data",
76
+ * description: "Write access to application data",
77
+ * },
78
+ * {
79
+ * name: "admin:panel",
80
+ * description: "Access to the admin panel",
81
+ * },
82
+ * ],
83
+ * roles: [
84
+ * {
85
+ * name: "viewer",
86
+ * description: "Can read data",
87
+ * permissions: ["read:data"],
88
+ * },
89
+ * {
90
+ * name: "editor",
91
+ * description: "Can read and write data",
92
+ * permissions: [
93
+ * "read:data",
94
+ * "write:data",
95
+ * ],
96
+ * },
97
+ * {
98
+ * name: "admin",
99
+ * description: "Full access",
100
+ * permissions: [
101
+ * "read:data",
102
+ * "write:data",
103
+ * "admin:panel",
104
+ * ],
105
+ * },
106
+ * ],
107
+ * },
108
+ * });
109
+ * ```
110
+ *
111
+ * ### Connectors
112
+ *
113
+ * Integrate with third-party services to enrich flows and send notifications:
114
+ *
115
+ * ```typescript
116
+ * import * as pulumi from "@pulumi/pulumi";
117
+ * import * as descope from "@descope/pulumi-descope";
118
+ *
119
+ * const example = new descope.Project("example", {
120
+ * name: "my-app",
121
+ * connectors: {
122
+ * https: [{
123
+ * name: "User Eligibility Check",
124
+ * description: "Checks if a new user is allowed to register",
125
+ * baseUrl: "https://api.example.com",
126
+ * authentication: {
127
+ * bearerToken: webhookSecret,
128
+ * },
129
+ * }],
130
+ * sendgrids: [{
131
+ * name: "Transactional Email",
132
+ * sender: {
133
+ * email: "noreply@example.com",
134
+ * name: "My App",
135
+ * },
136
+ * authentication: {
137
+ * apiKey: sendgridApiKey,
138
+ * },
139
+ * }],
140
+ * twilioCores: [{
141
+ * name: "SMS OTP",
142
+ * accountSid: twilioAccountSid,
143
+ * senders: {
144
+ * sms: {
145
+ * phoneNumber: "+15551234567",
146
+ * },
147
+ * },
148
+ * authentication: {
149
+ * authToken: twilioAuthToken,
150
+ * },
151
+ * }],
152
+ * },
153
+ * });
154
+ * ```
155
+ *
156
+ * ### Session Settings
157
+ *
158
+ * Configure token lifetimes and session behavior:
159
+ *
160
+ * ```typescript
161
+ * import * as pulumi from "@pulumi/pulumi";
162
+ * import * as descope from "@descope/pulumi-descope";
163
+ *
164
+ * const example = new descope.Project("example", {
165
+ * name: "my-app",
166
+ * projectSettings: {
167
+ * refreshTokenExpiration: "3 weeks",
168
+ * sessionTokenExpiration: "15 minutes",
169
+ * refreshTokenRotation: true,
170
+ * enableInactivity: true,
171
+ * inactivityTime: "30 minutes",
172
+ * customDomain: "auth.example.com",
173
+ * approvedDomains: [
174
+ * "example.com",
175
+ * "app.example.com",
176
+ * ],
177
+ * },
178
+ * });
179
+ * ```
180
+ *
181
+ * ### OIDC Applications
182
+ *
183
+ * Register an OIDC application for SSO:
184
+ *
185
+ * ```typescript
186
+ * import * as pulumi from "@pulumi/pulumi";
187
+ * import * as descope from "@descope/pulumi-descope";
188
+ *
189
+ * const example = new descope.Project("example", {
190
+ * name: "my-app",
191
+ * applications: {
192
+ * oidcApplications: [{
193
+ * name: "My Web App",
194
+ * description: "Primary web application",
195
+ * loginPageUrl: "https://app.example.com/login",
196
+ * }],
197
+ * },
198
+ * });
199
+ * ```
200
+ *
201
+ * ### JWT Templates
202
+ *
203
+ * Customize the JWT claims added to session tokens:
204
+ *
205
+ * ```typescript
206
+ * import * as pulumi from "@pulumi/pulumi";
207
+ * import * as descope from "@descope/pulumi-descope";
208
+ *
209
+ * const example = new descope.Project("example", {
210
+ * name: "my-app",
211
+ * jwtTemplates: {
212
+ * userTemplates: [{
213
+ * name: "app-claims",
214
+ * description: "Adds subscription tier and org context to user JWTs",
215
+ * template: JSON.stringify({
216
+ * tier: "@user.customAttributes.subscriptionTier",
217
+ * org_id: "@user.tenants[0].tenantId",
218
+ * }),
219
+ * excludePermissionClaim: true,
220
+ * addJtiClaim: true,
221
+ * overrideSubjectClaim: true,
222
+ * }],
223
+ * },
224
+ * projectSettings: {
225
+ * userJwtTemplate: "app-claims",
226
+ * },
227
+ * });
228
+ * ```
229
+ *
230
+ * ### SSO Settings
231
+ *
232
+ * Configure global settings for Single Sign-On across tenants:
233
+ *
234
+ * ```typescript
235
+ * import * as pulumi from "@pulumi/pulumi";
236
+ * import * as descope from "@descope/pulumi-descope";
237
+ *
238
+ * const example = new descope.Project("example", {
239
+ * name: "my-app",
240
+ * authentication: {
241
+ * sso: {
242
+ * mergeUsers: true,
243
+ * allowOverrideRoles: true,
244
+ * groupsPriority: true,
245
+ * requireSsoDomains: true,
246
+ * requireGroupsAttributeName: true,
247
+ * mandatoryUserAttributes: [
248
+ * {
249
+ * id: "email",
250
+ * },
251
+ * {
252
+ * id: "name",
253
+ * },
254
+ * {
255
+ * id: "department",
256
+ * custom: true,
257
+ * },
258
+ * ],
259
+ * ssoSuiteSettings: {
260
+ * styleId: "my-brand-style",
261
+ * hideScim: false,
262
+ * hideSaml: false,
263
+ * hideOidc: false,
264
+ * },
265
+ * },
266
+ * },
267
+ * });
268
+ * ```
269
+ */
4
270
  export declare class Project extends pulumi.CustomResource {
5
271
  /**
6
272
  * Get an existing Project resource's state with the given name, ID, and optional extra
@@ -17,6 +283,10 @@ export declare class Project extends pulumi.CustomResource {
17
283
  * when multiple copies of the Pulumi SDK have been loaded into the same process.
18
284
  */
19
285
  static isInstance(obj: any): obj is Project;
286
+ /**
287
+ * Admin portal configuration - A hosted page for end users to access and use Descope Widgets
288
+ */
289
+ readonly adminPortal: pulumi.Output<outputs.ProjectAdminPortal>;
20
290
  /**
21
291
  * Applications that are registered with the project.
22
292
  */
@@ -55,6 +325,10 @@ export declare class Project extends pulumi.CustomResource {
55
325
  * Defines templates for JSON Web Tokens (JWT) used for authentication.
56
326
  */
57
327
  readonly jwtTemplates: pulumi.Output<outputs.ProjectJwtTemplates>;
328
+ /**
329
+ * Lists that can be used for various purposes in the project, such as IP allowlists, text lists, or custom JSON data.
330
+ */
331
+ readonly lists: pulumi.Output<outputs.ProjectList[]>;
58
332
  /**
59
333
  * The name of the Descope project.
60
334
  */
@@ -90,129 +364,146 @@ export declare class Project extends pulumi.CustomResource {
90
364
  * Input properties used for looking up and filtering Project resources.
91
365
  */
92
366
  export interface ProjectState {
367
+ /**
368
+ * Admin portal configuration - A hosted page for end users to access and use Descope Widgets
369
+ */
370
+ adminPortal?: pulumi.Input<inputs.ProjectAdminPortal | undefined>;
93
371
  /**
94
372
  * Applications that are registered with the project.
95
373
  */
96
- applications?: pulumi.Input<inputs.ProjectApplications>;
374
+ applications?: pulumi.Input<inputs.ProjectApplications | undefined>;
97
375
  /**
98
376
  * Custom attributes that can be attached to users and tenants.
99
377
  */
100
- attributes?: pulumi.Input<inputs.ProjectAttributes>;
378
+ attributes?: pulumi.Input<inputs.ProjectAttributes | undefined>;
101
379
  /**
102
380
  * Settings for each authentication method.
103
381
  */
104
- authentication?: pulumi.Input<inputs.ProjectAuthentication>;
382
+ authentication?: pulumi.Input<inputs.ProjectAuthentication | undefined>;
105
383
  /**
106
384
  * Define Role-Based Access Control (RBAC) for your users by creating roles and permissions.
107
385
  */
108
- authorization?: pulumi.Input<inputs.ProjectAuthorization>;
386
+ authorization?: pulumi.Input<inputs.ProjectAuthorization | undefined>;
109
387
  /**
110
388
  * Enrich your flows by interacting with third party services.
111
389
  */
112
- connectors?: pulumi.Input<inputs.ProjectConnectors>;
390
+ connectors?: pulumi.Input<inputs.ProjectConnectors | undefined>;
113
391
  /**
114
392
  * This can be set to `production` to mark production projects, otherwise this should be left unset for development or staging projects.
115
393
  */
116
- environment?: pulumi.Input<string>;
394
+ environment?: pulumi.Input<string | undefined>;
117
395
  /**
118
396
  * Custom authentication flows to use in this project.
119
397
  */
120
398
  flows?: pulumi.Input<{
121
399
  [key: string]: pulumi.Input<inputs.ProjectFlows>;
122
- }>;
400
+ } | undefined>;
123
401
  /**
124
402
  * User invitation settings and behavior.
125
403
  */
126
- inviteSettings?: pulumi.Input<inputs.ProjectInviteSettings>;
404
+ inviteSettings?: pulumi.Input<inputs.ProjectInviteSettings | undefined>;
127
405
  /**
128
406
  * Defines templates for JSON Web Tokens (JWT) used for authentication.
129
407
  */
130
- jwtTemplates?: pulumi.Input<inputs.ProjectJwtTemplates>;
408
+ jwtTemplates?: pulumi.Input<inputs.ProjectJwtTemplates | undefined>;
409
+ /**
410
+ * Lists that can be used for various purposes in the project, such as IP allowlists, text lists, or custom JSON data.
411
+ */
412
+ lists?: pulumi.Input<pulumi.Input<inputs.ProjectList>[] | undefined>;
131
413
  /**
132
414
  * The name of the Descope project.
133
415
  */
134
- name?: pulumi.Input<string>;
416
+ name?: pulumi.Input<string | undefined>;
135
417
  /**
136
418
  * General settings for the Descope project.
137
419
  */
138
- projectSettings?: pulumi.Input<inputs.ProjectProjectSettings>;
420
+ projectSettings?: pulumi.Input<inputs.ProjectProjectSettings | undefined>;
139
421
  /**
140
422
  * Custom styles that can be applied to the project's authentication flows.
141
423
  */
142
- styles?: pulumi.Input<inputs.ProjectStyles>;
424
+ styles?: pulumi.Input<inputs.ProjectStyles | undefined>;
143
425
  /**
144
426
  * Descriptive tags for your Descope project. Each tag must be no more than 50 characters long.
145
427
  */
146
- tags?: pulumi.Input<pulumi.Input<string>[]>;
428
+ tags?: pulumi.Input<pulumi.Input<string>[] | undefined>;
147
429
  /**
148
430
  * Embeddable components designed to facilitate the delegation of operations to tenant admins and end users.
149
431
  */
150
432
  widgets?: pulumi.Input<{
151
433
  [key: string]: pulumi.Input<inputs.ProjectWidgets>;
152
- }>;
434
+ } | undefined>;
153
435
  }
154
436
  /**
155
437
  * The set of arguments for constructing a Project resource.
156
438
  */
157
439
  export interface ProjectArgs {
440
+ /**
441
+ * Admin portal configuration - A hosted page for end users to access and use Descope Widgets
442
+ */
443
+ adminPortal?: pulumi.Input<inputs.ProjectAdminPortal | undefined>;
158
444
  /**
159
445
  * Applications that are registered with the project.
160
446
  */
161
- applications?: pulumi.Input<inputs.ProjectApplications>;
447
+ applications?: pulumi.Input<inputs.ProjectApplications | undefined>;
162
448
  /**
163
449
  * Custom attributes that can be attached to users and tenants.
164
450
  */
165
- attributes?: pulumi.Input<inputs.ProjectAttributes>;
451
+ attributes?: pulumi.Input<inputs.ProjectAttributes | undefined>;
166
452
  /**
167
453
  * Settings for each authentication method.
168
454
  */
169
- authentication?: pulumi.Input<inputs.ProjectAuthentication>;
455
+ authentication?: pulumi.Input<inputs.ProjectAuthentication | undefined>;
170
456
  /**
171
457
  * Define Role-Based Access Control (RBAC) for your users by creating roles and permissions.
172
458
  */
173
- authorization?: pulumi.Input<inputs.ProjectAuthorization>;
459
+ authorization?: pulumi.Input<inputs.ProjectAuthorization | undefined>;
174
460
  /**
175
461
  * Enrich your flows by interacting with third party services.
176
462
  */
177
- connectors?: pulumi.Input<inputs.ProjectConnectors>;
463
+ connectors?: pulumi.Input<inputs.ProjectConnectors | undefined>;
178
464
  /**
179
465
  * This can be set to `production` to mark production projects, otherwise this should be left unset for development or staging projects.
180
466
  */
181
- environment?: pulumi.Input<string>;
467
+ environment?: pulumi.Input<string | undefined>;
182
468
  /**
183
469
  * Custom authentication flows to use in this project.
184
470
  */
185
471
  flows?: pulumi.Input<{
186
472
  [key: string]: pulumi.Input<inputs.ProjectFlows>;
187
- }>;
473
+ } | undefined>;
188
474
  /**
189
475
  * User invitation settings and behavior.
190
476
  */
191
- inviteSettings?: pulumi.Input<inputs.ProjectInviteSettings>;
477
+ inviteSettings?: pulumi.Input<inputs.ProjectInviteSettings | undefined>;
192
478
  /**
193
479
  * Defines templates for JSON Web Tokens (JWT) used for authentication.
194
480
  */
195
- jwtTemplates?: pulumi.Input<inputs.ProjectJwtTemplates>;
481
+ jwtTemplates?: pulumi.Input<inputs.ProjectJwtTemplates | undefined>;
482
+ /**
483
+ * Lists that can be used for various purposes in the project, such as IP allowlists, text lists, or custom JSON data.
484
+ */
485
+ lists?: pulumi.Input<pulumi.Input<inputs.ProjectList>[] | undefined>;
196
486
  /**
197
487
  * The name of the Descope project.
198
488
  */
199
- name?: pulumi.Input<string>;
489
+ name?: pulumi.Input<string | undefined>;
200
490
  /**
201
491
  * General settings for the Descope project.
202
492
  */
203
- projectSettings?: pulumi.Input<inputs.ProjectProjectSettings>;
493
+ projectSettings?: pulumi.Input<inputs.ProjectProjectSettings | undefined>;
204
494
  /**
205
495
  * Custom styles that can be applied to the project's authentication flows.
206
496
  */
207
- styles?: pulumi.Input<inputs.ProjectStyles>;
497
+ styles?: pulumi.Input<inputs.ProjectStyles | undefined>;
208
498
  /**
209
499
  * Descriptive tags for your Descope project. Each tag must be no more than 50 characters long.
210
500
  */
211
- tags?: pulumi.Input<pulumi.Input<string>[]>;
501
+ tags?: pulumi.Input<pulumi.Input<string>[] | undefined>;
212
502
  /**
213
503
  * Embeddable components designed to facilitate the delegation of operations to tenant admins and end users.
214
504
  */
215
505
  widgets?: pulumi.Input<{
216
506
  [key: string]: pulumi.Input<inputs.ProjectWidgets>;
217
- }>;
507
+ } | undefined>;
218
508
  }
509
+ //# sourceMappingURL=project.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../project.ts"],"names":[],"mappings":"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"}