n8n-nodes-arubaclearpass 1.0.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/credentials/ClearPassApi.credentials.d.ts +7 -0
- package/dist/credentials/ClearPassApi.credentials.js +69 -0
- package/dist/credentials/ClearPassOAuth2Api.credentials.d.ts +10 -0
- package/dist/credentials/ClearPassOAuth2Api.credentials.js +55 -0
- package/dist/nodes/ArubaCentral/clearpass.svg +4 -0
- package/dist/nodes/ArubaClearPass/ArubaClearPass.node.d.ts +5 -0
- package/dist/nodes/ArubaClearPass/ArubaClearPass.node.js +173 -0
- package/dist/nodes/ArubaClearPass/descriptions/EnforcementProfile/EnforcementProfile.descriptions.d.ts +4 -0
- package/dist/nodes/ArubaClearPass/descriptions/EnforcementProfile/EnforcementProfile.descriptions.js +361 -0
- package/dist/nodes/ArubaClearPass/descriptions/EnforcementProfile/index.d.ts +2 -0
- package/dist/nodes/ArubaClearPass/descriptions/EnforcementProfile/index.js +11 -0
- package/dist/nodes/ArubaClearPass/descriptions/Identities/ApiClient.descriptions.d.ts +0 -0
- package/dist/nodes/ArubaClearPass/descriptions/Identities/ApiClient.descriptions.js +0 -0
- package/dist/nodes/ArubaClearPass/descriptions/Identities/DenyListedUsers.descriptions.d.ts +0 -0
- package/dist/nodes/ArubaClearPass/descriptions/Identities/DenyListedUsers.descriptions.js +0 -0
- package/dist/nodes/ArubaClearPass/descriptions/Identities/Device.descriptions.d.ts +4 -0
- package/dist/nodes/ArubaClearPass/descriptions/Identities/Device.descriptions.js +668 -0
- package/dist/nodes/ArubaClearPass/descriptions/Identities/Endpoint.descriptions.d.ts +4 -0
- package/dist/nodes/ArubaClearPass/descriptions/Identities/Endpoint.descriptions.js +255 -0
- package/dist/nodes/ArubaClearPass/descriptions/Identities/ExternalAccount.descriptions.d.ts +0 -0
- package/dist/nodes/ArubaClearPass/descriptions/Identities/ExternalAccount.descriptions.js +0 -0
- package/dist/nodes/ArubaClearPass/descriptions/Identities/GuestUser.descriptions.d.ts +4 -0
- package/dist/nodes/ArubaClearPass/descriptions/Identities/GuestUser.descriptions.js +477 -0
- package/dist/nodes/ArubaClearPass/descriptions/Identities/LocalUser.descriptions.d.ts +4 -0
- package/dist/nodes/ArubaClearPass/descriptions/Identities/LocalUser.descriptions.js +384 -0
- package/dist/nodes/ArubaClearPass/descriptions/Identities/StaticHostList.descriptions.d.ts +0 -0
- package/dist/nodes/ArubaClearPass/descriptions/Identities/StaticHostList.descriptions.js +0 -0
- package/dist/nodes/ArubaClearPass/descriptions/Identities/index.d.ts +2 -0
- package/dist/nodes/ArubaClearPass/descriptions/Identities/index.js +23 -0
- package/dist/nodes/ArubaClearPass/descriptions/PolicyElements/EnforcementPolicy.descriptions.d.ts +4 -0
- package/dist/nodes/ArubaClearPass/descriptions/PolicyElements/EnforcementPolicy.descriptions.js +432 -0
- package/dist/nodes/ArubaClearPass/descriptions/PolicyElements/Role.descriptions.d.ts +4 -0
- package/dist/nodes/ArubaClearPass/descriptions/PolicyElements/Role.descriptions.js +263 -0
- package/dist/nodes/ArubaClearPass/descriptions/PolicyElements/RoleMapping.descriptions.d.ts +4 -0
- package/dist/nodes/ArubaClearPass/descriptions/PolicyElements/RoleMapping.descriptions.js +365 -0
- package/dist/nodes/ArubaClearPass/descriptions/PolicyElements/index.d.ts +2 -0
- package/dist/nodes/ArubaClearPass/descriptions/PolicyElements/index.js +19 -0
- package/dist/nodes/ArubaClearPass/helpers/apiRequest.d.ts +9 -0
- package/dist/nodes/ArubaClearPass/helpers/apiRequest.js +72 -0
- package/dist/nodes/ArubaClearPass/helpers/errorHandler.d.ts +4 -0
- package/dist/nodes/ArubaClearPass/helpers/errorHandler.js +31 -0
- package/dist/nodes/ArubaClearPass/helpers/executeOperation.d.ts +5 -0
- package/dist/nodes/ArubaClearPass/helpers/executeOperation.js +164 -0
- package/dist/nodes/ArubaClearPass/helpers/responseFormatter.d.ts +5 -0
- package/dist/nodes/ArubaClearPass/helpers/responseFormatter.js +17 -0
- package/dist/nodes/ArubaClearPass/helpers/tokenManager.d.ts +5 -0
- package/dist/nodes/ArubaClearPass/helpers/tokenManager.js +63 -0
- package/dist/nodes/ArubaClearPass/methods/EnforcementProfile/EnforcementProfile.methods.d.ts +41 -0
- package/dist/nodes/ArubaClearPass/methods/EnforcementProfile/EnforcementProfile.methods.js +395 -0
- package/dist/nodes/ArubaClearPass/methods/Identities/Device.methods.d.ts +41 -0
- package/dist/nodes/ArubaClearPass/methods/Identities/Device.methods.js +409 -0
- package/dist/nodes/ArubaClearPass/methods/Identities/Endpoint.methods.d.ts +33 -0
- package/dist/nodes/ArubaClearPass/methods/Identities/Endpoint.methods.js +212 -0
- package/dist/nodes/ArubaClearPass/methods/Identities/GuestUser.methods.d.ts +41 -0
- package/dist/nodes/ArubaClearPass/methods/Identities/GuestUser.methods.js +589 -0
- package/dist/nodes/ArubaClearPass/methods/Identities/LocalUser.methods.d.ts +41 -0
- package/dist/nodes/ArubaClearPass/methods/Identities/LocalUser.methods.js +407 -0
- package/dist/nodes/ArubaClearPass/methods/PolicyElements/EnforcementPolicy.methods.d.ts +41 -0
- package/dist/nodes/ArubaClearPass/methods/PolicyElements/EnforcementPolicy.methods.js +361 -0
- package/dist/nodes/ArubaClearPass/methods/PolicyElements/Role.methods.d.ts +41 -0
- package/dist/nodes/ArubaClearPass/methods/PolicyElements/Role.methods.js +298 -0
- package/dist/nodes/ArubaClearPass/methods/PolicyElements/RoleMapping.methods.d.ts +41 -0
- package/dist/nodes/ArubaClearPass/methods/PolicyElements/RoleMapping.methods.js +358 -0
- package/dist/nodes/ArubaClearPass/types/EnforcementProfile/EnforcementProfile.types.d.ts +131 -0
- package/dist/nodes/ArubaClearPass/types/EnforcementProfile/EnforcementProfile.types.js +2 -0
- package/dist/nodes/ArubaClearPass/types/Identities/Device.types.d.ts +55 -0
- package/dist/nodes/ArubaClearPass/types/Identities/Device.types.js +2 -0
- package/dist/nodes/ArubaClearPass/types/Identities/Endpoint.types.d.ts +12 -0
- package/dist/nodes/ArubaClearPass/types/Identities/Endpoint.types.js +2 -0
- package/dist/nodes/ArubaClearPass/types/Identities/GuestUser.types.d.ts +31 -0
- package/dist/nodes/ArubaClearPass/types/Identities/GuestUser.types.js +2 -0
- package/dist/nodes/ArubaClearPass/types/Identities/LocalUser.types.d.ts +51 -0
- package/dist/nodes/ArubaClearPass/types/Identities/LocalUser.types.js +2 -0
- package/dist/nodes/ArubaClearPass/types/PolicyElements/EnforcementPolicy.types.d.ts +37 -0
- package/dist/nodes/ArubaClearPass/types/PolicyElements/EnforcementPolicy.types.js +2 -0
- package/dist/nodes/ArubaClearPass/types/PolicyElements/Role.types.d.ts +15 -0
- package/dist/nodes/ArubaClearPass/types/PolicyElements/Role.types.js +2 -0
- package/dist/nodes/ArubaClearPass/types/PolicyElements/RoleMapping.types.d.ts +63 -0
- package/dist/nodes/ArubaClearPass/types/PolicyElements/RoleMapping.types.js +2 -0
- package/package.json +72 -0
|
@@ -0,0 +1,361 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.listEnforcementPolicies = listEnforcementPolicies;
|
|
4
|
+
exports.getEnforcementPolicy = getEnforcementPolicy;
|
|
5
|
+
exports.getEnforcementPolicyByName = getEnforcementPolicyByName;
|
|
6
|
+
exports.createEnforcementPolicy = createEnforcementPolicy;
|
|
7
|
+
exports.updateEnforcementPolicy = updateEnforcementPolicy;
|
|
8
|
+
exports.updateEnforcementPolicyByName = updateEnforcementPolicyByName;
|
|
9
|
+
exports.replaceEnforcementPolicy = replaceEnforcementPolicy;
|
|
10
|
+
exports.replaceEnforcementPolicyByName = replaceEnforcementPolicyByName;
|
|
11
|
+
exports.deleteEnforcementPolicy = deleteEnforcementPolicy;
|
|
12
|
+
exports.deleteEnforcementPolicyByName = deleteEnforcementPolicyByName;
|
|
13
|
+
// methods/PolicyElements/EnforcementPolicy.methods.ts
|
|
14
|
+
const n8n_workflow_1 = require("n8n-workflow");
|
|
15
|
+
const apiRequest_1 = require("../../helpers/apiRequest");
|
|
16
|
+
const responseFormatter_1 = require("../../helpers/responseFormatter");
|
|
17
|
+
/**
|
|
18
|
+
* List all enforcement policies
|
|
19
|
+
*/
|
|
20
|
+
async function listEnforcementPolicies() {
|
|
21
|
+
try {
|
|
22
|
+
const returnAll = this.getNodeParameter('returnAll', 0);
|
|
23
|
+
const filters = this.getNodeParameter('filters', 0, {});
|
|
24
|
+
const endpoint = '/enforcement-policy';
|
|
25
|
+
let responseData;
|
|
26
|
+
if (returnAll) {
|
|
27
|
+
responseData = await apiRequest_1.apiRequestAllItems.call(this, 'GET', endpoint, {}, filters);
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
const limit = this.getNodeParameter('limit', 0);
|
|
31
|
+
if (!filters.limit) {
|
|
32
|
+
filters.limit = limit;
|
|
33
|
+
}
|
|
34
|
+
responseData = await apiRequest_1.apiRequest.call(this, 'GET', endpoint, {}, filters);
|
|
35
|
+
}
|
|
36
|
+
return responseFormatter_1.formatResponse.call(this, responseData);
|
|
37
|
+
}
|
|
38
|
+
catch (error) {
|
|
39
|
+
const errorObject = {};
|
|
40
|
+
if (error instanceof Error) {
|
|
41
|
+
errorObject.message = error.message;
|
|
42
|
+
if (error.stack) {
|
|
43
|
+
errorObject.stackTrace = error.stack;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
errorObject.message = 'Unknown error in listEnforcementPolicies';
|
|
48
|
+
}
|
|
49
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Get an enforcement policy by ID
|
|
54
|
+
*/
|
|
55
|
+
async function getEnforcementPolicy() {
|
|
56
|
+
try {
|
|
57
|
+
const enforcementPolicyId = this.getNodeParameter('enforcementPolicyId', 0);
|
|
58
|
+
const endpoint = `/enforcement-policy/${enforcementPolicyId}`;
|
|
59
|
+
const responseData = await apiRequest_1.apiRequest.call(this, 'GET', endpoint);
|
|
60
|
+
return responseFormatter_1.formatResponse.call(this, responseData);
|
|
61
|
+
}
|
|
62
|
+
catch (error) {
|
|
63
|
+
const errorObject = {};
|
|
64
|
+
if (error instanceof Error) {
|
|
65
|
+
errorObject.message = error.message;
|
|
66
|
+
if (error.stack) {
|
|
67
|
+
errorObject.stackTrace = error.stack;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
errorObject.message = 'Unknown error in getEnforcementPolicy';
|
|
72
|
+
}
|
|
73
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Get an enforcement policy by name
|
|
78
|
+
*/
|
|
79
|
+
async function getEnforcementPolicyByName() {
|
|
80
|
+
try {
|
|
81
|
+
const name = this.getNodeParameter('name', 0);
|
|
82
|
+
const endpoint = `/enforcement-policy/name/${name}`;
|
|
83
|
+
const responseData = await apiRequest_1.apiRequest.call(this, 'GET', endpoint);
|
|
84
|
+
return responseFormatter_1.formatResponse.call(this, responseData);
|
|
85
|
+
}
|
|
86
|
+
catch (error) {
|
|
87
|
+
const errorObject = {};
|
|
88
|
+
if (error instanceof Error) {
|
|
89
|
+
errorObject.message = error.message;
|
|
90
|
+
if (error.stack) {
|
|
91
|
+
errorObject.stackTrace = error.stack;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
errorObject.message = 'Unknown error in getEnforcementPolicyByName';
|
|
96
|
+
}
|
|
97
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Create a new enforcement policy
|
|
102
|
+
*/
|
|
103
|
+
async function createEnforcementPolicy() {
|
|
104
|
+
try {
|
|
105
|
+
const body = {};
|
|
106
|
+
// Add required fields
|
|
107
|
+
body.name = this.getNodeParameter('name', 0);
|
|
108
|
+
body.enforcement_type = this.getNodeParameter('enforcement_type', 0);
|
|
109
|
+
body.default_enforcement_profile = this.getNodeParameter('default_enforcement_profile', 0);
|
|
110
|
+
body.rule_eval_algo = this.getNodeParameter('rule_eval_algo', 0);
|
|
111
|
+
// Add optional fields
|
|
112
|
+
const description = this.getNodeParameter('description', 0, '');
|
|
113
|
+
if (description) {
|
|
114
|
+
body.description = description;
|
|
115
|
+
}
|
|
116
|
+
// Add rules (required)
|
|
117
|
+
const rulesJson = this.getNodeParameter('rules', 0);
|
|
118
|
+
try {
|
|
119
|
+
body.rules = JSON.parse(rulesJson);
|
|
120
|
+
}
|
|
121
|
+
catch (parseError) {
|
|
122
|
+
throw new Error(`Invalid JSON in rules: ${parseError.message}`);
|
|
123
|
+
}
|
|
124
|
+
const endpoint = '/enforcement-policy';
|
|
125
|
+
const responseData = await apiRequest_1.apiRequest.call(this, 'POST', endpoint, body);
|
|
126
|
+
return responseFormatter_1.formatResponse.call(this, responseData);
|
|
127
|
+
}
|
|
128
|
+
catch (error) {
|
|
129
|
+
const errorObject = {};
|
|
130
|
+
if (error instanceof Error) {
|
|
131
|
+
errorObject.message = error.message;
|
|
132
|
+
if (error.stack) {
|
|
133
|
+
errorObject.stackTrace = error.stack;
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
else {
|
|
137
|
+
errorObject.message = 'Unknown error in createEnforcementPolicy';
|
|
138
|
+
}
|
|
139
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Update an enforcement policy by ID
|
|
144
|
+
*/
|
|
145
|
+
async function updateEnforcementPolicy() {
|
|
146
|
+
try {
|
|
147
|
+
const enforcementPolicyId = this.getNodeParameter('enforcementPolicyId', 0);
|
|
148
|
+
const updateFields = this.getNodeParameter('updateFields', 0, {});
|
|
149
|
+
if (!Object.keys(updateFields).length) {
|
|
150
|
+
throw new Error('Please specify at least one field to update');
|
|
151
|
+
}
|
|
152
|
+
const body = {};
|
|
153
|
+
// Handle fields
|
|
154
|
+
Object.entries(updateFields).forEach(([key, value]) => {
|
|
155
|
+
if (key === 'rules' && typeof value === 'string') {
|
|
156
|
+
try {
|
|
157
|
+
body[key] = JSON.parse(value);
|
|
158
|
+
}
|
|
159
|
+
catch (parseError) {
|
|
160
|
+
throw new Error(`Invalid JSON in rules: ${parseError.message}`);
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
else {
|
|
164
|
+
body[key] = value;
|
|
165
|
+
}
|
|
166
|
+
});
|
|
167
|
+
const endpoint = `/enforcement-policy/${enforcementPolicyId}`;
|
|
168
|
+
const responseData = await apiRequest_1.apiRequest.call(this, 'PATCH', endpoint, body);
|
|
169
|
+
return responseFormatter_1.formatResponse.call(this, responseData);
|
|
170
|
+
}
|
|
171
|
+
catch (error) {
|
|
172
|
+
const errorObject = {};
|
|
173
|
+
if (error instanceof Error) {
|
|
174
|
+
errorObject.message = error.message;
|
|
175
|
+
if (error.stack) {
|
|
176
|
+
errorObject.stackTrace = error.stack;
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
else {
|
|
180
|
+
errorObject.message = 'Unknown error in updateEnforcementPolicy';
|
|
181
|
+
}
|
|
182
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Update an enforcement policy by name
|
|
187
|
+
*/
|
|
188
|
+
async function updateEnforcementPolicyByName() {
|
|
189
|
+
try {
|
|
190
|
+
const name = this.getNodeParameter('name', 0);
|
|
191
|
+
const updateFields = this.getNodeParameter('updateFields', 0, {});
|
|
192
|
+
if (!Object.keys(updateFields).length) {
|
|
193
|
+
throw new Error('Please specify at least one field to update');
|
|
194
|
+
}
|
|
195
|
+
const body = {};
|
|
196
|
+
// Handle fields
|
|
197
|
+
Object.entries(updateFields).forEach(([key, value]) => {
|
|
198
|
+
if (key === 'rules' && typeof value === 'string') {
|
|
199
|
+
try {
|
|
200
|
+
body[key] = JSON.parse(value);
|
|
201
|
+
}
|
|
202
|
+
catch (parseError) {
|
|
203
|
+
throw new Error(`Invalid JSON in rules: ${parseError.message}`);
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
else {
|
|
207
|
+
body[key] = value;
|
|
208
|
+
}
|
|
209
|
+
});
|
|
210
|
+
const endpoint = `/enforcement-policy/name/${name}`;
|
|
211
|
+
const responseData = await apiRequest_1.apiRequest.call(this, 'PATCH', endpoint, body);
|
|
212
|
+
return responseFormatter_1.formatResponse.call(this, responseData);
|
|
213
|
+
}
|
|
214
|
+
catch (error) {
|
|
215
|
+
const errorObject = {};
|
|
216
|
+
if (error instanceof Error) {
|
|
217
|
+
errorObject.message = error.message;
|
|
218
|
+
if (error.stack) {
|
|
219
|
+
errorObject.stackTrace = error.stack;
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
else {
|
|
223
|
+
errorObject.message = 'Unknown error in updateEnforcementPolicyByName';
|
|
224
|
+
}
|
|
225
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Replace an enforcement policy by ID
|
|
230
|
+
*/
|
|
231
|
+
async function replaceEnforcementPolicy() {
|
|
232
|
+
try {
|
|
233
|
+
const enforcementPolicyId = this.getNodeParameter('enforcementPolicyId', 0);
|
|
234
|
+
const body = {};
|
|
235
|
+
// Add required fields
|
|
236
|
+
body.name = this.getNodeParameter('name', 0);
|
|
237
|
+
body.enforcement_type = this.getNodeParameter('enforcement_type', 0);
|
|
238
|
+
body.default_enforcement_profile = this.getNodeParameter('default_enforcement_profile', 0);
|
|
239
|
+
body.rule_eval_algo = this.getNodeParameter('rule_eval_algo', 0);
|
|
240
|
+
// Add optional fields
|
|
241
|
+
const description = this.getNodeParameter('description', 0, '');
|
|
242
|
+
if (description) {
|
|
243
|
+
body.description = description;
|
|
244
|
+
}
|
|
245
|
+
// Add rules (required)
|
|
246
|
+
const rulesJson = this.getNodeParameter('rules', 0);
|
|
247
|
+
try {
|
|
248
|
+
body.rules = JSON.parse(rulesJson);
|
|
249
|
+
}
|
|
250
|
+
catch (parseError) {
|
|
251
|
+
throw new Error(`Invalid JSON in rules: ${parseError.message}`);
|
|
252
|
+
}
|
|
253
|
+
const endpoint = `/enforcement-policy/${enforcementPolicyId}`;
|
|
254
|
+
const responseData = await apiRequest_1.apiRequest.call(this, 'PUT', endpoint, body);
|
|
255
|
+
return responseFormatter_1.formatResponse.call(this, responseData);
|
|
256
|
+
}
|
|
257
|
+
catch (error) {
|
|
258
|
+
const errorObject = {};
|
|
259
|
+
if (error instanceof Error) {
|
|
260
|
+
errorObject.message = error.message;
|
|
261
|
+
if (error.stack) {
|
|
262
|
+
errorObject.stackTrace = error.stack;
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
else {
|
|
266
|
+
errorObject.message = 'Unknown error in replaceEnforcementPolicy';
|
|
267
|
+
}
|
|
268
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Replace an enforcement policy by name
|
|
273
|
+
*/
|
|
274
|
+
async function replaceEnforcementPolicyByName() {
|
|
275
|
+
try {
|
|
276
|
+
const name = this.getNodeParameter('name', 0);
|
|
277
|
+
const body = {};
|
|
278
|
+
// Add required fields
|
|
279
|
+
body.name = this.getNodeParameter('name', 0);
|
|
280
|
+
body.enforcement_type = this.getNodeParameter('enforcement_type', 0);
|
|
281
|
+
body.default_enforcement_profile = this.getNodeParameter('default_enforcement_profile', 0);
|
|
282
|
+
body.rule_eval_algo = this.getNodeParameter('rule_eval_algo', 0);
|
|
283
|
+
// Add optional fields
|
|
284
|
+
const description = this.getNodeParameter('description', 0, '');
|
|
285
|
+
if (description) {
|
|
286
|
+
body.description = description;
|
|
287
|
+
}
|
|
288
|
+
// Add rules (required)
|
|
289
|
+
const rulesJson = this.getNodeParameter('rules', 0);
|
|
290
|
+
try {
|
|
291
|
+
body.rules = JSON.parse(rulesJson);
|
|
292
|
+
}
|
|
293
|
+
catch (parseError) {
|
|
294
|
+
throw new Error(`Invalid JSON in rules: ${parseError.message}`);
|
|
295
|
+
}
|
|
296
|
+
const endpoint = `/enforcement-policy/name/${name}`;
|
|
297
|
+
const responseData = await apiRequest_1.apiRequest.call(this, 'PUT', endpoint, body);
|
|
298
|
+
return responseFormatter_1.formatResponse.call(this, responseData);
|
|
299
|
+
}
|
|
300
|
+
catch (error) {
|
|
301
|
+
const errorObject = {};
|
|
302
|
+
if (error instanceof Error) {
|
|
303
|
+
errorObject.message = error.message;
|
|
304
|
+
if (error.stack) {
|
|
305
|
+
errorObject.stackTrace = error.stack;
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
else {
|
|
309
|
+
errorObject.message = 'Unknown error in replaceEnforcementPolicyByName';
|
|
310
|
+
}
|
|
311
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
/**
|
|
315
|
+
* Delete an enforcement policy by ID
|
|
316
|
+
*/
|
|
317
|
+
async function deleteEnforcementPolicy() {
|
|
318
|
+
try {
|
|
319
|
+
const enforcementPolicyId = this.getNodeParameter('enforcementPolicyId', 0);
|
|
320
|
+
const endpoint = `/enforcement-policy/${enforcementPolicyId}`;
|
|
321
|
+
await apiRequest_1.apiRequest.call(this, 'DELETE', endpoint);
|
|
322
|
+
return [{ json: { success: true } }];
|
|
323
|
+
}
|
|
324
|
+
catch (error) {
|
|
325
|
+
const errorObject = {};
|
|
326
|
+
if (error instanceof Error) {
|
|
327
|
+
errorObject.message = error.message;
|
|
328
|
+
if (error.stack) {
|
|
329
|
+
errorObject.stackTrace = error.stack;
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
else {
|
|
333
|
+
errorObject.message = 'Unknown error in deleteEnforcementPolicy';
|
|
334
|
+
}
|
|
335
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
/**
|
|
339
|
+
* Delete an enforcement policy by name
|
|
340
|
+
*/
|
|
341
|
+
async function deleteEnforcementPolicyByName() {
|
|
342
|
+
try {
|
|
343
|
+
const name = this.getNodeParameter('name', 0);
|
|
344
|
+
const endpoint = `/enforcement-policy/name/${name}`;
|
|
345
|
+
await apiRequest_1.apiRequest.call(this, 'DELETE', endpoint);
|
|
346
|
+
return [{ json: { success: true } }];
|
|
347
|
+
}
|
|
348
|
+
catch (error) {
|
|
349
|
+
const errorObject = {};
|
|
350
|
+
if (error instanceof Error) {
|
|
351
|
+
errorObject.message = error.message;
|
|
352
|
+
if (error.stack) {
|
|
353
|
+
errorObject.stackTrace = error.stack;
|
|
354
|
+
}
|
|
355
|
+
}
|
|
356
|
+
else {
|
|
357
|
+
errorObject.message = 'Unknown error in deleteEnforcementPolicyByName';
|
|
358
|
+
}
|
|
359
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
360
|
+
}
|
|
361
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { IExecuteFunctions, INodeExecutionData } from 'n8n-workflow';
|
|
2
|
+
/**
|
|
3
|
+
* List all roles
|
|
4
|
+
*/
|
|
5
|
+
export declare function listRoles(this: IExecuteFunctions): Promise<INodeExecutionData[]>;
|
|
6
|
+
/**
|
|
7
|
+
* Get a role by ID
|
|
8
|
+
*/
|
|
9
|
+
export declare function getRole(this: IExecuteFunctions): Promise<INodeExecutionData[]>;
|
|
10
|
+
/**
|
|
11
|
+
* Get a role by name
|
|
12
|
+
*/
|
|
13
|
+
export declare function getRoleByName(this: IExecuteFunctions): Promise<INodeExecutionData[]>;
|
|
14
|
+
/**
|
|
15
|
+
* Create a new role
|
|
16
|
+
*/
|
|
17
|
+
export declare function createRole(this: IExecuteFunctions): Promise<INodeExecutionData[]>;
|
|
18
|
+
/**
|
|
19
|
+
* Update a role by ID
|
|
20
|
+
*/
|
|
21
|
+
export declare function updateRole(this: IExecuteFunctions): Promise<INodeExecutionData[]>;
|
|
22
|
+
/**
|
|
23
|
+
* Update a role by name
|
|
24
|
+
*/
|
|
25
|
+
export declare function updateRoleByName(this: IExecuteFunctions): Promise<INodeExecutionData[]>;
|
|
26
|
+
/**
|
|
27
|
+
* Replace a role by ID
|
|
28
|
+
*/
|
|
29
|
+
export declare function replaceRole(this: IExecuteFunctions): Promise<INodeExecutionData[]>;
|
|
30
|
+
/**
|
|
31
|
+
* Replace a role by name
|
|
32
|
+
*/
|
|
33
|
+
export declare function replaceRoleByName(this: IExecuteFunctions): Promise<INodeExecutionData[]>;
|
|
34
|
+
/**
|
|
35
|
+
* Delete a role by ID
|
|
36
|
+
*/
|
|
37
|
+
export declare function deleteRole(this: IExecuteFunctions): Promise<INodeExecutionData[]>;
|
|
38
|
+
/**
|
|
39
|
+
* Delete a role by name
|
|
40
|
+
*/
|
|
41
|
+
export declare function deleteRoleByName(this: IExecuteFunctions): Promise<INodeExecutionData[]>;
|
|
@@ -0,0 +1,298 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.listRoles = listRoles;
|
|
4
|
+
exports.getRole = getRole;
|
|
5
|
+
exports.getRoleByName = getRoleByName;
|
|
6
|
+
exports.createRole = createRole;
|
|
7
|
+
exports.updateRole = updateRole;
|
|
8
|
+
exports.updateRoleByName = updateRoleByName;
|
|
9
|
+
exports.replaceRole = replaceRole;
|
|
10
|
+
exports.replaceRoleByName = replaceRoleByName;
|
|
11
|
+
exports.deleteRole = deleteRole;
|
|
12
|
+
exports.deleteRoleByName = deleteRoleByName;
|
|
13
|
+
// methods/PolicyElements/Role.methods.ts
|
|
14
|
+
const n8n_workflow_1 = require("n8n-workflow");
|
|
15
|
+
const apiRequest_1 = require("../../helpers/apiRequest");
|
|
16
|
+
const responseFormatter_1 = require("../../helpers/responseFormatter");
|
|
17
|
+
/**
|
|
18
|
+
* List all roles
|
|
19
|
+
*/
|
|
20
|
+
async function listRoles() {
|
|
21
|
+
try {
|
|
22
|
+
const returnAll = this.getNodeParameter('returnAll', 0);
|
|
23
|
+
const filters = this.getNodeParameter('filters', 0, {});
|
|
24
|
+
const endpoint = '/role';
|
|
25
|
+
let responseData;
|
|
26
|
+
if (returnAll) {
|
|
27
|
+
responseData = await apiRequest_1.apiRequestAllItems.call(this, 'GET', endpoint, {}, filters);
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
const limit = this.getNodeParameter('limit', 0);
|
|
31
|
+
if (!filters.limit) {
|
|
32
|
+
filters.limit = limit;
|
|
33
|
+
}
|
|
34
|
+
responseData = await apiRequest_1.apiRequest.call(this, 'GET', endpoint, {}, filters);
|
|
35
|
+
}
|
|
36
|
+
return responseFormatter_1.formatResponse.call(this, responseData);
|
|
37
|
+
}
|
|
38
|
+
catch (error) {
|
|
39
|
+
const errorObject = {};
|
|
40
|
+
if (error instanceof Error) {
|
|
41
|
+
errorObject.message = error.message;
|
|
42
|
+
if (error.stack) {
|
|
43
|
+
errorObject.stackTrace = error.stack;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
errorObject.message = 'Unknown error in listRoles';
|
|
48
|
+
}
|
|
49
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Get a role by ID
|
|
54
|
+
*/
|
|
55
|
+
async function getRole() {
|
|
56
|
+
try {
|
|
57
|
+
const roleId = this.getNodeParameter('roleId', 0);
|
|
58
|
+
const endpoint = `/role/${roleId}`;
|
|
59
|
+
const responseData = await apiRequest_1.apiRequest.call(this, 'GET', endpoint);
|
|
60
|
+
return responseFormatter_1.formatResponse.call(this, responseData);
|
|
61
|
+
}
|
|
62
|
+
catch (error) {
|
|
63
|
+
const errorObject = {};
|
|
64
|
+
if (error instanceof Error) {
|
|
65
|
+
errorObject.message = error.message;
|
|
66
|
+
if (error.stack) {
|
|
67
|
+
errorObject.stackTrace = error.stack;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
errorObject.message = 'Unknown error in getRole';
|
|
72
|
+
}
|
|
73
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Get a role by name
|
|
78
|
+
*/
|
|
79
|
+
async function getRoleByName() {
|
|
80
|
+
try {
|
|
81
|
+
const name = this.getNodeParameter('name', 0);
|
|
82
|
+
const endpoint = `/role/name/${name}`;
|
|
83
|
+
const responseData = await apiRequest_1.apiRequest.call(this, 'GET', endpoint);
|
|
84
|
+
return responseFormatter_1.formatResponse.call(this, responseData);
|
|
85
|
+
}
|
|
86
|
+
catch (error) {
|
|
87
|
+
const errorObject = {};
|
|
88
|
+
if (error instanceof Error) {
|
|
89
|
+
errorObject.message = error.message;
|
|
90
|
+
if (error.stack) {
|
|
91
|
+
errorObject.stackTrace = error.stack;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
errorObject.message = 'Unknown error in getRoleByName';
|
|
96
|
+
}
|
|
97
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Create a new role
|
|
102
|
+
*/
|
|
103
|
+
async function createRole() {
|
|
104
|
+
try {
|
|
105
|
+
const body = {};
|
|
106
|
+
// Add required fields
|
|
107
|
+
body.name = this.getNodeParameter('name', 0);
|
|
108
|
+
// Add optional fields
|
|
109
|
+
const description = this.getNodeParameter('description', 0, '');
|
|
110
|
+
if (description) {
|
|
111
|
+
body.description = description;
|
|
112
|
+
}
|
|
113
|
+
const endpoint = '/role';
|
|
114
|
+
const responseData = await apiRequest_1.apiRequest.call(this, 'POST', endpoint, body);
|
|
115
|
+
return responseFormatter_1.formatResponse.call(this, responseData);
|
|
116
|
+
}
|
|
117
|
+
catch (error) {
|
|
118
|
+
const errorObject = {};
|
|
119
|
+
if (error instanceof Error) {
|
|
120
|
+
errorObject.message = error.message;
|
|
121
|
+
if (error.stack) {
|
|
122
|
+
errorObject.stackTrace = error.stack;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
else {
|
|
126
|
+
errorObject.message = 'Unknown error in createRole';
|
|
127
|
+
}
|
|
128
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Update a role by ID
|
|
133
|
+
*/
|
|
134
|
+
async function updateRole() {
|
|
135
|
+
try {
|
|
136
|
+
const roleId = this.getNodeParameter('roleId', 0);
|
|
137
|
+
const updateFields = this.getNodeParameter('updateFields', 0, {});
|
|
138
|
+
if (!Object.keys(updateFields).length) {
|
|
139
|
+
throw new Error('Please specify at least one field to update');
|
|
140
|
+
}
|
|
141
|
+
const endpoint = `/role/${roleId}`;
|
|
142
|
+
const responseData = await apiRequest_1.apiRequest.call(this, 'PATCH', endpoint, updateFields);
|
|
143
|
+
return responseFormatter_1.formatResponse.call(this, responseData);
|
|
144
|
+
}
|
|
145
|
+
catch (error) {
|
|
146
|
+
const errorObject = {};
|
|
147
|
+
if (error instanceof Error) {
|
|
148
|
+
errorObject.message = error.message;
|
|
149
|
+
if (error.stack) {
|
|
150
|
+
errorObject.stackTrace = error.stack;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
errorObject.message = 'Unknown error in updateRole';
|
|
155
|
+
}
|
|
156
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Update a role by name
|
|
161
|
+
*/
|
|
162
|
+
async function updateRoleByName() {
|
|
163
|
+
try {
|
|
164
|
+
const name = this.getNodeParameter('name', 0);
|
|
165
|
+
const updateFields = this.getNodeParameter('updateFields', 0, {});
|
|
166
|
+
if (!Object.keys(updateFields).length) {
|
|
167
|
+
throw new Error('Please specify at least one field to update');
|
|
168
|
+
}
|
|
169
|
+
const endpoint = `/role/name/${name}`;
|
|
170
|
+
const responseData = await apiRequest_1.apiRequest.call(this, 'PATCH', endpoint, updateFields);
|
|
171
|
+
return responseFormatter_1.formatResponse.call(this, responseData);
|
|
172
|
+
}
|
|
173
|
+
catch (error) {
|
|
174
|
+
const errorObject = {};
|
|
175
|
+
if (error instanceof Error) {
|
|
176
|
+
errorObject.message = error.message;
|
|
177
|
+
if (error.stack) {
|
|
178
|
+
errorObject.stackTrace = error.stack;
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
else {
|
|
182
|
+
errorObject.message = 'Unknown error in updateRoleByName';
|
|
183
|
+
}
|
|
184
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Replace a role by ID
|
|
189
|
+
*/
|
|
190
|
+
async function replaceRole() {
|
|
191
|
+
try {
|
|
192
|
+
const roleId = this.getNodeParameter('roleId', 0);
|
|
193
|
+
const body = {};
|
|
194
|
+
// Add required fields
|
|
195
|
+
body.name = this.getNodeParameter('name', 0);
|
|
196
|
+
// Add optional fields
|
|
197
|
+
const description = this.getNodeParameter('description', 0, '');
|
|
198
|
+
if (description) {
|
|
199
|
+
body.description = description;
|
|
200
|
+
}
|
|
201
|
+
const endpoint = `/role/${roleId}`;
|
|
202
|
+
const responseData = await apiRequest_1.apiRequest.call(this, 'PUT', endpoint, body);
|
|
203
|
+
return responseFormatter_1.formatResponse.call(this, responseData);
|
|
204
|
+
}
|
|
205
|
+
catch (error) {
|
|
206
|
+
const errorObject = {};
|
|
207
|
+
if (error instanceof Error) {
|
|
208
|
+
errorObject.message = error.message;
|
|
209
|
+
if (error.stack) {
|
|
210
|
+
errorObject.stackTrace = error.stack;
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
else {
|
|
214
|
+
errorObject.message = 'Unknown error in replaceRole';
|
|
215
|
+
}
|
|
216
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
/**
|
|
220
|
+
* Replace a role by name
|
|
221
|
+
*/
|
|
222
|
+
async function replaceRoleByName() {
|
|
223
|
+
try {
|
|
224
|
+
const name = this.getNodeParameter('name', 0);
|
|
225
|
+
const body = {};
|
|
226
|
+
// Add required fields
|
|
227
|
+
body.name = this.getNodeParameter('name', 0);
|
|
228
|
+
// Add optional fields
|
|
229
|
+
const description = this.getNodeParameter('description', 0, '');
|
|
230
|
+
if (description) {
|
|
231
|
+
body.description = description;
|
|
232
|
+
}
|
|
233
|
+
const endpoint = `/role/name/${name}`;
|
|
234
|
+
const responseData = await apiRequest_1.apiRequest.call(this, 'PUT', endpoint, body);
|
|
235
|
+
return responseFormatter_1.formatResponse.call(this, responseData);
|
|
236
|
+
}
|
|
237
|
+
catch (error) {
|
|
238
|
+
const errorObject = {};
|
|
239
|
+
if (error instanceof Error) {
|
|
240
|
+
errorObject.message = error.message;
|
|
241
|
+
if (error.stack) {
|
|
242
|
+
errorObject.stackTrace = error.stack;
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
else {
|
|
246
|
+
errorObject.message = 'Unknown error in replaceRoleByName';
|
|
247
|
+
}
|
|
248
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Delete a role by ID
|
|
253
|
+
*/
|
|
254
|
+
async function deleteRole() {
|
|
255
|
+
try {
|
|
256
|
+
const roleId = this.getNodeParameter('roleId', 0);
|
|
257
|
+
const endpoint = `/role/${roleId}`;
|
|
258
|
+
await apiRequest_1.apiRequest.call(this, 'DELETE', endpoint);
|
|
259
|
+
return [{ json: { success: true } }];
|
|
260
|
+
}
|
|
261
|
+
catch (error) {
|
|
262
|
+
const errorObject = {};
|
|
263
|
+
if (error instanceof Error) {
|
|
264
|
+
errorObject.message = error.message;
|
|
265
|
+
if (error.stack) {
|
|
266
|
+
errorObject.stackTrace = error.stack;
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
else {
|
|
270
|
+
errorObject.message = 'Unknown error in deleteRole';
|
|
271
|
+
}
|
|
272
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
/**
|
|
276
|
+
* Delete a role by name
|
|
277
|
+
*/
|
|
278
|
+
async function deleteRoleByName() {
|
|
279
|
+
try {
|
|
280
|
+
const name = this.getNodeParameter('name', 0);
|
|
281
|
+
const endpoint = `/role/name/${name}`;
|
|
282
|
+
await apiRequest_1.apiRequest.call(this, 'DELETE', endpoint);
|
|
283
|
+
return [{ json: { success: true } }];
|
|
284
|
+
}
|
|
285
|
+
catch (error) {
|
|
286
|
+
const errorObject = {};
|
|
287
|
+
if (error instanceof Error) {
|
|
288
|
+
errorObject.message = error.message;
|
|
289
|
+
if (error.stack) {
|
|
290
|
+
errorObject.stackTrace = error.stack;
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
else {
|
|
294
|
+
errorObject.message = 'Unknown error in deleteRoleByName';
|
|
295
|
+
}
|
|
296
|
+
throw new n8n_workflow_1.NodeApiError(this.getNode(), errorObject);
|
|
297
|
+
}
|
|
298
|
+
}
|