@or-sdk/permissions-lambda 2.1.0 → 2.1.1-beta.4018.0
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/dist/cjs/PermissionsLambda.js +65 -0
- package/dist/cjs/PermissionsLambda.js.map +1 -1
- package/dist/esm/PermissionsLambda.js +40 -0
- package/dist/esm/PermissionsLambda.js.map +1 -1
- package/dist/types/PermissionsLambda.d.ts +36 -1
- package/dist/types/PermissionsLambda.d.ts.map +1 -1
- package/dist/types/types.d.ts +26 -0
- package/dist/types/types.d.ts.map +1 -1
- package/package.json +2 -3
- package/src/PermissionsLambda.ts +69 -0
- package/src/types.ts +34 -0
|
@@ -80,6 +80,19 @@ var PermissionsLambda = (function () {
|
|
|
80
80
|
});
|
|
81
81
|
});
|
|
82
82
|
};
|
|
83
|
+
PermissionsLambda.prototype.getAllAvailablePermissions = function () {
|
|
84
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
85
|
+
return __generator(this, function (_a) {
|
|
86
|
+
switch (_a.label) {
|
|
87
|
+
case 0: return [4, this.invoke({
|
|
88
|
+
action: 'get-all-available-permissions',
|
|
89
|
+
payload: {},
|
|
90
|
+
})];
|
|
91
|
+
case 1: return [2, _a.sent()];
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
});
|
|
95
|
+
};
|
|
83
96
|
PermissionsLambda.prototype.getByService = function (data) {
|
|
84
97
|
return __awaiter(this, void 0, void 0, function () {
|
|
85
98
|
return __generator(this, function (_a) {
|
|
@@ -158,6 +171,58 @@ var PermissionsLambda = (function () {
|
|
|
158
171
|
});
|
|
159
172
|
});
|
|
160
173
|
};
|
|
174
|
+
PermissionsLambda.prototype.getApiTokenPermissions = function (data) {
|
|
175
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
176
|
+
return __generator(this, function (_a) {
|
|
177
|
+
switch (_a.label) {
|
|
178
|
+
case 0: return [4, this.invoke({
|
|
179
|
+
action: 'get-api-token-permissions',
|
|
180
|
+
payload: data,
|
|
181
|
+
})];
|
|
182
|
+
case 1: return [2, _a.sent()];
|
|
183
|
+
}
|
|
184
|
+
});
|
|
185
|
+
});
|
|
186
|
+
};
|
|
187
|
+
PermissionsLambda.prototype.getBulkApiTokenPermissions = function (data) {
|
|
188
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
189
|
+
return __generator(this, function (_a) {
|
|
190
|
+
switch (_a.label) {
|
|
191
|
+
case 0: return [4, this.invoke({
|
|
192
|
+
action: 'get-bulk-api-token-permissions',
|
|
193
|
+
payload: data,
|
|
194
|
+
})];
|
|
195
|
+
case 1: return [2, _a.sent()];
|
|
196
|
+
}
|
|
197
|
+
});
|
|
198
|
+
});
|
|
199
|
+
};
|
|
200
|
+
PermissionsLambda.prototype.setApiTokenPermissions = function (data) {
|
|
201
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
202
|
+
return __generator(this, function (_a) {
|
|
203
|
+
switch (_a.label) {
|
|
204
|
+
case 0: return [4, this.invoke({
|
|
205
|
+
action: 'set-api-token-permissions',
|
|
206
|
+
payload: data,
|
|
207
|
+
})];
|
|
208
|
+
case 1: return [2, _a.sent()];
|
|
209
|
+
}
|
|
210
|
+
});
|
|
211
|
+
});
|
|
212
|
+
};
|
|
213
|
+
PermissionsLambda.prototype.deleteApiTokenPermissions = function (tokenId) {
|
|
214
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
215
|
+
return __generator(this, function (_a) {
|
|
216
|
+
switch (_a.label) {
|
|
217
|
+
case 0: return [4, this.invoke({
|
|
218
|
+
action: 'delete-api-token-permissions',
|
|
219
|
+
payload: { tokenId: tokenId },
|
|
220
|
+
})];
|
|
221
|
+
case 1: return [2, _a.sent()];
|
|
222
|
+
}
|
|
223
|
+
});
|
|
224
|
+
});
|
|
225
|
+
};
|
|
161
226
|
return PermissionsLambda;
|
|
162
227
|
}());
|
|
163
228
|
exports.PermissionsLambda = PermissionsLambda;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PermissionsLambda.js","sourceRoot":"","sources":["../../src/PermissionsLambda.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wDAAgD;
|
|
1
|
+
{"version":3,"file":"PermissionsLambda.js","sourceRoot":"","sources":["../../src/PermissionsLambda.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,6 +38,14 @@ export class PermissionsLambda {
|
|
|
38
38
|
});
|
|
39
39
|
});
|
|
40
40
|
}
|
|
41
|
+
getAllAvailablePermissions() {
|
|
42
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
43
|
+
return yield this.invoke({
|
|
44
|
+
action: 'get-all-available-permissions',
|
|
45
|
+
payload: {},
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
}
|
|
41
49
|
getByService(data) {
|
|
42
50
|
return __awaiter(this, void 0, void 0, function* () {
|
|
43
51
|
return yield this.invoke({
|
|
@@ -86,5 +94,37 @@ export class PermissionsLambda {
|
|
|
86
94
|
});
|
|
87
95
|
});
|
|
88
96
|
}
|
|
97
|
+
getApiTokenPermissions(data) {
|
|
98
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
99
|
+
return yield this.invoke({
|
|
100
|
+
action: 'get-api-token-permissions',
|
|
101
|
+
payload: data,
|
|
102
|
+
});
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
getBulkApiTokenPermissions(data) {
|
|
106
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
107
|
+
return yield this.invoke({
|
|
108
|
+
action: 'get-bulk-api-token-permissions',
|
|
109
|
+
payload: data,
|
|
110
|
+
});
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
setApiTokenPermissions(data) {
|
|
114
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
115
|
+
return yield this.invoke({
|
|
116
|
+
action: 'set-api-token-permissions',
|
|
117
|
+
payload: data,
|
|
118
|
+
});
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
deleteApiTokenPermissions(tokenId) {
|
|
122
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
123
|
+
return yield this.invoke({
|
|
124
|
+
action: 'delete-api-token-permissions',
|
|
125
|
+
payload: { tokenId },
|
|
126
|
+
});
|
|
127
|
+
});
|
|
128
|
+
}
|
|
89
129
|
}
|
|
90
130
|
//# sourceMappingURL=PermissionsLambda.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PermissionsLambda.js","sourceRoot":"","sources":["../../src/PermissionsLambda.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"PermissionsLambda.js","sourceRoot":"","sources":["../../src/PermissionsLambda.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AllPermissionsResponse, GetAllPayload, GetByAccountUserPayload, GetByServicePayload, LambdaConfig, Permission, PermissionsByServiceResponse, RegisterServiceDto, UpdateEntityDto, UserPermissionsResponse } from './types';
|
|
1
|
+
import { AllPermissionsResponse, AvailablePermissionsResponse, ApiTokenPermissionsResponse, BulkApiTokenPermissionsResponse, GetAllPayload, GetApiTokenPayload, GetBulkApiTokenPayload, GetByAccountUserPayload, GetByServicePayload, LambdaConfig, Permission, PermissionsByServiceResponse, RegisterServiceDto, SetApiTokenPermissionsPayload, UpdateEntityDto, UserPermissionsResponse } from './types';
|
|
2
2
|
/**
|
|
3
3
|
* Client for interacting with the Permissions Lambda function
|
|
4
4
|
* ## Installation:
|
|
@@ -30,6 +30,11 @@ export declare class PermissionsLambda {
|
|
|
30
30
|
*/
|
|
31
31
|
registerService(data: RegisterServiceDto): Promise<Permission[]>;
|
|
32
32
|
/**
|
|
33
|
+
* Gets all available permissions across all services
|
|
34
|
+
* @returns {Promise<AvailablePermissionsResponse>} List of services with their available permissions
|
|
35
|
+
*/
|
|
36
|
+
getAllAvailablePermissions(): Promise<AvailablePermissionsResponse>;
|
|
37
|
+
/**
|
|
33
38
|
* Gets user permissions for a specific service
|
|
34
39
|
* @param {GetUserPermissionsParams} data - Request parameters
|
|
35
40
|
* @param {string} data.multiUserId - Multi-user identifier
|
|
@@ -76,5 +81,35 @@ export declare class PermissionsLambda {
|
|
|
76
81
|
* @returns {Promise<boolean>} True if user has all specified scopes, false otherwise
|
|
77
82
|
*/
|
|
78
83
|
checkScope(scope: string[]): Promise<boolean>;
|
|
84
|
+
/**
|
|
85
|
+
* Gets all permissions for an API token
|
|
86
|
+
* @param {GetApiTokenPayload} data - Request parameters
|
|
87
|
+
* @param {string} data.tokenId - API Token identifier
|
|
88
|
+
* @returns {Promise<ApiTokenPermissionsResponse>} List of services with their permissions
|
|
89
|
+
*/
|
|
90
|
+
getApiTokenPermissions(data: GetApiTokenPayload): Promise<ApiTokenPermissionsResponse>;
|
|
91
|
+
/**
|
|
92
|
+
* Gets permissions for multiple API tokens
|
|
93
|
+
* @param {GetBulkApiTokenPayload} data - Request parameters
|
|
94
|
+
* @param {string[]} data.tokenIds - List of API Token identifiers
|
|
95
|
+
* @returns {Promise<BulkApiTokenPermissionsResponse>} Map of token IDs to their permissions
|
|
96
|
+
*/
|
|
97
|
+
getBulkApiTokenPermissions(data: GetBulkApiTokenPayload): Promise<BulkApiTokenPermissionsResponse>;
|
|
98
|
+
/**
|
|
99
|
+
* Sets permissions for an API token
|
|
100
|
+
* @param {SetApiTokenPermissionsPayload} data - Update parameters
|
|
101
|
+
* @param {string} data.tokenId - API Token identifier
|
|
102
|
+
* @param {Object} data.permissions - Map of service names to permission overrides
|
|
103
|
+
* @returns {Promise<ApiTokenPermissionsResponse>} Updated permissions
|
|
104
|
+
*/
|
|
105
|
+
setApiTokenPermissions(data: SetApiTokenPermissionsPayload): Promise<ApiTokenPermissionsResponse>;
|
|
106
|
+
/**
|
|
107
|
+
* Deletes all permissions for an API token
|
|
108
|
+
* @param {string} tokenId - API Token identifier
|
|
109
|
+
* @returns {Promise<{ success: boolean }>}
|
|
110
|
+
*/
|
|
111
|
+
deleteApiTokenPermissions(tokenId: string): Promise<{
|
|
112
|
+
success: boolean;
|
|
113
|
+
}>;
|
|
79
114
|
}
|
|
80
115
|
//# sourceMappingURL=PermissionsLambda.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PermissionsLambda.d.ts","sourceRoot":"","sources":["../../src/PermissionsLambda.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,sBAAsB,EACtB,aAAa,EACb,uBAAuB,EACvB,mBAAmB,EACnB,YAAY,EAEZ,UAAU,EACV,4BAA4B,EAC5B,kBAAkB,EAClB,eAAe,EACf,uBAAuB,EACxB,MAAM,SAAS,CAAC;AAEjB;;;;;;GAMG;AACH,qBAAa,iBAAiB;IAC5B;;;;;;;;OAQG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;gBAE1B,MAAM,EAAE,YAAY;YAQlB,MAAM;IAgBpB;;;;;;;MAOE;IACI,eAAe,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAOtE;;;;;;;MAOE;IACI,YAAY,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,4BAA4B,CAAC;IAOpF;;;;;;MAME;IACI,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAOlE;;;;;;MAME;IACI,qBAAqB,CAAC,IAAI,EAAE,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAO5F;;;;;;QAMI;IACE,gBAAgB,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAO9E;;;;;;QAMI;IACE,eAAe,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAO7E;;;;MAIE;IACI,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"PermissionsLambda.d.ts","sourceRoot":"","sources":["../../src/PermissionsLambda.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,sBAAsB,EACtB,4BAA4B,EAC5B,2BAA2B,EAC3B,+BAA+B,EAC/B,aAAa,EACb,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,mBAAmB,EACnB,YAAY,EAEZ,UAAU,EACV,4BAA4B,EAC5B,kBAAkB,EAClB,6BAA6B,EAC7B,eAAe,EACf,uBAAuB,EACxB,MAAM,SAAS,CAAC;AAEjB;;;;;;GAMG;AACH,qBAAa,iBAAiB;IAC5B;;;;;;;;OAQG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;gBAE1B,MAAM,EAAE,YAAY;YAQlB,MAAM;IAgBpB;;;;;;;MAOE;IACI,eAAe,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAOtE;;;MAGE;IACI,0BAA0B,IAAI,OAAO,CAAC,4BAA4B,CAAC;IAOzE;;;;;;;MAOE;IACI,YAAY,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,4BAA4B,CAAC;IAOpF;;;;;;MAME;IACI,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAOlE;;;;;;MAME;IACI,qBAAqB,CAAC,IAAI,EAAE,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAO5F;;;;;;QAMI;IACE,gBAAgB,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAO9E;;;;;;QAMI;IACE,eAAe,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAO7E;;;;MAIE;IACI,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAOnD;;;;;MAKE;IACI,sBAAsB,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAO5F;;;;;MAKE;IACI,0BAA0B,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,+BAA+B,CAAC;IAOxG;;;;;;MAME;IACI,sBAAsB,CAAC,IAAI,EAAE,6BAA6B,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAOvG;;;;MAIE;IACI,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;CAMhF"}
|
package/dist/types/types.d.ts
CHANGED
|
@@ -61,4 +61,30 @@ export type DetailedPermissionGroup = {
|
|
|
61
61
|
};
|
|
62
62
|
export type AllPermissionsResponse = PermissionGroup[];
|
|
63
63
|
export type UserPermissionsResponse = DetailedPermissionGroup[];
|
|
64
|
+
export type GetApiTokenPayload = {
|
|
65
|
+
tokenId: string;
|
|
66
|
+
};
|
|
67
|
+
export type SetApiTokenPermissionsPayload = {
|
|
68
|
+
tokenId: string;
|
|
69
|
+
permissions: {
|
|
70
|
+
[serviceName: string]: PermissionOverride[];
|
|
71
|
+
};
|
|
72
|
+
};
|
|
73
|
+
export type ApiTokenPermissionsResponse = PermissionGroup[];
|
|
74
|
+
export type GetBulkApiTokenPayload = {
|
|
75
|
+
tokenIds: string[];
|
|
76
|
+
};
|
|
77
|
+
export type BulkApiTokenPermissionsResponse = Record<string, PermissionGroup[]>;
|
|
78
|
+
export type AvailablePermission = {
|
|
79
|
+
name: string;
|
|
80
|
+
description: string;
|
|
81
|
+
defaultEffect: boolean;
|
|
82
|
+
metadata?: unknown;
|
|
83
|
+
};
|
|
84
|
+
export type AvailablePermissionGroup = {
|
|
85
|
+
serviceName: string;
|
|
86
|
+
serviceLabel?: string;
|
|
87
|
+
permissions: AvailablePermission[];
|
|
88
|
+
};
|
|
89
|
+
export type AvailablePermissionsResponse = AvailablePermissionGroup[];
|
|
64
90
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,GAAG,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,UAAU,EAAE,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAGF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAGF,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE;QACX,CAAC,WAAW,EAAE,MAAM,GAAG,kBAAkB,EAAE,CAAC;KAC7C,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAGF,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAAG;IACjD,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,eAAe,EAAE,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,kBAAkB,EAAE,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,eAAe,EAAE,CAAC;AACvD,MAAM,MAAM,uBAAuB,GAAG,uBAAuB,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@or-sdk/permissions-lambda",
|
|
3
|
-
"version": "2.1.0",
|
|
3
|
+
"version": "2.1.1-beta.4018.0",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -26,6 +26,5 @@
|
|
|
26
26
|
},
|
|
27
27
|
"publishConfig": {
|
|
28
28
|
"access": "public"
|
|
29
|
-
}
|
|
30
|
-
"gitHead": "ce62679c119c54ef41fd0d8f7084c563c3b21b24"
|
|
29
|
+
}
|
|
31
30
|
}
|
package/src/PermissionsLambda.ts
CHANGED
|
@@ -2,7 +2,12 @@ import { Lambda } from '@aws-sdk/client-lambda';
|
|
|
2
2
|
|
|
3
3
|
import {
|
|
4
4
|
AllPermissionsResponse,
|
|
5
|
+
AvailablePermissionsResponse,
|
|
6
|
+
ApiTokenPermissionsResponse,
|
|
7
|
+
BulkApiTokenPermissionsResponse,
|
|
5
8
|
GetAllPayload,
|
|
9
|
+
GetApiTokenPayload,
|
|
10
|
+
GetBulkApiTokenPayload,
|
|
6
11
|
GetByAccountUserPayload,
|
|
7
12
|
GetByServicePayload,
|
|
8
13
|
LambdaConfig,
|
|
@@ -10,6 +15,7 @@ import {
|
|
|
10
15
|
Permission,
|
|
11
16
|
PermissionsByServiceResponse,
|
|
12
17
|
RegisterServiceDto,
|
|
18
|
+
SetApiTokenPermissionsPayload,
|
|
13
19
|
UpdateEntityDto,
|
|
14
20
|
UserPermissionsResponse,
|
|
15
21
|
} from './types';
|
|
@@ -73,6 +79,17 @@ export class PermissionsLambda {
|
|
|
73
79
|
});
|
|
74
80
|
}
|
|
75
81
|
|
|
82
|
+
/**
|
|
83
|
+
* Gets all available permissions across all services
|
|
84
|
+
* @returns {Promise<AvailablePermissionsResponse>} List of services with their available permissions
|
|
85
|
+
*/
|
|
86
|
+
async getAllAvailablePermissions(): Promise<AvailablePermissionsResponse> {
|
|
87
|
+
return await this.invoke({
|
|
88
|
+
action: 'get-all-available-permissions',
|
|
89
|
+
payload: {},
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
|
|
76
93
|
/**
|
|
77
94
|
* Gets user permissions for a specific service
|
|
78
95
|
* @param {GetUserPermissionsParams} data - Request parameters
|
|
@@ -155,4 +172,56 @@ export class PermissionsLambda {
|
|
|
155
172
|
payload: scope,
|
|
156
173
|
});
|
|
157
174
|
}
|
|
175
|
+
|
|
176
|
+
/**
|
|
177
|
+
* Gets all permissions for an API token
|
|
178
|
+
* @param {GetApiTokenPayload} data - Request parameters
|
|
179
|
+
* @param {string} data.tokenId - API Token identifier
|
|
180
|
+
* @returns {Promise<ApiTokenPermissionsResponse>} List of services with their permissions
|
|
181
|
+
*/
|
|
182
|
+
async getApiTokenPermissions(data: GetApiTokenPayload): Promise<ApiTokenPermissionsResponse> {
|
|
183
|
+
return await this.invoke({
|
|
184
|
+
action: 'get-api-token-permissions',
|
|
185
|
+
payload: data,
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
/**
|
|
190
|
+
* Gets permissions for multiple API tokens
|
|
191
|
+
* @param {GetBulkApiTokenPayload} data - Request parameters
|
|
192
|
+
* @param {string[]} data.tokenIds - List of API Token identifiers
|
|
193
|
+
* @returns {Promise<BulkApiTokenPermissionsResponse>} Map of token IDs to their permissions
|
|
194
|
+
*/
|
|
195
|
+
async getBulkApiTokenPermissions(data: GetBulkApiTokenPayload): Promise<BulkApiTokenPermissionsResponse> {
|
|
196
|
+
return await this.invoke({
|
|
197
|
+
action: 'get-bulk-api-token-permissions',
|
|
198
|
+
payload: data,
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
/**
|
|
203
|
+
* Sets permissions for an API token
|
|
204
|
+
* @param {SetApiTokenPermissionsPayload} data - Update parameters
|
|
205
|
+
* @param {string} data.tokenId - API Token identifier
|
|
206
|
+
* @param {Object} data.permissions - Map of service names to permission overrides
|
|
207
|
+
* @returns {Promise<ApiTokenPermissionsResponse>} Updated permissions
|
|
208
|
+
*/
|
|
209
|
+
async setApiTokenPermissions(data: SetApiTokenPermissionsPayload): Promise<ApiTokenPermissionsResponse> {
|
|
210
|
+
return await this.invoke({
|
|
211
|
+
action: 'set-api-token-permissions',
|
|
212
|
+
payload: data,
|
|
213
|
+
});
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
/**
|
|
217
|
+
* Deletes all permissions for an API token
|
|
218
|
+
* @param {string} tokenId - API Token identifier
|
|
219
|
+
* @returns {Promise<{ success: boolean }>}
|
|
220
|
+
*/
|
|
221
|
+
async deleteApiTokenPermissions(tokenId: string): Promise<{ success: boolean }> {
|
|
222
|
+
return await this.invoke({
|
|
223
|
+
action: 'delete-api-token-permissions',
|
|
224
|
+
payload: { tokenId },
|
|
225
|
+
});
|
|
226
|
+
}
|
|
158
227
|
}
|
package/src/types.ts
CHANGED
|
@@ -78,3 +78,37 @@ export type DetailedPermissionGroup = {
|
|
|
78
78
|
|
|
79
79
|
export type AllPermissionsResponse = PermissionGroup[];
|
|
80
80
|
export type UserPermissionsResponse = DetailedPermissionGroup[];
|
|
81
|
+
|
|
82
|
+
export type GetApiTokenPayload = {
|
|
83
|
+
tokenId: string;
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
export type SetApiTokenPermissionsPayload = {
|
|
87
|
+
tokenId: string;
|
|
88
|
+
permissions: {
|
|
89
|
+
[serviceName: string]: PermissionOverride[];
|
|
90
|
+
};
|
|
91
|
+
};
|
|
92
|
+
|
|
93
|
+
export type ApiTokenPermissionsResponse = PermissionGroup[];
|
|
94
|
+
|
|
95
|
+
export type GetBulkApiTokenPayload = {
|
|
96
|
+
tokenIds: string[];
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
export type BulkApiTokenPermissionsResponse = Record<string, PermissionGroup[]>;
|
|
100
|
+
|
|
101
|
+
export type AvailablePermission = {
|
|
102
|
+
name: string;
|
|
103
|
+
description: string;
|
|
104
|
+
defaultEffect: boolean;
|
|
105
|
+
metadata?: unknown;
|
|
106
|
+
};
|
|
107
|
+
|
|
108
|
+
export type AvailablePermissionGroup = {
|
|
109
|
+
serviceName: string;
|
|
110
|
+
serviceLabel?: string;
|
|
111
|
+
permissions: AvailablePermission[];
|
|
112
|
+
};
|
|
113
|
+
|
|
114
|
+
export type AvailablePermissionsResponse = AvailablePermissionGroup[];
|