@drunk-pulumi/azure-components 0.0.6
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/PulumiPlugin.yaml +1 -0
- package/README.md +1 -0
- package/ResourceBuilder.d.ts +54 -0
- package/ResourceBuilder.js +71 -0
- package/aks/AzKubernetes.d.ts +55 -0
- package/aks/AzKubernetes.js +288 -0
- package/aks/ContainerRegistry.d.ts +19 -0
- package/aks/ContainerRegistry.js +119 -0
- package/aks/helpers.d.ts +6 -0
- package/aks/helpers.js +52 -0
- package/aks/index.d.ts +3 -0
- package/aks/index.js +43 -0
- package/app/AppCert.d.ts +15 -0
- package/app/AppCert.js +74 -0
- package/app/AppConfig.d.ts +18 -0
- package/app/AppConfig.js +124 -0
- package/app/AppService.d.ts +69 -0
- package/app/AppService.js +122 -0
- package/app/IoTHub.d.ts +15 -0
- package/app/IoTHub.js +80 -0
- package/app/LogicApp.d.ts +19 -0
- package/app/LogicApp.js +77 -0
- package/app/SignalR.d.ts +45 -0
- package/app/SignalR.js +125 -0
- package/app/index.d.ts +6 -0
- package/app/index.js +23 -0
- package/azAd/AppRegistration.d.ts +52 -0
- package/azAd/AppRegistration.js +165 -0
- package/azAd/AzRole.d.ts +14 -0
- package/azAd/AzRole.js +72 -0
- package/azAd/CustomRoles.d.ts +10 -0
- package/azAd/CustomRoles.js +73 -0
- package/azAd/GroupRole.d.ts +29 -0
- package/azAd/GroupRole.js +107 -0
- package/azAd/RoleAssignment.d.ts +15 -0
- package/azAd/RoleAssignment.js +63 -0
- package/azAd/UserAssignedIdentity.d.ts +17 -0
- package/azAd/UserAssignedIdentity.js +76 -0
- package/azAd/helpers/graphBuiltIn.d.ts +14 -0
- package/azAd/helpers/graphBuiltIn.js +5134 -0
- package/azAd/helpers/index.d.ts +3 -0
- package/azAd/helpers/index.js +39 -0
- package/azAd/helpers/rolesBuiltIn.d.ts +90 -0
- package/azAd/helpers/rolesBuiltIn.js +18601 -0
- package/azAd/helpers/rsRoleDefinition.d.ts +62 -0
- package/azAd/helpers/rsRoleDefinition.js +120 -0
- package/azAd/index.d.ts +7 -0
- package/azAd/index.js +24 -0
- package/base/BaseComponent.d.ts +53 -0
- package/base/BaseComponent.js +98 -0
- package/base/BaseResourceComponent.d.ts +108 -0
- package/base/BaseResourceComponent.js +180 -0
- package/base/helpers.d.ts +12 -0
- package/base/helpers.js +29 -0
- package/base/index.d.ts +3 -0
- package/base/index.js +43 -0
- package/common/PGPGenerator.d.ts +26 -0
- package/common/PGPGenerator.js +72 -0
- package/common/RandomPassword.d.ts +21 -0
- package/common/RandomPassword.js +84 -0
- package/common/RandomString.d.ts +20 -0
- package/common/RandomString.js +74 -0
- package/common/ResourceLocker.d.ts +9 -0
- package/common/ResourceLocker.js +52 -0
- package/common/RsGroup.d.ts +20 -0
- package/common/RsGroup.js +85 -0
- package/common/SshGenerator.d.ts +17 -0
- package/common/SshGenerator.js +66 -0
- package/common/index.d.ts +5 -0
- package/common/index.js +22 -0
- package/database/AzSql.d.ts +71 -0
- package/database/AzSql.js +283 -0
- package/database/MySql.d.ts +35 -0
- package/database/MySql.js +181 -0
- package/database/Postgres.d.ts +32 -0
- package/database/Postgres.js +171 -0
- package/database/Redis.d.ts +26 -0
- package/database/Redis.js +125 -0
- package/database/helpers.d.ts +7 -0
- package/database/helpers.js +52 -0
- package/database/index.d.ts +5 -0
- package/database/index.js +45 -0
- package/helpers/Location/LocationBuiltIn.d.ts +6 -0
- package/helpers/Location/LocationBuiltIn.js +493 -0
- package/helpers/Location/index.d.ts +3 -0
- package/helpers/Location/index.js +25 -0
- package/helpers/autoTags.d.ts +1 -0
- package/helpers/autoTags.js +27 -0
- package/helpers/azureEnv.d.ts +21 -0
- package/helpers/azureEnv.js +102 -0
- package/helpers/configHelper.d.ts +5 -0
- package/helpers/configHelper.js +54 -0
- package/helpers/index.d.ts +4 -0
- package/helpers/index.js +41 -0
- package/helpers/rsHelpers.d.ts +18 -0
- package/helpers/rsHelpers.js +92 -0
- package/helpers/stackEnv.d.ts +4 -0
- package/helpers/stackEnv.js +54 -0
- package/index.d.ts +14 -0
- package/index.js +53 -0
- package/logs/Logs.d.ts +48 -0
- package/logs/Logs.js +154 -0
- package/logs/helpers.d.ts +1 -0
- package/logs/helpers.js +38 -0
- package/logs/index.d.ts +1 -0
- package/logs/index.js +18 -0
- package/package.json +34 -0
- package/services/Automation.d.ts +16 -0
- package/services/Automation.js +85 -0
- package/services/AzSearch.d.ts +20 -0
- package/services/AzSearch.js +113 -0
- package/services/ServiceBus.d.ts +42 -0
- package/services/ServiceBus.js +256 -0
- package/services/index.d.ts +3 -0
- package/services/index.js +20 -0
- package/storage/StorageAccount.d.ts +53 -0
- package/storage/StorageAccount.js +261 -0
- package/storage/helpers.d.ts +24 -0
- package/storage/helpers.js +89 -0
- package/storage/index.d.ts +2 -0
- package/storage/index.js +42 -0
- package/types.d.ts +125 -0
- package/types.js +3 -0
- package/vault/EncryptionKey.d.ts +21 -0
- package/vault/EncryptionKey.js +73 -0
- package/vault/KeyVault.d.ts +31 -0
- package/vault/KeyVault.js +110 -0
- package/vault/VaultSecret.d.ts +23 -0
- package/vault/VaultSecret.js +72 -0
- package/vault/VaultSecrets.d.ts +25 -0
- package/vault/VaultSecrets.js +31 -0
- package/vault/helpers.d.ts +1 -0
- package/vault/helpers.js +13 -0
- package/vault/index.d.ts +5 -0
- package/vault/index.js +45 -0
- package/vm/DiskEncryptionSet.d.ts +16 -0
- package/vm/DiskEncryptionSet.js +74 -0
- package/vm/VirtualMachine.d.ts +45 -0
- package/vm/VirtualMachine.js +192 -0
- package/vm/helpers.d.ts +16 -0
- package/vm/helpers.js +15 -0
- package/vm/index.d.ts +3 -0
- package/vm/index.js +43 -0
- package/vnet/AzCdn.d.ts +44 -0
- package/vnet/AzCdn.js +276 -0
- package/vnet/Basion.d.ts +19 -0
- package/vnet/Basion.js +78 -0
- package/vnet/DnsZone.d.ts +36 -0
- package/vnet/DnsZone.js +113 -0
- package/vnet/Firewall.d.ts +53 -0
- package/vnet/Firewall.js +136 -0
- package/vnet/FirewallPolicies/FirewallPolicyBuilder.d.ts +18 -0
- package/vnet/FirewallPolicies/FirewallPolicyBuilder.js +91 -0
- package/vnet/FirewallPolicies/commonPolicies.d.ts +10 -0
- package/vnet/FirewallPolicies/commonPolicies.js +55 -0
- package/vnet/FirewallPolicies/index.d.ts +0 -0
- package/vnet/FirewallPolicies/index.js +2 -0
- package/vnet/IpAddresses.d.ts +36 -0
- package/vnet/IpAddresses.js +74 -0
- package/vnet/NetworkPeering.d.ts +21 -0
- package/vnet/NetworkPeering.js +85 -0
- package/vnet/PrivateDnsZone.d.ts +38 -0
- package/vnet/PrivateDnsZone.js +111 -0
- package/vnet/PrivateEndpoint.d.ts +43 -0
- package/vnet/PrivateEndpoint.js +181 -0
- package/vnet/RouteTable.d.ts +22 -0
- package/vnet/RouteTable.js +75 -0
- package/vnet/VirtualNetwork.d.ts +99 -0
- package/vnet/VirtualNetwork.js +311 -0
- package/vnet/VpnGateway.d.ts +18 -0
- package/vnet/VpnGateway.js +90 -0
- package/vnet/helpers.d.ts +16 -0
- package/vnet/helpers.js +47 -0
- package/vnet/index.d.ts +13 -0
- package/vnet/index.js +53 -0
- package/vnet/securityRules/SecurityRuleBuilder.d.ts +12 -0
- package/vnet/securityRules/SecurityRuleBuilder.js +55 -0
- package/vnet/securityRules/commonRules.d.ts +9 -0
- package/vnet/securityRules/commonRules.js +94 -0
- package/vnet/securityRules/index.d.ts +2 -0
- package/vnet/securityRules/index.js +19 -0
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.CustomRoles = void 0;
|
|
37
|
+
const auth = __importStar(require("@pulumi/azure-native/authorization"));
|
|
38
|
+
const BaseComponent_1 = require("../base/BaseComponent");
|
|
39
|
+
const helpers_1 = require("../base/helpers");
|
|
40
|
+
const helpers_2 = require("../helpers");
|
|
41
|
+
class CustomRoles extends BaseComponent_1.BaseComponent {
|
|
42
|
+
constructor(name, args, opts) {
|
|
43
|
+
super((0, helpers_1.getComponentResourceType)('CustomRoles'), name, args, opts);
|
|
44
|
+
if (args.enableJustInTimeRemoteRole) {
|
|
45
|
+
this.createJustInTimeRemoteRole();
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
getOutputs() {
|
|
49
|
+
return {};
|
|
50
|
+
}
|
|
51
|
+
createJustInTimeRemoteRole() {
|
|
52
|
+
return new auth.RoleDefinition('JustInTime-User-Remote-Request', {
|
|
53
|
+
roleName: 'Just-In-Time-User-Remote-Request-Role',
|
|
54
|
+
description: 'Just-in-time virtual machine user remote request role',
|
|
55
|
+
scope: helpers_2.azureEnv.defaultSubScope,
|
|
56
|
+
permissions: [
|
|
57
|
+
{
|
|
58
|
+
actions: [
|
|
59
|
+
'Microsoft.Security/locations/jitNetworkAccessPolicies/initiate/action',
|
|
60
|
+
'Microsoft.Security/locations/jitNetworkAccessPolicies/*/read',
|
|
61
|
+
'Microsoft.Security/policies/read',
|
|
62
|
+
'Microsoft.Compute/virtualMachines/read',
|
|
63
|
+
'Microsoft.Network/networkInterfaces/*/read',
|
|
64
|
+
],
|
|
65
|
+
notActions: [],
|
|
66
|
+
},
|
|
67
|
+
],
|
|
68
|
+
assignableScopes: [helpers_2.azureEnv.defaultSubScope],
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
exports.CustomRoles = CustomRoles;
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ3VzdG9tUm9sZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXpBZC9DdXN0b21Sb2xlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx5RUFBMkQ7QUFFM0QseURBQXNEO0FBQ3RELDZDQUEyRDtBQUMzRCx3Q0FBc0M7QUFNdEMsTUFBYSxXQUFZLFNBQVEsNkJBQTZCO0lBQzVELFlBQVksSUFBWSxFQUFFLElBQW9CLEVBQUUsSUFBc0M7UUFDcEYsS0FBSyxDQUFDLElBQUEsa0NBQXdCLEVBQUMsYUFBYSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUVqRSxJQUFJLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1lBQ3BDLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1FBQ3BDLENBQUM7SUFDSCxDQUFDO0lBRU0sVUFBVTtRQUNmLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVPLDBCQUEwQjtRQUNoQyxPQUFPLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQ0FBZ0MsRUFBRTtZQUMvRCxRQUFRLEVBQUUsdUNBQXVDO1lBQ2pELFdBQVcsRUFBRSx1REFBdUQ7WUFDcEUsS0FBSyxFQUFFLGtCQUFRLENBQUMsZUFBZTtZQUMvQixXQUFXLEVBQUU7Z0JBQ1g7b0JBQ0UsT0FBTyxFQUFFO3dCQUNQLHVFQUF1RTt3QkFDdkUsOERBQThEO3dCQUM5RCxrQ0FBa0M7d0JBQ2xDLHdDQUF3Qzt3QkFDeEMsNENBQTRDO3FCQUM3QztvQkFDRCxVQUFVLEVBQUUsRUFBRTtpQkFDZjthQUNGO1lBQ0QsZ0JBQWdCLEVBQUUsQ0FBQyxrQkFBUSxDQUFDLGVBQWUsQ0FBQztTQUM3QyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFqQ0Qsa0NBaUNDIn0=
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import * as pulumi from '@pulumi/pulumi';
|
|
2
|
+
import { BaseComponent } from '../base/BaseComponent';
|
|
3
|
+
import * as types from '../types';
|
|
4
|
+
import { AzRoleArgs } from './AzRole';
|
|
5
|
+
export interface GroupRoleArgs extends Pick<AzRoleArgs, 'owners' | 'preventDuplicateNames'>, Partial<Record<types.GroupRoleTypes, Pick<AzRoleArgs, 'members'>>> {
|
|
6
|
+
preventDuplicateNames?: pulumi.Input<boolean>;
|
|
7
|
+
}
|
|
8
|
+
export interface GroupRoleOutput {
|
|
9
|
+
objectId: string;
|
|
10
|
+
displayName: string;
|
|
11
|
+
}
|
|
12
|
+
export declare class GroupRole extends BaseComponent<GroupRoleArgs> {
|
|
13
|
+
readonly admin: pulumi.Output<GroupRoleOutput>;
|
|
14
|
+
readonly contributor: pulumi.Output<GroupRoleOutput>;
|
|
15
|
+
readonly readOnly: pulumi.Output<GroupRoleOutput>;
|
|
16
|
+
constructor(name?: string, args?: GroupRoleArgs, opts?: pulumi.ComponentResourceOptions);
|
|
17
|
+
getOutputs(): {
|
|
18
|
+
admin: pulumi.Output<GroupRoleOutput>;
|
|
19
|
+
contributor: pulumi.Output<GroupRoleOutput>;
|
|
20
|
+
readOnly: pulumi.Output<GroupRoleOutput>;
|
|
21
|
+
};
|
|
22
|
+
private configHierarchyRoles;
|
|
23
|
+
/**
|
|
24
|
+
* Selectively picks properties from the component instance
|
|
25
|
+
* @param keys - Array of property keys to pick from the component
|
|
26
|
+
* @returns Object containing only the selected properties
|
|
27
|
+
*/
|
|
28
|
+
PickOutputs<K extends keyof this>(...keys: K[]): Pick<this, K>;
|
|
29
|
+
}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.GroupRole = void 0;
|
|
37
|
+
const azAd = __importStar(require("@pulumi/azuread"));
|
|
38
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
39
|
+
const BaseComponent_1 = require("../base/BaseComponent");
|
|
40
|
+
const helpers_1 = require("../base/helpers");
|
|
41
|
+
const helpers_2 = require("../helpers");
|
|
42
|
+
const AzRole_1 = require("./AzRole");
|
|
43
|
+
class GroupRole extends BaseComponent_1.BaseComponent {
|
|
44
|
+
admin;
|
|
45
|
+
contributor;
|
|
46
|
+
readOnly;
|
|
47
|
+
constructor(name = helpers_2.stackInfo.stack, args = {}, opts) {
|
|
48
|
+
super((0, helpers_1.getComponentResourceType)('GroupRole'), name, args, opts);
|
|
49
|
+
const roles = ['admin', 'contributor', 'readOnly'];
|
|
50
|
+
const roleInstances = Object.fromEntries(roles.map((role) => [
|
|
51
|
+
role,
|
|
52
|
+
new AzRole_1.AzRole(`${name} ${role}`, {
|
|
53
|
+
owners: args.owners,
|
|
54
|
+
members: args[role]?.members,
|
|
55
|
+
preventDuplicateNames: args.preventDuplicateNames,
|
|
56
|
+
}, { parent: this }),
|
|
57
|
+
]));
|
|
58
|
+
this.admin = pulumi.output({
|
|
59
|
+
objectId: roleInstances.admin.objectId,
|
|
60
|
+
displayName: roleInstances.admin.displayName,
|
|
61
|
+
});
|
|
62
|
+
this.contributor = pulumi.output({
|
|
63
|
+
objectId: roleInstances.contributor.objectId,
|
|
64
|
+
displayName: roleInstances.contributor.displayName,
|
|
65
|
+
});
|
|
66
|
+
this.readOnly = pulumi.output({
|
|
67
|
+
objectId: roleInstances.readOnly.objectId,
|
|
68
|
+
displayName: roleInstances.readOnly.displayName,
|
|
69
|
+
});
|
|
70
|
+
this.configHierarchyRoles(roleInstances);
|
|
71
|
+
this.registerOutputs(this.getOutputs());
|
|
72
|
+
}
|
|
73
|
+
getOutputs() {
|
|
74
|
+
return {
|
|
75
|
+
admin: this.admin,
|
|
76
|
+
contributor: this.contributor,
|
|
77
|
+
readOnly: this.readOnly,
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
configHierarchyRoles(roles) {
|
|
81
|
+
if (this.admin && this.contributor) {
|
|
82
|
+
new azAd.GroupMember(`${this.name}-admin2contributor`, {
|
|
83
|
+
groupObjectId: this.contributor.objectId,
|
|
84
|
+
memberObjectId: this.admin.objectId,
|
|
85
|
+
}, { dependsOn: Object.values(roles), parent: this });
|
|
86
|
+
}
|
|
87
|
+
if (this.contributor && this.readOnly) {
|
|
88
|
+
new azAd.GroupMember(`${this.name}-contributor2readOnly`, {
|
|
89
|
+
groupObjectId: this.readOnly.objectId,
|
|
90
|
+
memberObjectId: this.contributor.objectId,
|
|
91
|
+
}, { dependsOn: Object.values(roles), parent: this });
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Selectively picks properties from the component instance
|
|
96
|
+
* @param keys - Array of property keys to pick from the component
|
|
97
|
+
* @returns Object containing only the selected properties
|
|
98
|
+
*/
|
|
99
|
+
PickOutputs(...keys) {
|
|
100
|
+
return keys.reduce((acc, key) => {
|
|
101
|
+
acc[key] = this[key];
|
|
102
|
+
return acc;
|
|
103
|
+
}, {});
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
exports.GroupRole = GroupRole;
|
|
107
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JvdXBSb2xlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2F6QWQvR3JvdXBSb2xlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHNEQUF3QztBQUN4Qyx1REFBeUM7QUFDekMseURBQXNEO0FBQ3RELDZDQUEyRDtBQUMzRCx3Q0FBdUM7QUFFdkMscUNBQThDO0FBYTlDLE1BQWEsU0FBVSxTQUFRLDZCQUE0QjtJQUN6QyxLQUFLLENBQWlDO0lBQ3RDLFdBQVcsQ0FBaUM7SUFDNUMsUUFBUSxDQUFpQztJQUV6RCxZQUFZLE9BQWUsbUJBQVMsQ0FBQyxLQUFLLEVBQUUsT0FBc0IsRUFBRSxFQUFFLElBQXNDO1FBQzFHLEtBQUssQ0FBQyxJQUFBLGtDQUF3QixFQUFDLFdBQVcsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFL0QsTUFBTSxLQUFLLEdBQUcsQ0FBQyxPQUFPLEVBQUUsYUFBYSxFQUFFLFVBQVUsQ0FBVSxDQUFDO1FBRTVELE1BQU0sYUFBYSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQ3RDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ2xCLElBQUk7WUFDSixJQUFJLGVBQU0sQ0FDUixHQUFHLElBQUksSUFBSSxJQUFJLEVBQUUsRUFDakI7Z0JBQ0UsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO2dCQUNuQixPQUFPLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU87Z0JBQzVCLHFCQUFxQixFQUFFLElBQUksQ0FBQyxxQkFBcUI7YUFDbEQsRUFDRCxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FDakI7U0FDRixDQUFDLENBQ0gsQ0FBQztRQUVGLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztZQUN6QixRQUFRLEVBQUUsYUFBYSxDQUFDLEtBQUssQ0FBQyxRQUFRO1lBQ3RDLFdBQVcsRUFBRSxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVc7U0FDN0MsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO1lBQy9CLFFBQVEsRUFBRSxhQUFhLENBQUMsV0FBVyxDQUFDLFFBQVE7WUFDNUMsV0FBVyxFQUFFLGFBQWEsQ0FBQyxXQUFXLENBQUMsV0FBVztTQUNuRCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7WUFDNUIsUUFBUSxFQUFFLGFBQWEsQ0FBQyxRQUFRLENBQUMsUUFBUTtZQUN6QyxXQUFXLEVBQUUsYUFBYSxDQUFDLFFBQVEsQ0FBQyxXQUFXO1NBQ2hELENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUV6QyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFTSxVQUFVO1FBQ2YsT0FBTztZQUNMLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztZQUNqQixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDN0IsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1NBQ3hCLENBQUM7SUFDSixDQUFDO0lBRU8sb0JBQW9CLENBQUMsS0FBOEI7UUFDekQsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNuQyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQ2xCLEdBQUcsSUFBSSxDQUFDLElBQUksb0JBQW9CLEVBQ2hDO2dCQUNFLGFBQWEsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVE7Z0JBQ3hDLGNBQWMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVE7YUFDcEMsRUFDRCxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FDbEQsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3RDLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FDbEIsR0FBRyxJQUFJLENBQUMsSUFBSSx1QkFBdUIsRUFDbkM7Z0JBQ0UsYUFBYSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUTtnQkFDckMsY0FBYyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUTthQUMxQyxFQUNELEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxDQUNsRCxDQUFDO1FBQ0osQ0FBQztJQUNILENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksV0FBVyxDQUF1QixHQUFHLElBQVM7UUFDbkQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFO1lBQzlCLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBSSxJQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDOUIsT0FBTyxHQUFHLENBQUM7UUFDYixDQUFDLEVBQUUsRUFBbUIsQ0FBQyxDQUFDO0lBQzFCLENBQUM7Q0FDRjtBQXhGRCw4QkF3RkMifQ==
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as auth from '@pulumi/azure-native/authorization';
|
|
2
|
+
import * as pulumi from '@pulumi/pulumi';
|
|
3
|
+
import { BaseComponent } from '../base/BaseComponent';
|
|
4
|
+
export interface RoleAssignmentArgs extends Omit<auth.RoleAssignmentArgs, 'roleDefinitionId'> {
|
|
5
|
+
roleName: 'Owner' | 'Contributor' | 'Reader' | string;
|
|
6
|
+
}
|
|
7
|
+
export declare class RoleAssignment extends BaseComponent<RoleAssignmentArgs> {
|
|
8
|
+
readonly id: pulumi.Output<string>;
|
|
9
|
+
readonly resourceName: pulumi.Output<string>;
|
|
10
|
+
constructor(name: string, args: RoleAssignmentArgs, opts?: pulumi.ComponentResourceOptions);
|
|
11
|
+
getOutputs(): {
|
|
12
|
+
id: pulumi.Output<string>;
|
|
13
|
+
resourceName: pulumi.Output<string>;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.RoleAssignment = void 0;
|
|
37
|
+
const auth = __importStar(require("@pulumi/azure-native/authorization"));
|
|
38
|
+
const BaseComponent_1 = require("../base/BaseComponent");
|
|
39
|
+
const rolesBuiltIn_1 = require("./helpers/rolesBuiltIn");
|
|
40
|
+
class RoleAssignment extends BaseComponent_1.BaseComponent {
|
|
41
|
+
id;
|
|
42
|
+
resourceName;
|
|
43
|
+
constructor(name, args, opts) {
|
|
44
|
+
super('RoleAssignment', name, args, opts);
|
|
45
|
+
const { roleName, ...props } = args;
|
|
46
|
+
const role = (0, rolesBuiltIn_1.getRoleDefinitionByName)(roleName);
|
|
47
|
+
const assignment = new auth.RoleAssignment(name, {
|
|
48
|
+
...props,
|
|
49
|
+
roleDefinitionId: role.id,
|
|
50
|
+
}, { ...opts, parent: this });
|
|
51
|
+
this.id = assignment.id;
|
|
52
|
+
this.resourceName = assignment.name;
|
|
53
|
+
this.registerOutputs(this.getOutputs());
|
|
54
|
+
}
|
|
55
|
+
getOutputs() {
|
|
56
|
+
return {
|
|
57
|
+
id: this.id,
|
|
58
|
+
resourceName: this.resourceName,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
exports.RoleAssignment = RoleAssignment;
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUm9sZUFzc2lnbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXpBZC9Sb2xlQXNzaWdubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx5RUFBMkQ7QUFFM0QseURBQXNEO0FBQ3RELHlEQUFpRTtBQU1qRSxNQUFhLGNBQWUsU0FBUSw2QkFBaUM7SUFDbkQsRUFBRSxDQUF3QjtJQUMxQixZQUFZLENBQXdCO0lBRXBELFlBQVksSUFBWSxFQUFFLElBQXdCLEVBQUUsSUFBc0M7UUFDeEYsS0FBSyxDQUFDLGdCQUFnQixFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFMUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLEtBQUssRUFBRSxHQUFHLElBQUksQ0FBQztRQUNwQyxNQUFNLElBQUksR0FBRyxJQUFBLHNDQUF1QixFQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRS9DLE1BQU0sVUFBVSxHQUFHLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FDeEMsSUFBSSxFQUNKO1lBQ0UsR0FBRyxLQUFLO1lBQ1IsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLEVBQUU7U0FDMUIsRUFDRCxFQUFFLEdBQUcsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FDMUIsQ0FBQztRQUVGLElBQUksQ0FBQyxFQUFFLEdBQUcsVUFBVSxDQUFDLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsWUFBWSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUM7UUFDcEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRU0sVUFBVTtRQUNmLE9BQU87WUFDTCxFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDWCxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7U0FDaEMsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQTlCRCx3Q0E4QkMifQ==
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import * as pulumi from '@pulumi/pulumi';
|
|
2
|
+
import { BaseArgs, BaseResourceComponent } from '../base';
|
|
3
|
+
import { WithMemberOfArgs, WithResourceGroupInputs } from '../types';
|
|
4
|
+
export interface UserAssignedIdentityArgs extends Omit<BaseArgs, 'groupRoles'>, WithMemberOfArgs, WithResourceGroupInputs {
|
|
5
|
+
}
|
|
6
|
+
export declare class UserAssignedIdentity extends BaseResourceComponent<UserAssignedIdentityArgs> {
|
|
7
|
+
readonly id: pulumi.Output<string>;
|
|
8
|
+
readonly clientId: pulumi.Output<string>;
|
|
9
|
+
readonly principalId: pulumi.Output<string>;
|
|
10
|
+
constructor(name: string, args: UserAssignedIdentityArgs, opts?: pulumi.ComponentResourceOptions);
|
|
11
|
+
getOutputs(): {
|
|
12
|
+
id: pulumi.Output<string>;
|
|
13
|
+
clientId: pulumi.Output<string>;
|
|
14
|
+
principalId: pulumi.Output<string>;
|
|
15
|
+
};
|
|
16
|
+
private addMemberOf;
|
|
17
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.UserAssignedIdentity = void 0;
|
|
37
|
+
const mid = __importStar(require("@pulumi/azure-native/managedidentity"));
|
|
38
|
+
const azAd = __importStar(require("@pulumi/azuread"));
|
|
39
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
40
|
+
const base_1 = require("../base");
|
|
41
|
+
class UserAssignedIdentity extends base_1.BaseResourceComponent {
|
|
42
|
+
id;
|
|
43
|
+
clientId;
|
|
44
|
+
principalId;
|
|
45
|
+
constructor(name, args, opts) {
|
|
46
|
+
super('UserAssignedIdentity', name, args, opts);
|
|
47
|
+
const managedIdentity = new mid.UserAssignedIdentity(name, { ...args.rsGroup }, { ...opts, parent: this });
|
|
48
|
+
this.addSecrets({
|
|
49
|
+
id: managedIdentity.id,
|
|
50
|
+
clientId: managedIdentity.clientId,
|
|
51
|
+
principalId: managedIdentity.principalId,
|
|
52
|
+
});
|
|
53
|
+
this.id = managedIdentity.id;
|
|
54
|
+
this.clientId = managedIdentity.clientId;
|
|
55
|
+
this.principalId = managedIdentity.principalId;
|
|
56
|
+
this.addMemberOf();
|
|
57
|
+
this.registerOutputs();
|
|
58
|
+
}
|
|
59
|
+
getOutputs() {
|
|
60
|
+
return {
|
|
61
|
+
id: this.id,
|
|
62
|
+
clientId: this.clientId,
|
|
63
|
+
principalId: this.principalId,
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
addMemberOf() {
|
|
67
|
+
if (!this.args.memberof)
|
|
68
|
+
return;
|
|
69
|
+
this.args.memberof.map((group) => pulumi.output(group).apply((id) => new azAd.GroupMember(`${this.name}-${id.objectId}`, {
|
|
70
|
+
groupObjectId: id.objectId,
|
|
71
|
+
memberObjectId: this.principalId,
|
|
72
|
+
}, { parent: this })));
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
exports.UserAssignedIdentity = UserAssignedIdentity;
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXNlckFzc2lnbmVkSWRlbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXpBZC9Vc2VyQXNzaWduZWRJZGVudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwwRUFBNEQ7QUFDNUQsc0RBQXdDO0FBQ3hDLHVEQUF5QztBQUN6QyxrQ0FBMEQ7QUFRMUQsTUFBYSxvQkFBcUIsU0FBUSw0QkFBK0M7SUFDdkUsRUFBRSxDQUF3QjtJQUMxQixRQUFRLENBQXdCO0lBQ2hDLFdBQVcsQ0FBd0I7SUFFbkQsWUFBWSxJQUFZLEVBQUUsSUFBOEIsRUFBRSxJQUFzQztRQUM5RixLQUFLLENBQUMsc0JBQXNCLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUVoRCxNQUFNLGVBQWUsR0FBRyxJQUFJLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsRUFBRSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxFQUFFLEdBQUcsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRTNHLElBQUksQ0FBQyxVQUFVLENBQUM7WUFDZCxFQUFFLEVBQUUsZUFBZSxDQUFDLEVBQUU7WUFDdEIsUUFBUSxFQUFFLGVBQWUsQ0FBQyxRQUFRO1lBQ2xDLFdBQVcsRUFBRSxlQUFlLENBQUMsV0FBVztTQUN6QyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsRUFBRSxHQUFHLGVBQWUsQ0FBQyxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxlQUFlLENBQUMsUUFBUSxDQUFDO1FBQ3pDLElBQUksQ0FBQyxXQUFXLEdBQUcsZUFBZSxDQUFDLFdBQVcsQ0FBQztRQUUvQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFbkIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxVQUFVO1FBQ2YsT0FBTztZQUNMLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNYLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7U0FDOUIsQ0FBQztJQUNKLENBQUM7SUFFTyxXQUFXO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQy9CLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUN4QixDQUFDLEVBQUUsRUFBRSxFQUFFLENBQ0wsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUNsQixHQUFHLElBQUksQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUM3QjtZQUNFLGFBQWEsRUFBRSxFQUFFLENBQUMsUUFBUTtZQUMxQixjQUFjLEVBQUUsSUFBSSxDQUFDLFdBQVc7U0FDakMsRUFDRCxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FDakIsQ0FDSixDQUNGLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFqREQsb0RBaURDIn0=
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
type RoleProps = {
|
|
2
|
+
name: string;
|
|
3
|
+
type: 'Scope' | 'Role';
|
|
4
|
+
};
|
|
5
|
+
type RoleResultProps = {
|
|
6
|
+
id: string;
|
|
7
|
+
type: 'Scope' | 'Role';
|
|
8
|
+
};
|
|
9
|
+
type PermissionProps = {
|
|
10
|
+
resourceAppId: string;
|
|
11
|
+
resourceAccesses: Array<RoleResultProps>;
|
|
12
|
+
};
|
|
13
|
+
export declare function getGraphPermissions(...roleNames: RoleProps[]): PermissionProps;
|
|
14
|
+
export {};
|