@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.
- package/accessKey.d.ts +197 -0
- package/accessKey.d.ts.map +1 -0
- package/accessKey.js +105 -0
- package/accessKey.js.map +1 -0
- package/config/index.d.ts +1 -0
- package/config/index.d.ts.map +1 -0
- package/config/vars.d.ts +7 -0
- package/config/vars.d.ts.map +1 -0
- package/config/vars.js +24 -1
- package/config/vars.js.map +1 -1
- package/descoper.d.ts +178 -0
- package/descoper.d.ts.map +1 -0
- package/descoper.js +175 -0
- package/descoper.js.map +1 -0
- package/engine.d.ts +77 -0
- package/engine.d.ts.map +1 -0
- package/engine.js +83 -0
- package/engine.js.map +1 -0
- package/inboundApp.d.ts +243 -0
- package/inboundApp.d.ts.map +1 -0
- package/inboundApp.js +109 -0
- package/inboundApp.js.map +1 -0
- package/index.d.ts +16 -0
- package/index.d.ts.map +1 -0
- package/index.js +42 -5
- package/index.js.map +1 -1
- package/managementKey.d.ts +189 -0
- package/managementKey.d.ts.map +1 -0
- package/managementKey.js +159 -0
- package/managementKey.js.map +1 -0
- package/package.json +4 -4
- package/project.d.ts +319 -28
- package/project.d.ts.map +1 -0
- package/project.js +297 -4
- package/project.js.map +1 -1
- package/provider.d.ts +22 -3
- package/provider.d.ts.map +1 -0
- package/provider.js +27 -4
- package/provider.js.map +1 -1
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -0
- package/types/index.js +25 -2
- package/types/index.js.map +1 -1
- package/types/input.d.ts +2552 -797
- package/types/input.d.ts.map +1 -0
- package/types/output.d.ts +1815 -60
- package/types/output.d.ts.map +1 -0
- package/utilities.d.ts +1 -0
- package/utilities.d.ts.map +1 -0
- package/utilities.js +24 -1
- package/utilities.js.map +1 -1
package/inboundApp.js
ADDED
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
21
|
+
if (mod && mod.__esModule) return mod;
|
|
22
|
+
var result = {};
|
|
23
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
24
|
+
__setModuleDefault(result, mod);
|
|
25
|
+
return result;
|
|
26
|
+
};
|
|
27
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
|
+
exports.InboundApp = void 0;
|
|
29
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
30
|
+
const utilities = __importStar(require("./utilities"));
|
|
31
|
+
class InboundApp extends pulumi.CustomResource {
|
|
32
|
+
/**
|
|
33
|
+
* Get an existing InboundApp resource's state with the given name, ID, and optional extra
|
|
34
|
+
* properties used to qualify the lookup.
|
|
35
|
+
*
|
|
36
|
+
* @param name The _unique_ name of the resulting resource.
|
|
37
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
38
|
+
* @param state Any extra arguments used during the lookup.
|
|
39
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
40
|
+
*/
|
|
41
|
+
static get(name, id, state, opts) {
|
|
42
|
+
return new InboundApp(name, state, { ...opts, id: id });
|
|
43
|
+
}
|
|
44
|
+
/** @internal */
|
|
45
|
+
static __pulumiType = 'descope:index/inboundApp:InboundApp';
|
|
46
|
+
/**
|
|
47
|
+
* Returns true if the given object is an instance of InboundApp. This is designed to work even
|
|
48
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
49
|
+
*/
|
|
50
|
+
static isInstance(obj) {
|
|
51
|
+
if (obj === undefined || obj === null) {
|
|
52
|
+
return false;
|
|
53
|
+
}
|
|
54
|
+
return obj['__pulumiType'] === InboundApp.__pulumiType;
|
|
55
|
+
}
|
|
56
|
+
constructor(name, argsOrState, opts) {
|
|
57
|
+
let resourceInputs = {};
|
|
58
|
+
opts = opts || {};
|
|
59
|
+
if (opts.id) {
|
|
60
|
+
const state = argsOrState;
|
|
61
|
+
resourceInputs["approvedCallbackUrls"] = state?.approvedCallbackUrls;
|
|
62
|
+
resourceInputs["attributesScopes"] = state?.attributesScopes;
|
|
63
|
+
resourceInputs["audienceWhitelists"] = state?.audienceWhitelists;
|
|
64
|
+
resourceInputs["clientId"] = state?.clientId;
|
|
65
|
+
resourceInputs["clientSecret"] = state?.clientSecret;
|
|
66
|
+
resourceInputs["connectionsScopes"] = state?.connectionsScopes;
|
|
67
|
+
resourceInputs["defaultAudience"] = state?.defaultAudience;
|
|
68
|
+
resourceInputs["description"] = state?.description;
|
|
69
|
+
resourceInputs["forceAddAllAuthorizationInfo"] = state?.forceAddAllAuthorizationInfo;
|
|
70
|
+
resourceInputs["forcePkce"] = state?.forcePkce;
|
|
71
|
+
resourceInputs["loginPageUrl"] = state?.loginPageUrl;
|
|
72
|
+
resourceInputs["logoUrl"] = state?.logoUrl;
|
|
73
|
+
resourceInputs["name"] = state?.name;
|
|
74
|
+
resourceInputs["nonConfidentialClient"] = state?.nonConfidentialClient;
|
|
75
|
+
resourceInputs["permissionsScopes"] = state?.permissionsScopes;
|
|
76
|
+
resourceInputs["projectId"] = state?.projectId;
|
|
77
|
+
resourceInputs["sessionSettings"] = state?.sessionSettings;
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
const args = argsOrState;
|
|
81
|
+
if (args?.projectId === undefined && !opts.urn) {
|
|
82
|
+
throw new Error("Missing required property 'projectId'");
|
|
83
|
+
}
|
|
84
|
+
resourceInputs["approvedCallbackUrls"] = args?.approvedCallbackUrls;
|
|
85
|
+
resourceInputs["attributesScopes"] = args?.attributesScopes;
|
|
86
|
+
resourceInputs["audienceWhitelists"] = args?.audienceWhitelists;
|
|
87
|
+
resourceInputs["clientId"] = args?.clientId;
|
|
88
|
+
resourceInputs["clientSecret"] = args?.clientSecret ? pulumi.secret(args.clientSecret) : undefined;
|
|
89
|
+
resourceInputs["connectionsScopes"] = args?.connectionsScopes;
|
|
90
|
+
resourceInputs["defaultAudience"] = args?.defaultAudience;
|
|
91
|
+
resourceInputs["description"] = args?.description;
|
|
92
|
+
resourceInputs["forceAddAllAuthorizationInfo"] = args?.forceAddAllAuthorizationInfo;
|
|
93
|
+
resourceInputs["forcePkce"] = args?.forcePkce;
|
|
94
|
+
resourceInputs["loginPageUrl"] = args?.loginPageUrl;
|
|
95
|
+
resourceInputs["logoUrl"] = args?.logoUrl;
|
|
96
|
+
resourceInputs["name"] = args?.name;
|
|
97
|
+
resourceInputs["nonConfidentialClient"] = args?.nonConfidentialClient;
|
|
98
|
+
resourceInputs["permissionsScopes"] = args?.permissionsScopes;
|
|
99
|
+
resourceInputs["projectId"] = args?.projectId;
|
|
100
|
+
resourceInputs["sessionSettings"] = args?.sessionSettings;
|
|
101
|
+
}
|
|
102
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
103
|
+
const secretOpts = { additionalSecretOutputs: ["clientSecret"] };
|
|
104
|
+
opts = pulumi.mergeOptions(opts, secretOpts);
|
|
105
|
+
super(InboundApp.__pulumiType, name, resourceInputs, opts);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
exports.InboundApp = InboundApp;
|
|
109
|
+
//# sourceMappingURL=inboundApp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inboundApp.js","sourceRoot":"","sources":["../inboundApp.ts"],"names":[],"mappings":"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"}
|
package/index.d.ts
CHANGED
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
export { AccessKeyArgs, AccessKeyState } from "./accessKey";
|
|
2
|
+
export type AccessKey = import("./accessKey").AccessKey;
|
|
3
|
+
export declare const AccessKey: typeof import("./accessKey").AccessKey;
|
|
4
|
+
export { DescoperArgs, DescoperState } from "./descoper";
|
|
5
|
+
export type Descoper = import("./descoper").Descoper;
|
|
6
|
+
export declare const Descoper: typeof import("./descoper").Descoper;
|
|
7
|
+
export { EngineArgs, EngineState } from "./engine";
|
|
8
|
+
export type Engine = import("./engine").Engine;
|
|
9
|
+
export declare const Engine: typeof import("./engine").Engine;
|
|
10
|
+
export { InboundAppArgs, InboundAppState } from "./inboundApp";
|
|
11
|
+
export type InboundApp = import("./inboundApp").InboundApp;
|
|
12
|
+
export declare const InboundApp: typeof import("./inboundApp").InboundApp;
|
|
13
|
+
export { ManagementKeyArgs, ManagementKeyState } from "./managementKey";
|
|
14
|
+
export type ManagementKey = import("./managementKey").ManagementKey;
|
|
15
|
+
export declare const ManagementKey: typeof import("./managementKey").ManagementKey;
|
|
1
16
|
export { ProjectArgs, ProjectState } from "./project";
|
|
2
17
|
export type Project = import("./project").Project;
|
|
3
18
|
export declare const Project: typeof import("./project").Project;
|
|
@@ -5,3 +20,4 @@ export * from "./provider";
|
|
|
5
20
|
import * as config from "./config";
|
|
6
21
|
import * as types from "./types";
|
|
7
22
|
export { config, types, };
|
|
23
|
+
//# sourceMappingURL=index.d.ts.map
|
package/index.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC5D,MAAM,MAAM,SAAS,GAAG,OAAO,aAAa,EAAE,SAAS,CAAC;AACxD,eAAO,MAAM,SAAS,EAAE,cAAc,aAAa,EAAE,SAAuB,CAAC;AAG7E,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACzD,MAAM,MAAM,QAAQ,GAAG,OAAO,YAAY,EAAE,QAAQ,CAAC;AACrD,eAAO,MAAM,QAAQ,EAAE,cAAc,YAAY,EAAE,QAAsB,CAAC;AAG1E,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACnD,MAAM,MAAM,MAAM,GAAG,OAAO,UAAU,EAAE,MAAM,CAAC;AAC/C,eAAO,MAAM,MAAM,EAAE,cAAc,UAAU,EAAE,MAAoB,CAAC;AAGpE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/D,MAAM,MAAM,UAAU,GAAG,OAAO,cAAc,EAAE,UAAU,CAAC;AAC3D,eAAO,MAAM,UAAU,EAAE,cAAc,cAAc,EAAE,UAAwB,CAAC;AAGhF,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACxE,MAAM,MAAM,aAAa,GAAG,OAAO,iBAAiB,EAAE,aAAa,CAAC;AACpE,eAAO,MAAM,aAAa,EAAE,cAAc,iBAAiB,EAAE,aAA2B,CAAC;AAGzF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACtD,MAAM,MAAM,OAAO,GAAG,OAAO,WAAW,EAAE,OAAO,CAAC;AAClD,eAAO,MAAM,OAAO,EAAE,cAAc,WAAW,EAAE,OAAqB,CAAC;AAGvE,cAAc,YAAY,CAAC;AAK3B,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC,OAAO,EACH,MAAM,EACN,KAAK,GACR,CAAC"}
|
package/index.js
CHANGED
|
@@ -12,26 +12,58 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
|
|
|
12
12
|
if (k2 === undefined) k2 = k;
|
|
13
13
|
o[k2] = m[k];
|
|
14
14
|
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
21
|
+
if (mod && mod.__esModule) return mod;
|
|
22
|
+
var result = {};
|
|
23
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
24
|
+
__setModuleDefault(result, mod);
|
|
25
|
+
return result;
|
|
26
|
+
};
|
|
15
27
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
16
28
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
17
29
|
};
|
|
18
30
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
-
exports.types = exports.config = exports.Project = void 0;
|
|
20
|
-
const pulumi = require("@pulumi/pulumi");
|
|
21
|
-
const utilities = require("./utilities");
|
|
31
|
+
exports.types = exports.config = exports.Project = exports.ManagementKey = exports.InboundApp = exports.Engine = exports.Descoper = exports.AccessKey = void 0;
|
|
32
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
33
|
+
const utilities = __importStar(require("./utilities"));
|
|
34
|
+
exports.AccessKey = null;
|
|
35
|
+
utilities.lazyLoad(exports, ["AccessKey"], () => require("./accessKey"));
|
|
36
|
+
exports.Descoper = null;
|
|
37
|
+
utilities.lazyLoad(exports, ["Descoper"], () => require("./descoper"));
|
|
38
|
+
exports.Engine = null;
|
|
39
|
+
utilities.lazyLoad(exports, ["Engine"], () => require("./engine"));
|
|
40
|
+
exports.InboundApp = null;
|
|
41
|
+
utilities.lazyLoad(exports, ["InboundApp"], () => require("./inboundApp"));
|
|
42
|
+
exports.ManagementKey = null;
|
|
43
|
+
utilities.lazyLoad(exports, ["ManagementKey"], () => require("./managementKey"));
|
|
22
44
|
exports.Project = null;
|
|
23
45
|
utilities.lazyLoad(exports, ["Project"], () => require("./project"));
|
|
24
46
|
__exportStar(require("./provider"), exports);
|
|
25
47
|
const provider_1 = require("./provider");
|
|
26
48
|
// Export sub-modules:
|
|
27
|
-
const config = require("./config");
|
|
49
|
+
const config = __importStar(require("./config"));
|
|
28
50
|
exports.config = config;
|
|
29
|
-
const types = require("./types");
|
|
51
|
+
const types = __importStar(require("./types"));
|
|
30
52
|
exports.types = types;
|
|
31
53
|
const _module = {
|
|
32
54
|
version: utilities.getVersion(),
|
|
33
55
|
construct: (name, type, urn) => {
|
|
34
56
|
switch (type) {
|
|
57
|
+
case "descope:index/accessKey:AccessKey":
|
|
58
|
+
return new exports.AccessKey(name, undefined, { urn });
|
|
59
|
+
case "descope:index/descoper:Descoper":
|
|
60
|
+
return new exports.Descoper(name, undefined, { urn });
|
|
61
|
+
case "descope:index/engine:Engine":
|
|
62
|
+
return new exports.Engine(name, undefined, { urn });
|
|
63
|
+
case "descope:index/inboundApp:InboundApp":
|
|
64
|
+
return new exports.InboundApp(name, undefined, { urn });
|
|
65
|
+
case "descope:index/managementKey:ManagementKey":
|
|
66
|
+
return new exports.ManagementKey(name, undefined, { urn });
|
|
35
67
|
case "descope:index/project:Project":
|
|
36
68
|
return new exports.Project(name, undefined, { urn });
|
|
37
69
|
default:
|
|
@@ -39,6 +71,11 @@ const _module = {
|
|
|
39
71
|
}
|
|
40
72
|
},
|
|
41
73
|
};
|
|
74
|
+
pulumi.runtime.registerResourceModule("descope", "index/accessKey", _module);
|
|
75
|
+
pulumi.runtime.registerResourceModule("descope", "index/descoper", _module);
|
|
76
|
+
pulumi.runtime.registerResourceModule("descope", "index/engine", _module);
|
|
77
|
+
pulumi.runtime.registerResourceModule("descope", "index/inboundApp", _module);
|
|
78
|
+
pulumi.runtime.registerResourceModule("descope", "index/managementKey", _module);
|
|
42
79
|
pulumi.runtime.registerResourceModule("descope", "index/project", _module);
|
|
43
80
|
pulumi.runtime.registerResourcePackage("descope", {
|
|
44
81
|
version: utilities.getVersion(),
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
import * as inputs from "./types/input";
|
|
3
|
+
import * as outputs from "./types/output";
|
|
4
|
+
/**
|
|
5
|
+
* Manages a Descope Management Key—a credential used to authenticate programmatic access to the Descope Management API and SDKs. Management keys are used for backend operations such as creating users, managing sessions, and building automation pipelines.
|
|
6
|
+
*
|
|
7
|
+
* > **Important:** The `cleartext` attribute (the raw key value) is only available immediately after creation and **cannot be retrieved later** through the API. Store it securely using a secrets manager (e.g., AWS Secrets Manager, HashiCorp Vault) immediately after `pulumi up`.
|
|
8
|
+
*
|
|
9
|
+
* Keys can be scoped to restrict which projects they can access, at the company level or per-project or tag:
|
|
10
|
+
* - **Company roles** – Access to all projects in the company
|
|
11
|
+
* - **Project roles** – Scoped to specific project IDs
|
|
12
|
+
* - **Tag roles** – Scoped to all projects with a given tag
|
|
13
|
+
*
|
|
14
|
+
* See the [Descope documentation](https://docs.descope.com) for the list of valid role names.
|
|
15
|
+
*
|
|
16
|
+
* ## Example Usage
|
|
17
|
+
*
|
|
18
|
+
* ### Company-Level Key
|
|
19
|
+
*
|
|
20
|
+
* ```typescript
|
|
21
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
22
|
+
* import * as descope from "@descope/pulumi-descope";
|
|
23
|
+
*
|
|
24
|
+
* const companyKey = new descope.ManagementKey("company_key", {
|
|
25
|
+
* name: "CI/CD Pipeline Key",
|
|
26
|
+
* description: "Used by the deployment pipeline to manage users",
|
|
27
|
+
* rebac: {
|
|
28
|
+
* companyRoles: ["<role-name>"],
|
|
29
|
+
* },
|
|
30
|
+
* });
|
|
31
|
+
* export const managementKeyValue = companyKey.cleartext;
|
|
32
|
+
* ```
|
|
33
|
+
*
|
|
34
|
+
* ### Project-Scoped Key with Expiration
|
|
35
|
+
*
|
|
36
|
+
* ```typescript
|
|
37
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
38
|
+
* import * as descope from "@descope/pulumi-descope";
|
|
39
|
+
*
|
|
40
|
+
* const projectKey = new descope.ManagementKey("project_key", {
|
|
41
|
+
* name: "Staging Key",
|
|
42
|
+
* description: "Limited access to staging project only",
|
|
43
|
+
* expireTime: 1893456000,
|
|
44
|
+
* rebac: {
|
|
45
|
+
* projectRoles: [{
|
|
46
|
+
* projectIds: ["<project-id>"],
|
|
47
|
+
* roles: ["<role-name>"],
|
|
48
|
+
* }],
|
|
49
|
+
* },
|
|
50
|
+
* });
|
|
51
|
+
* ```
|
|
52
|
+
*
|
|
53
|
+
* ### Tag-Scoped Key with IP Restriction
|
|
54
|
+
*
|
|
55
|
+
* ```typescript
|
|
56
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
57
|
+
* import * as descope from "@descope/pulumi-descope";
|
|
58
|
+
*
|
|
59
|
+
* const restrictedKey = new descope.ManagementKey("restricted_key", {
|
|
60
|
+
* name: "Office Network Key",
|
|
61
|
+
* permittedIps: [
|
|
62
|
+
* "203.0.113.0/24",
|
|
63
|
+
* "198.51.100.10",
|
|
64
|
+
* ],
|
|
65
|
+
* rebac: {
|
|
66
|
+
* tagRoles: [{
|
|
67
|
+
* tags: ["production"],
|
|
68
|
+
* roles: ["<role-name>"],
|
|
69
|
+
* }],
|
|
70
|
+
* },
|
|
71
|
+
* });
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
74
|
+
export declare class ManagementKey extends pulumi.CustomResource {
|
|
75
|
+
/**
|
|
76
|
+
* Get an existing ManagementKey resource's state with the given name, ID, and optional extra
|
|
77
|
+
* properties used to qualify the lookup.
|
|
78
|
+
*
|
|
79
|
+
* @param name The _unique_ name of the resulting resource.
|
|
80
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
81
|
+
* @param state Any extra arguments used during the lookup.
|
|
82
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
83
|
+
*/
|
|
84
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ManagementKeyState, opts?: pulumi.CustomResourceOptions): ManagementKey;
|
|
85
|
+
/**
|
|
86
|
+
* Returns true if the given object is an instance of ManagementKey. This is designed to work even
|
|
87
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
88
|
+
*/
|
|
89
|
+
static isInstance(obj: any): obj is ManagementKey;
|
|
90
|
+
/**
|
|
91
|
+
* The plaintext value of the management key. This is only available after the key is created and cannot be retrieved later. Store this value securely as it is required to authenticate API requests.
|
|
92
|
+
*/
|
|
93
|
+
readonly cleartext: pulumi.Output<string>;
|
|
94
|
+
/**
|
|
95
|
+
* A description for the management key.
|
|
96
|
+
*/
|
|
97
|
+
readonly description: pulumi.Output<string>;
|
|
98
|
+
/**
|
|
99
|
+
* The expiration time of the management key as a Unix timestamp. If not set, the key will not expire. Changing this value after creation will require the management key to be replaced.
|
|
100
|
+
*/
|
|
101
|
+
readonly expireTime: pulumi.Output<number>;
|
|
102
|
+
/**
|
|
103
|
+
* A name for the management key.
|
|
104
|
+
*/
|
|
105
|
+
readonly name: pulumi.Output<string>;
|
|
106
|
+
/**
|
|
107
|
+
* A list of IP addresses or CIDR ranges that are allowed to use this management key. If not set, the key can be used from any IP address.
|
|
108
|
+
*/
|
|
109
|
+
readonly permittedIps: pulumi.Output<string[]>;
|
|
110
|
+
/**
|
|
111
|
+
* Access control settings for the management key. This defines the permissions granted to the management key, either at the company level or for specific projects or for project tags. Changing this value after creation will require the management key to be replaced.
|
|
112
|
+
*/
|
|
113
|
+
readonly rebac: pulumi.Output<outputs.ManagementKeyRebac>;
|
|
114
|
+
/**
|
|
115
|
+
* The status of the management key. Must be either `active` or `inactive`.
|
|
116
|
+
*/
|
|
117
|
+
readonly status: pulumi.Output<string>;
|
|
118
|
+
/**
|
|
119
|
+
* Create a ManagementKey resource with the given unique name, arguments, and options.
|
|
120
|
+
*
|
|
121
|
+
* @param name The _unique_ name of the resource.
|
|
122
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
123
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
124
|
+
*/
|
|
125
|
+
constructor(name: string, args: ManagementKeyArgs, opts?: pulumi.CustomResourceOptions);
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Input properties used for looking up and filtering ManagementKey resources.
|
|
129
|
+
*/
|
|
130
|
+
export interface ManagementKeyState {
|
|
131
|
+
/**
|
|
132
|
+
* The plaintext value of the management key. This is only available after the key is created and cannot be retrieved later. Store this value securely as it is required to authenticate API requests.
|
|
133
|
+
*/
|
|
134
|
+
cleartext?: pulumi.Input<string | undefined>;
|
|
135
|
+
/**
|
|
136
|
+
* A description for the management key.
|
|
137
|
+
*/
|
|
138
|
+
description?: pulumi.Input<string | undefined>;
|
|
139
|
+
/**
|
|
140
|
+
* The expiration time of the management key as a Unix timestamp. If not set, the key will not expire. Changing this value after creation will require the management key to be replaced.
|
|
141
|
+
*/
|
|
142
|
+
expireTime?: pulumi.Input<number | undefined>;
|
|
143
|
+
/**
|
|
144
|
+
* A name for the management key.
|
|
145
|
+
*/
|
|
146
|
+
name?: pulumi.Input<string | undefined>;
|
|
147
|
+
/**
|
|
148
|
+
* A list of IP addresses or CIDR ranges that are allowed to use this management key. If not set, the key can be used from any IP address.
|
|
149
|
+
*/
|
|
150
|
+
permittedIps?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
151
|
+
/**
|
|
152
|
+
* Access control settings for the management key. This defines the permissions granted to the management key, either at the company level or for specific projects or for project tags. Changing this value after creation will require the management key to be replaced.
|
|
153
|
+
*/
|
|
154
|
+
rebac?: pulumi.Input<inputs.ManagementKeyRebac | undefined>;
|
|
155
|
+
/**
|
|
156
|
+
* The status of the management key. Must be either `active` or `inactive`.
|
|
157
|
+
*/
|
|
158
|
+
status?: pulumi.Input<string | undefined>;
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* The set of arguments for constructing a ManagementKey resource.
|
|
162
|
+
*/
|
|
163
|
+
export interface ManagementKeyArgs {
|
|
164
|
+
/**
|
|
165
|
+
* A description for the management key.
|
|
166
|
+
*/
|
|
167
|
+
description?: pulumi.Input<string | undefined>;
|
|
168
|
+
/**
|
|
169
|
+
* The expiration time of the management key as a Unix timestamp. If not set, the key will not expire. Changing this value after creation will require the management key to be replaced.
|
|
170
|
+
*/
|
|
171
|
+
expireTime?: pulumi.Input<number | undefined>;
|
|
172
|
+
/**
|
|
173
|
+
* A name for the management key.
|
|
174
|
+
*/
|
|
175
|
+
name?: pulumi.Input<string | undefined>;
|
|
176
|
+
/**
|
|
177
|
+
* A list of IP addresses or CIDR ranges that are allowed to use this management key. If not set, the key can be used from any IP address.
|
|
178
|
+
*/
|
|
179
|
+
permittedIps?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
180
|
+
/**
|
|
181
|
+
* Access control settings for the management key. This defines the permissions granted to the management key, either at the company level or for specific projects or for project tags. Changing this value after creation will require the management key to be replaced.
|
|
182
|
+
*/
|
|
183
|
+
rebac: pulumi.Input<inputs.ManagementKeyRebac>;
|
|
184
|
+
/**
|
|
185
|
+
* The status of the management key. Must be either `active` or `inactive`.
|
|
186
|
+
*/
|
|
187
|
+
status?: pulumi.Input<string | undefined>;
|
|
188
|
+
}
|
|
189
|
+
//# sourceMappingURL=managementKey.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"managementKey.d.ts","sourceRoot":"","sources":["../managementKey.ts"],"names":[],"mappings":"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"}
|
package/managementKey.js
ADDED
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
21
|
+
if (mod && mod.__esModule) return mod;
|
|
22
|
+
var result = {};
|
|
23
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
24
|
+
__setModuleDefault(result, mod);
|
|
25
|
+
return result;
|
|
26
|
+
};
|
|
27
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
|
+
exports.ManagementKey = void 0;
|
|
29
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
30
|
+
const utilities = __importStar(require("./utilities"));
|
|
31
|
+
/**
|
|
32
|
+
* Manages a Descope Management Key—a credential used to authenticate programmatic access to the Descope Management API and SDKs. Management keys are used for backend operations such as creating users, managing sessions, and building automation pipelines.
|
|
33
|
+
*
|
|
34
|
+
* > **Important:** The `cleartext` attribute (the raw key value) is only available immediately after creation and **cannot be retrieved later** through the API. Store it securely using a secrets manager (e.g., AWS Secrets Manager, HashiCorp Vault) immediately after `pulumi up`.
|
|
35
|
+
*
|
|
36
|
+
* Keys can be scoped to restrict which projects they can access, at the company level or per-project or tag:
|
|
37
|
+
* - **Company roles** – Access to all projects in the company
|
|
38
|
+
* - **Project roles** – Scoped to specific project IDs
|
|
39
|
+
* - **Tag roles** – Scoped to all projects with a given tag
|
|
40
|
+
*
|
|
41
|
+
* See the [Descope documentation](https://docs.descope.com) for the list of valid role names.
|
|
42
|
+
*
|
|
43
|
+
* ## Example Usage
|
|
44
|
+
*
|
|
45
|
+
* ### Company-Level Key
|
|
46
|
+
*
|
|
47
|
+
* ```typescript
|
|
48
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
49
|
+
* import * as descope from "@descope/pulumi-descope";
|
|
50
|
+
*
|
|
51
|
+
* const companyKey = new descope.ManagementKey("company_key", {
|
|
52
|
+
* name: "CI/CD Pipeline Key",
|
|
53
|
+
* description: "Used by the deployment pipeline to manage users",
|
|
54
|
+
* rebac: {
|
|
55
|
+
* companyRoles: ["<role-name>"],
|
|
56
|
+
* },
|
|
57
|
+
* });
|
|
58
|
+
* export const managementKeyValue = companyKey.cleartext;
|
|
59
|
+
* ```
|
|
60
|
+
*
|
|
61
|
+
* ### Project-Scoped Key with Expiration
|
|
62
|
+
*
|
|
63
|
+
* ```typescript
|
|
64
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
65
|
+
* import * as descope from "@descope/pulumi-descope";
|
|
66
|
+
*
|
|
67
|
+
* const projectKey = new descope.ManagementKey("project_key", {
|
|
68
|
+
* name: "Staging Key",
|
|
69
|
+
* description: "Limited access to staging project only",
|
|
70
|
+
* expireTime: 1893456000,
|
|
71
|
+
* rebac: {
|
|
72
|
+
* projectRoles: [{
|
|
73
|
+
* projectIds: ["<project-id>"],
|
|
74
|
+
* roles: ["<role-name>"],
|
|
75
|
+
* }],
|
|
76
|
+
* },
|
|
77
|
+
* });
|
|
78
|
+
* ```
|
|
79
|
+
*
|
|
80
|
+
* ### Tag-Scoped Key with IP Restriction
|
|
81
|
+
*
|
|
82
|
+
* ```typescript
|
|
83
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
84
|
+
* import * as descope from "@descope/pulumi-descope";
|
|
85
|
+
*
|
|
86
|
+
* const restrictedKey = new descope.ManagementKey("restricted_key", {
|
|
87
|
+
* name: "Office Network Key",
|
|
88
|
+
* permittedIps: [
|
|
89
|
+
* "203.0.113.0/24",
|
|
90
|
+
* "198.51.100.10",
|
|
91
|
+
* ],
|
|
92
|
+
* rebac: {
|
|
93
|
+
* tagRoles: [{
|
|
94
|
+
* tags: ["production"],
|
|
95
|
+
* roles: ["<role-name>"],
|
|
96
|
+
* }],
|
|
97
|
+
* },
|
|
98
|
+
* });
|
|
99
|
+
* ```
|
|
100
|
+
*/
|
|
101
|
+
class ManagementKey extends pulumi.CustomResource {
|
|
102
|
+
/**
|
|
103
|
+
* Get an existing ManagementKey resource's state with the given name, ID, and optional extra
|
|
104
|
+
* properties used to qualify the lookup.
|
|
105
|
+
*
|
|
106
|
+
* @param name The _unique_ name of the resulting resource.
|
|
107
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
108
|
+
* @param state Any extra arguments used during the lookup.
|
|
109
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
110
|
+
*/
|
|
111
|
+
static get(name, id, state, opts) {
|
|
112
|
+
return new ManagementKey(name, state, { ...opts, id: id });
|
|
113
|
+
}
|
|
114
|
+
/** @internal */
|
|
115
|
+
static __pulumiType = 'descope:index/managementKey:ManagementKey';
|
|
116
|
+
/**
|
|
117
|
+
* Returns true if the given object is an instance of ManagementKey. This is designed to work even
|
|
118
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
119
|
+
*/
|
|
120
|
+
static isInstance(obj) {
|
|
121
|
+
if (obj === undefined || obj === null) {
|
|
122
|
+
return false;
|
|
123
|
+
}
|
|
124
|
+
return obj['__pulumiType'] === ManagementKey.__pulumiType;
|
|
125
|
+
}
|
|
126
|
+
constructor(name, argsOrState, opts) {
|
|
127
|
+
let resourceInputs = {};
|
|
128
|
+
opts = opts || {};
|
|
129
|
+
if (opts.id) {
|
|
130
|
+
const state = argsOrState;
|
|
131
|
+
resourceInputs["cleartext"] = state?.cleartext;
|
|
132
|
+
resourceInputs["description"] = state?.description;
|
|
133
|
+
resourceInputs["expireTime"] = state?.expireTime;
|
|
134
|
+
resourceInputs["name"] = state?.name;
|
|
135
|
+
resourceInputs["permittedIps"] = state?.permittedIps;
|
|
136
|
+
resourceInputs["rebac"] = state?.rebac;
|
|
137
|
+
resourceInputs["status"] = state?.status;
|
|
138
|
+
}
|
|
139
|
+
else {
|
|
140
|
+
const args = argsOrState;
|
|
141
|
+
if (args?.rebac === undefined && !opts.urn) {
|
|
142
|
+
throw new Error("Missing required property 'rebac'");
|
|
143
|
+
}
|
|
144
|
+
resourceInputs["description"] = args?.description;
|
|
145
|
+
resourceInputs["expireTime"] = args?.expireTime;
|
|
146
|
+
resourceInputs["name"] = args?.name;
|
|
147
|
+
resourceInputs["permittedIps"] = args?.permittedIps;
|
|
148
|
+
resourceInputs["rebac"] = args?.rebac;
|
|
149
|
+
resourceInputs["status"] = args?.status;
|
|
150
|
+
resourceInputs["cleartext"] = undefined /*out*/;
|
|
151
|
+
}
|
|
152
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
153
|
+
const secretOpts = { additionalSecretOutputs: ["cleartext"] };
|
|
154
|
+
opts = pulumi.mergeOptions(opts, secretOpts);
|
|
155
|
+
super(ManagementKey.__pulumiType, name, resourceInputs, opts);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
exports.ManagementKey = ManagementKey;
|
|
159
|
+
//# sourceMappingURL=managementKey.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"managementKey.js","sourceRoot":"","sources":["../managementKey.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AAGzC,uDAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqEG;AACH,MAAa,aAAc,SAAQ,MAAM,CAAC,cAAc;IACpD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA0B,EAAE,IAAmC;QACxH,OAAO,IAAI,aAAa,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,gBAAgB;IACT,MAAM,CAAU,YAAY,GAAG,2CAA2C,CAAC;IAElF;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,aAAa,CAAC,YAAY,CAAC;IAC9D,CAAC;IAuCD,YAAY,IAAY,EAAE,WAAoD,EAAE,IAAmC;QAC/G,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA6C,CAAC;YAC5D,cAAc,CAAC,WAAW,CAAC,GAAG,KAAK,EAAE,SAAS,CAAC;YAC/C,cAAc,CAAC,aAAa,CAAC,GAAG,KAAK,EAAE,WAAW,CAAC;YACnD,cAAc,CAAC,YAAY,CAAC,GAAG,KAAK,EAAE,UAAU,CAAC;YACjD,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;YACrC,cAAc,CAAC,cAAc,CAAC,GAAG,KAAK,EAAE,YAAY,CAAC;YACrD,cAAc,CAAC,OAAO,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC;YACvC,cAAc,CAAC,QAAQ,CAAC,GAAG,KAAK,EAAE,MAAM,CAAC;SAC5C;aAAM;YACH,MAAM,IAAI,GAAG,WAA4C,CAAC;YAC1D,IAAI,IAAI,EAAE,KAAK,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACxC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;aACxD;YACD,cAAc,CAAC,aAAa,CAAC,GAAG,IAAI,EAAE,WAAW,CAAC;YAClD,cAAc,CAAC,YAAY,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC;YAChD,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC;YACpC,cAAc,CAAC,cAAc,CAAC,GAAG,IAAI,EAAE,YAAY,CAAC;YACpD,cAAc,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC;YACtC,cAAc,CAAC,QAAQ,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC;YACxC,cAAc,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SACnD;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,EAAE,uBAAuB,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;QAC9D,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAC7C,KAAK,CAAC,aAAa,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAClE,CAAC;;AA9FL,sCA+FC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@descope/pulumi-descope",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.13",
|
|
4
4
|
"description": "A Pulumi package for creating and managing descope cloud resources.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"descope",
|
|
@@ -16,13 +16,13 @@
|
|
|
16
16
|
"@pulumi/pulumi": "^3.142.0"
|
|
17
17
|
},
|
|
18
18
|
"devDependencies": {
|
|
19
|
-
"@types/node": "^
|
|
20
|
-
"typescript": "^4.
|
|
19
|
+
"@types/node": "^20",
|
|
20
|
+
"typescript": "^4.7.0"
|
|
21
21
|
},
|
|
22
22
|
"pulumi": {
|
|
23
23
|
"resource": true,
|
|
24
24
|
"name": "descope",
|
|
25
|
-
"version": "0.3.
|
|
25
|
+
"version": "0.3.13",
|
|
26
26
|
"server": "github://api.github.com/descope"
|
|
27
27
|
}
|
|
28
28
|
}
|