@cloud-copilot/iam-lens 0.1.108 → 0.1.109

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/dist/cjs/index.d.ts +2 -0
  2. package/dist/cjs/index.d.ts.map +1 -1
  3. package/dist/cjs/index.js +3 -1
  4. package/dist/cjs/index.js.map +1 -1
  5. package/dist/cjs/utils/bitset.js +3 -3
  6. package/dist/cjs/utils/bitset.js.map +1 -1
  7. package/dist/cjs/whoCan/WhoCanMainThreadWorker.d.ts +65 -3
  8. package/dist/cjs/whoCan/WhoCanMainThreadWorker.d.ts.map +1 -1
  9. package/dist/cjs/whoCan/WhoCanMainThreadWorker.js +52 -31
  10. package/dist/cjs/whoCan/WhoCanMainThreadWorker.js.map +1 -1
  11. package/dist/cjs/whoCan/WhoCanProcessor.d.ts +371 -0
  12. package/dist/cjs/whoCan/WhoCanProcessor.d.ts.map +1 -0
  13. package/dist/cjs/whoCan/WhoCanProcessor.js +980 -0
  14. package/dist/cjs/whoCan/WhoCanProcessor.js.map +1 -0
  15. package/dist/cjs/whoCan/WhoCanWorker.d.ts +2 -0
  16. package/dist/cjs/whoCan/WhoCanWorker.d.ts.map +1 -1
  17. package/dist/cjs/whoCan/WhoCanWorker.js.map +1 -1
  18. package/dist/cjs/whoCan/WhoCanWorkerThreadWorker.js +99 -80
  19. package/dist/cjs/whoCan/WhoCanWorkerThreadWorker.js.map +1 -1
  20. package/dist/cjs/whoCan/principalArnFilter.d.ts +84 -0
  21. package/dist/cjs/whoCan/principalArnFilter.d.ts.map +1 -0
  22. package/dist/cjs/whoCan/principalArnFilter.js +256 -0
  23. package/dist/cjs/whoCan/principalArnFilter.js.map +1 -0
  24. package/dist/cjs/whoCan/untrustingActions.d.ts +7 -0
  25. package/dist/cjs/whoCan/untrustingActions.d.ts.map +1 -0
  26. package/dist/cjs/whoCan/untrustingActions.js +30 -0
  27. package/dist/cjs/whoCan/untrustingActions.js.map +1 -0
  28. package/dist/cjs/whoCan/whoCan.d.ts +35 -2
  29. package/dist/cjs/whoCan/whoCan.d.ts.map +1 -1
  30. package/dist/cjs/whoCan/whoCan.js +277 -233
  31. package/dist/cjs/whoCan/whoCan.js.map +1 -1
  32. package/dist/esm/index.d.ts +2 -0
  33. package/dist/esm/index.d.ts.map +1 -1
  34. package/dist/esm/index.js +2 -0
  35. package/dist/esm/index.js.map +1 -1
  36. package/dist/esm/utils/bitset.js +3 -3
  37. package/dist/esm/utils/bitset.js.map +1 -1
  38. package/dist/esm/whoCan/WhoCanMainThreadWorker.d.ts +65 -3
  39. package/dist/esm/whoCan/WhoCanMainThreadWorker.d.ts.map +1 -1
  40. package/dist/esm/whoCan/WhoCanMainThreadWorker.js +53 -34
  41. package/dist/esm/whoCan/WhoCanMainThreadWorker.js.map +1 -1
  42. package/dist/esm/whoCan/WhoCanProcessor.d.ts +371 -0
  43. package/dist/esm/whoCan/WhoCanProcessor.d.ts.map +1 -0
  44. package/dist/esm/whoCan/WhoCanProcessor.js +970 -0
  45. package/dist/esm/whoCan/WhoCanProcessor.js.map +1 -0
  46. package/dist/esm/whoCan/WhoCanWorker.d.ts +2 -0
  47. package/dist/esm/whoCan/WhoCanWorker.d.ts.map +1 -1
  48. package/dist/esm/whoCan/WhoCanWorker.js.map +1 -1
  49. package/dist/esm/whoCan/WhoCanWorkerThreadWorker.js +102 -81
  50. package/dist/esm/whoCan/WhoCanWorkerThreadWorker.js.map +1 -1
  51. package/dist/esm/whoCan/principalArnFilter.d.ts +84 -0
  52. package/dist/esm/whoCan/principalArnFilter.d.ts.map +1 -0
  53. package/dist/esm/whoCan/principalArnFilter.js +251 -0
  54. package/dist/esm/whoCan/principalArnFilter.js.map +1 -0
  55. package/dist/esm/whoCan/untrustingActions.d.ts +7 -0
  56. package/dist/esm/whoCan/untrustingActions.d.ts.map +1 -0
  57. package/dist/esm/whoCan/untrustingActions.js +27 -0
  58. package/dist/esm/whoCan/untrustingActions.js.map +1 -0
  59. package/dist/esm/whoCan/whoCan.d.ts +35 -2
  60. package/dist/esm/whoCan/whoCan.d.ts.map +1 -1
  61. package/dist/esm/whoCan/whoCan.js +278 -237
  62. package/dist/esm/whoCan/whoCan.js.map +1 -1
  63. package/package.json +3 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WhoCanProcessor.js","sourceRoot":"","sources":["../../../src/whoCan/WhoCanProcessor.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,8 @@ export interface WhoCanWorkItem {
8
8
  resourceAccount: string | undefined;
9
9
  action: string;
10
10
  principal: string;
11
+ strictContextKeys: string[] | undefined;
12
+ collectDenyDetails: boolean;
11
13
  }
12
14
  /**
13
15
  * Execution result when the principal is allowed access.
@@ -1 +1 @@
1
- {"version":3,"file":"WhoCanWorker.d.ts","sourceRoot":"","sources":["../../../src/whoCan/WhoCanWorker.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,gBAAgB,EAErB,KAAK,eAAe,EAErB,MAAM,6BAA6B,CAAA;AACpC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAEvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,KAAK,EAAE,aAAa,EAAgC,MAAM,aAAa,CAAA;AAE9E,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,eAAe,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,IAAI,EAAE,SAAS,CAAA;IACf,QAAQ,EAAE,cAAc,CAAA;IACxB,OAAO,EAAE,aAAa,CAAA;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,QAAQ,CAAA;IACd,QAAQ,EAAE,cAAc,CAAA;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,iCAAiC;IAChD,IAAI,EAAE,eAAe,CAAA;IACrB,QAAQ,EAAE,cAAc,CAAA;IACxB,QAAQ,EAAE,eAAe,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;OAEG;IACH,OAAO,EAAE,MAAM,CAAA;IACf;;OAEG;IACH,YAAY,EAAE,MAAM,CAAA;IACpB;;OAEG;IACH,QAAQ,EAAE,eAAe,CAAA;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,mCAAmC;IAClD,IAAI,EAAE,iBAAiB,CAAA;IACvB,QAAQ,EAAE,cAAc,CAAA;IACxB,aAAa,EAAE,gBAAgB,CAAA;IAC/B,cAAc,EAAE,yBAAyB,EAAE,CAAA;CAC5C;AAED;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAC7B,4BAA4B,GAC5B,2BAA2B,GAC3B,iCAAiC,GACjC,mCAAmC,CAAA;AAEvC;;GAEG;AACH,MAAM,MAAM,sCAAsC,GAC9C,iCAAiC,GACjC,mCAAmC,CAAA;AAEvC;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAA;AAErE,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,cAAc,EACxB,aAAa,EAAE,gBAAgB,EAC/B,aAAa,EAAE,aAAa,GAC3B,GAAG,CAAC,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAOrD;AAED,MAAM,WAAW,aAAa;IAC5B,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAA;CAC7B;AAED,wBAAsB,aAAa,CACjC,QAAQ,EAAE,cAAc,EACxB,aAAa,EAAE,gBAAgB,EAC/B,aAAa,EAAE,aAAa,GAC3B,OAAO,CAAC,qBAAqB,CAAC,CAyEhC"}
1
+ {"version":3,"file":"WhoCanWorker.d.ts","sourceRoot":"","sources":["../../../src/whoCan/WhoCanWorker.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,gBAAgB,EAErB,KAAK,eAAe,EAErB,MAAM,6BAA6B,CAAA;AACpC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAEvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,KAAK,EAAE,aAAa,EAAgC,MAAM,aAAa,CAAA;AAE9E,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,eAAe,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,iBAAiB,EAAE,MAAM,EAAE,GAAG,SAAS,CAAA;IACvC,kBAAkB,EAAE,OAAO,CAAA;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,IAAI,EAAE,SAAS,CAAA;IACf,QAAQ,EAAE,cAAc,CAAA;IACxB,OAAO,EAAE,aAAa,CAAA;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,QAAQ,CAAA;IACd,QAAQ,EAAE,cAAc,CAAA;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,iCAAiC;IAChD,IAAI,EAAE,eAAe,CAAA;IACrB,QAAQ,EAAE,cAAc,CAAA;IACxB,QAAQ,EAAE,eAAe,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;OAEG;IACH,OAAO,EAAE,MAAM,CAAA;IACf;;OAEG;IACH,YAAY,EAAE,MAAM,CAAA;IACpB;;OAEG;IACH,QAAQ,EAAE,eAAe,CAAA;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,mCAAmC;IAClD,IAAI,EAAE,iBAAiB,CAAA;IACvB,QAAQ,EAAE,cAAc,CAAA;IACxB,aAAa,EAAE,gBAAgB,CAAA;IAC/B,cAAc,EAAE,yBAAyB,EAAE,CAAA;CAC5C;AAED;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAC7B,4BAA4B,GAC5B,2BAA2B,GAC3B,iCAAiC,GACjC,mCAAmC,CAAA;AAEvC;;GAEG;AACH,MAAM,MAAM,sCAAsC,GAC9C,iCAAiC,GACjC,mCAAmC,CAAA;AAEvC;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAA;AAErE,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,cAAc,EACxB,aAAa,EAAE,gBAAgB,EAC/B,aAAa,EAAE,aAAa,GAC3B,GAAG,CAAC,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAOrD;AAED,MAAM,WAAW,aAAa;IAC5B,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAA;CAC7B;AAED,wBAAsB,aAAa,CACjC,QAAQ,EAAE,cAAc,EACxB,aAAa,EAAE,gBAAgB,EAC/B,aAAa,EAAE,aAAa,GAC3B,OAAO,CAAC,qBAAqB,CAAC,CAyEhC"}
@@ -1 +1 @@
1
- {"version":3,"file":"WhoCanWorker.js","sourceRoot":"","sources":["../../../src/whoCan/WhoCanWorker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WhoCanWorker.js","sourceRoot":"","sources":["../../../src/whoCan/WhoCanWorker.ts"],"names":[],"mappings":"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"}
@@ -10,13 +10,110 @@ if (!worker_threads_1.parentPort) {
10
10
  throw new Error('Must be run as a worker thread');
11
11
  }
12
12
  // Get config from the main thread
13
- const { concurrency, collectConfigs, partition, s3AbacOverride, collectDenyDetails, collectGrantDetails, strictContextKeys, clientFactoryPlugin } = worker_threads_1.workerData;
13
+ const { concurrency, collectConfigs, partition, s3AbacOverride, collectGrantDetails, clientFactoryPlugin } = worker_threads_1.workerData;
14
+ // Pending task requests from workers, keyed by workerId
14
15
  const taskPromises = {};
15
- // Pending deny details checks - keyed by a unique id for each check
16
+ // Pending deny details checks, keyed by a unique id for each check
16
17
  let denyDetailsCheckId = 0;
17
18
  const pendingDenyDetailsChecks = {};
19
+ const collectClientPromise = (0, collect_js_1.getCollectClient)(collectConfigs, partition, {
20
+ cacheProvider: new SharedArrayBufferWorkerCache_js_1.SharedArrayBufferWorkerCache(worker_threads_1.parentPort),
21
+ clientFactoryPlugin
22
+ });
23
+ /**
24
+ * Creates the lifetime-scoped PullBasedJobRunner. The runner starts
25
+ * immediately and processes work items until finishAllWork() is called.
26
+ *
27
+ * @returns the PullBasedJobRunner instance.
28
+ */
29
+ function createJobRunner() {
30
+ return new JobRunner_js_1.PullBasedJobRunner(concurrency, async (workerId) => {
31
+ return new Promise((resolve) => {
32
+ worker_threads_1.parentPort.postMessage({ type: 'requestTask', workerId });
33
+ taskPromises[workerId] = resolve;
34
+ });
35
+ }, (taggedTask) => {
36
+ const { requestId, ...workItem } = taggedTask;
37
+ return {
38
+ properties: { requestId, collectDenyDetails: workItem.collectDenyDetails },
39
+ execute: async () => {
40
+ const collectClient = await collectClientPromise;
41
+ return (0, WhoCanWorker_js_1.executeWhoCan)(workItem, collectClient, {
42
+ s3AbacOverride,
43
+ collectDenyDetails: workItem.collectDenyDetails,
44
+ collectGrantDetails,
45
+ strictContextKeys: workItem.strictContextKeys
46
+ });
47
+ }
48
+ };
49
+ }, async (result) => {
50
+ const { requestId, collectDenyDetails } = result.properties;
51
+ if (result.status === 'fulfilled') {
52
+ const executionResult = result.value;
53
+ if (executionResult.type === 'allowed') {
54
+ worker_threads_1.parentPort.postMessage({
55
+ type: 'result',
56
+ requestId,
57
+ result: {
58
+ status: 'fulfilled',
59
+ value: executionResult.allowed,
60
+ properties: {}
61
+ }
62
+ });
63
+ }
64
+ else {
65
+ // Check if deny details check will follow
66
+ const hasDetails = executionResult.type === 'denied_single' || executionResult.type === 'denied_wildcard';
67
+ const denyDetailsCheckWillFollow = collectDenyDetails && hasDetails;
68
+ // Post count-only result for denied simulations
69
+ worker_threads_1.parentPort.postMessage({
70
+ type: 'result',
71
+ requestId,
72
+ denyDetailsCheckWillFollow,
73
+ result: {
74
+ status: 'fulfilled',
75
+ value: undefined,
76
+ properties: {}
77
+ }
78
+ });
79
+ if (denyDetailsCheckWillFollow) {
80
+ const lightAnalysis = (0, requestAnalysis_js_1.toLightRequestAnalysis)(executionResult);
81
+ const checkId = denyDetailsCheckId++;
82
+ worker_threads_1.parentPort.postMessage({
83
+ type: 'checkDenyDetails',
84
+ requestId,
85
+ checkId,
86
+ workItem: executionResult.workItem,
87
+ lightAnalysis
88
+ });
89
+ const shouldInclude = await new Promise((resolve) => {
90
+ pendingDenyDetailsChecks[checkId] = resolve;
91
+ });
92
+ if (shouldInclude) {
93
+ worker_threads_1.parentPort.postMessage({
94
+ type: 'denyDetailsResult',
95
+ requestId,
96
+ denyDetail: (0, requestAnalysis_js_1.convertToDenialDetails)(executionResult)
97
+ });
98
+ }
99
+ }
100
+ }
101
+ }
102
+ else {
103
+ // Error case — pass through with requestId
104
+ worker_threads_1.parentPort.postMessage({
105
+ type: 'result',
106
+ requestId,
107
+ result: result
108
+ });
109
+ }
110
+ });
111
+ }
112
+ // Create the lifetime-scoped runner immediately
113
+ const jobRunner = createJobRunner();
18
114
  worker_threads_1.parentPort.on('message', (msg) => {
19
115
  if (msg.type === 'task' && msg.workerId in taskPromises) {
116
+ // Task delivered from main thread (may be undefined if nothing is ready)
20
117
  taskPromises[msg.workerId](msg.task);
21
118
  delete taskPromises[msg.workerId];
22
119
  }
@@ -29,7 +126,6 @@ worker_threads_1.parentPort.on('message', (msg) => {
29
126
  });
30
127
  }
31
128
  else if (msg.type === 'denyDetailsCheckResult') {
32
- // Handle response from main thread about whether to include deny details
33
129
  const checkId = msg.checkId;
34
130
  const resolveFn = pendingDenyDetailsChecks[checkId];
35
131
  if (resolveFn) {
@@ -38,81 +134,4 @@ worker_threads_1.parentPort.on('message', (msg) => {
38
134
  }
39
135
  }
40
136
  });
41
- const collectClientPromise = (0, collect_js_1.getCollectClient)(collectConfigs, partition, {
42
- cacheProvider: new SharedArrayBufferWorkerCache_js_1.SharedArrayBufferWorkerCache(worker_threads_1.parentPort),
43
- clientFactoryPlugin
44
- });
45
- const jobRunner = new JobRunner_js_1.PullBasedJobRunner(concurrency, async (workerId) => {
46
- return new Promise((resolve) => {
47
- worker_threads_1.parentPort.postMessage({ type: 'requestTask', workerId });
48
- taskPromises[workerId] = resolve;
49
- });
50
- }, (taskDetails) => {
51
- return {
52
- properties: {},
53
- execute: async (context) => {
54
- const collectClient = await collectClientPromise;
55
- return (0, WhoCanWorker_js_1.executeWhoCan)(taskDetails, collectClient, {
56
- s3AbacOverride,
57
- collectDenyDetails,
58
- collectGrantDetails,
59
- strictContextKeys
60
- });
61
- }
62
- };
63
- }, async (result) => {
64
- if (result.status === 'fulfilled') {
65
- const executionResult = result.value;
66
- if (executionResult.type === 'allowed') {
67
- // Allowed - send result back to main thread
68
- worker_threads_1.parentPort.postMessage({
69
- type: 'result',
70
- result: {
71
- status: 'fulfilled',
72
- value: executionResult.allowed,
73
- properties: result.properties
74
- }
75
- });
76
- }
77
- else {
78
- // Post this so that we can count the completed simulation in the main thread.
79
- worker_threads_1.parentPort.postMessage({
80
- type: 'result',
81
- result: {
82
- status: 'fulfilled',
83
- value: undefined,
84
- properties: result.properties
85
- }
86
- });
87
- // Check if we should include deny details
88
- const hasDetails = executionResult.type === 'denied_single' || executionResult.type === 'denied_wildcard';
89
- if (collectDenyDetails && hasDetails) {
90
- const lightAnalysis = (0, requestAnalysis_js_1.toLightRequestAnalysis)(executionResult);
91
- const checkId = denyDetailsCheckId++;
92
- // Send check request to main thread
93
- worker_threads_1.parentPort.postMessage({
94
- type: 'checkDenyDetails',
95
- checkId,
96
- workItem: executionResult.workItem,
97
- lightAnalysis
98
- });
99
- // Wait for response from main thread
100
- const shouldInclude = await new Promise((resolve) => {
101
- pendingDenyDetailsChecks[checkId] = resolve;
102
- });
103
- if (shouldInclude) {
104
- // Get full denial reasons and send to main thread
105
- worker_threads_1.parentPort.postMessage({
106
- type: 'denyDetailsResult',
107
- denyDetail: (0, requestAnalysis_js_1.convertToDenialDetails)(executionResult)
108
- });
109
- }
110
- }
111
- }
112
- }
113
- else {
114
- // Error case - pass through
115
- worker_threads_1.parentPort.postMessage({ type: 'result', result });
116
- }
117
- });
118
137
  //# sourceMappingURL=WhoCanWorkerThreadWorker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WhoCanWorkerThreadWorker.js","sourceRoot":"","sources":["../../../src/whoCan/WhoCanWorkerThreadWorker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WhoCanWorkerThreadWorker.js","sourceRoot":"","sources":["../../../src/whoCan/WhoCanWorkerThreadWorker.ts"],"names":[],"mappings":";;AAIA,mDAAuD;AACvD,sDAAkF;AAElF,0DAA4D;AAC5D,gGAAyF;AACzF,6DAAqF;AACrF,uDAAkG;AAElG,IAAI,CAAC,2BAAU,EAAE,CAAC;IAChB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;AACnD,CAAC;AAED,kCAAkC;AAClC,MAAM,EACJ,WAAW,EACX,cAAc,EACd,SAAS,EACT,cAAc,EACd,mBAAmB,EACnB,mBAAmB,EACpB,GAAG,2BAOH,CAAA;AAuBD,wDAAwD;AACxD,MAAM,YAAY,GAAuC,EAAE,CAAA;AAE3D,mEAAmE;AACnE,IAAI,kBAAkB,GAAG,CAAC,CAAA;AAC1B,MAAM,wBAAwB,GAAqD,EAAE,CAAA;AAErF,MAAM,oBAAoB,GAAG,IAAA,6BAAgB,EAAC,cAAc,EAAE,SAAS,EAAE;IACvE,aAAa,EAAE,IAAI,8DAA4B,CAAC,2BAAU,CAAC;IAC3D,mBAAmB;CACpB,CAAC,CAAA;AAEF;;;;;GAKG;AACH,SAAS,eAAe;IACtB,OAAO,IAAI,iCAAkB,CAC3B,WAAW,EACX,KAAK,EAAE,QAAQ,EAAE,EAAE;QACjB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,2BAAW,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC,CAAA;YAC1D,YAAY,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAA;QAClC,CAAC,CAAC,CAAA;IACJ,CAAC,EACD,CAAC,UAAU,EAAE,EAAE;QACb,MAAM,EAAE,SAAS,EAAE,GAAG,QAAQ,EAAE,GAAG,UAAU,CAAA;QAC7C,OAAO;YACL,UAAU,EAAE,EAAE,SAAS,EAAE,kBAAkB,EAAE,QAAQ,CAAC,kBAAkB,EAAE;YAC1E,OAAO,EAAE,KAAK,IAAI,EAAE;gBAClB,MAAM,aAAa,GAAG,MAAM,oBAAoB,CAAA;gBAChD,OAAO,IAAA,+BAAa,EAAC,QAAQ,EAAE,aAAa,EAAE;oBAC5C,cAAc;oBACd,kBAAkB,EAAE,QAAQ,CAAC,kBAAkB;oBAC/C,mBAAmB;oBACnB,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;iBAC9C,CAAC,CAAA;YACJ,CAAC;SACF,CAAA;IACH,CAAC,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,GAAG,MAAM,CAAC,UAAU,CAAA;QAE3D,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAClC,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAA;YAEpC,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvC,2BAAW,CAAC,WAAW,CAAC;oBACtB,IAAI,EAAE,QAAQ;oBACd,SAAS;oBACT,MAAM,EAAE;wBACN,MAAM,EAAE,WAAW;wBACnB,KAAK,EAAE,eAAe,CAAC,OAAO;wBAC9B,UAAU,EAAE,EAAE;qBACf;iBACF,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,0CAA0C;gBAC1C,MAAM,UAAU,GACd,eAAe,CAAC,IAAI,KAAK,eAAe,IAAI,eAAe,CAAC,IAAI,KAAK,iBAAiB,CAAA;gBACxF,MAAM,0BAA0B,GAAG,kBAAkB,IAAI,UAAU,CAAA;gBAEnE,gDAAgD;gBAChD,2BAAW,CAAC,WAAW,CAAC;oBACtB,IAAI,EAAE,QAAQ;oBACd,SAAS;oBACT,0BAA0B;oBAC1B,MAAM,EAAE;wBACN,MAAM,EAAE,WAAW;wBACnB,KAAK,EAAE,SAAS;wBAChB,UAAU,EAAE,EAAE;qBACf;iBACF,CAAC,CAAA;gBAEF,IAAI,0BAA0B,EAAE,CAAC;oBAC/B,MAAM,aAAa,GAAG,IAAA,2CAAsB,EAAC,eAAe,CAAC,CAAA;oBAC7D,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAA;oBAEpC,2BAAW,CAAC,WAAW,CAAC;wBACtB,IAAI,EAAE,kBAAkB;wBACxB,SAAS;wBACT,OAAO;wBACP,QAAQ,EAAE,eAAe,CAAC,QAAQ;wBAClC,aAAa;qBACd,CAAC,CAAA;oBAEF,MAAM,aAAa,GAAG,MAAM,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,EAAE;wBAC3D,wBAAwB,CAAC,OAAO,CAAC,GAAG,OAAO,CAAA;oBAC7C,CAAC,CAAC,CAAA;oBAEF,IAAI,aAAa,EAAE,CAAC;wBAClB,2BAAW,CAAC,WAAW,CAAC;4BACtB,IAAI,EAAE,mBAAmB;4BACzB,SAAS;4BACT,UAAU,EAAE,IAAA,2CAAsB,EAAC,eAAe,CAAC;yBACpD,CAAC,CAAA;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,2CAA2C;YAC3C,2BAAW,CAAC,WAAW,CAAC;gBACtB,IAAI,EAAE,QAAQ;gBACd,SAAS;gBACT,MAAM,EAAE,MAAM;aACf,CAAC,CAAA;QACJ,CAAC;IACH,CAAC,CACF,CAAA;AACH,CAAC;AAED,gDAAgD;AAChD,MAAM,SAAS,GAAG,eAAe,EAAE,CAAA;AAEnC,2BAAU,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;IAC/B,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,QAAQ,IAAI,YAAY,EAAE,CAAC;QACxD,yEAAyE;QACzE,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACpC,OAAO,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACnC,CAAC;SAAM,IAAI,GAAG,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;QACxC,SAAS,CAAC,mBAAmB,EAAE,CAAA;IACjC,CAAC;SAAM,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QACrC,SAAS,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YAClC,2BAAW,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAA;QAC/C,CAAC,CAAC,CAAA;IACJ,CAAC;SAAM,IAAI,GAAG,CAAC,IAAI,KAAK,wBAAwB,EAAE,CAAC;QACjD,MAAM,OAAO,GAAG,GAAG,CAAC,OAAiB,CAAA;QACrC,MAAM,SAAS,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAA;QACnD,IAAI,SAAS,EAAE,CAAC;YACd,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;YAC5B,OAAO,wBAAwB,CAAC,OAAO,CAAC,CAAA;QAC1C,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAA"}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * An action-scoped set of principal ARN patterns extracted from a Deny statement.
3
+ * The patterns only apply when the action being simulated matches one of the
4
+ * entry's action patterns.
5
+ */
6
+ export interface DenyFilterEntry {
7
+ /** Action patterns from the deny statement (e.g., 'secretsmanager:GetSecretValue', 's3:*'). */
8
+ actionPatterns: string[];
9
+ /** Principal ARN patterns extracted from the condition. */
10
+ principalPatterns: RegExp[];
11
+ }
12
+ /**
13
+ * A pre-simulation filter that uses aws:PrincipalArn condition patterns
14
+ * from a resource policy to skip principals that cannot possibly be allowed.
15
+ */
16
+ export interface PrincipalArnFilter {
17
+ /**
18
+ * Allow patterns extracted from resource policy Allow statements.
19
+ * If non-empty, a principal must match at least one pattern to be
20
+ * worth simulating.
21
+ */
22
+ allowPatterns: RegExp[];
23
+ /**
24
+ * From Deny statements with negative operators (StringNotLike, etc.).
25
+ * For each entry, if the simulation action matches one of the entry's
26
+ * action patterns, the principal must match at least one of the entry's
27
+ * principal patterns to be worth simulating.
28
+ */
29
+ denyDerivedAllowEntries: DenyFilterEntry[];
30
+ /**
31
+ * From Deny statements with positive operators (StringLike, etc.).
32
+ * For each entry, if the simulation action matches one of the entry's
33
+ * action patterns AND the principal matches one of the entry's principal
34
+ * patterns, the simulation can be skipped (the principal is explicitly denied).
35
+ */
36
+ denyEntries: DenyFilterEntry[];
37
+ /**
38
+ * Account IDs that are explicitly named as account principals in the
39
+ * resource policy's Allow statements. Principals in these accounts
40
+ * must bypass the filter because the account-level principal grant
41
+ * is independent of any PrincipalArn conditions on wildcard statements.
42
+ */
43
+ exemptAccounts: Set<string>;
44
+ }
45
+ /**
46
+ * Converts an IAM wildcard pattern to a case-sensitive anchored RegExp.
47
+ * Handles `*` (any characters) and `?` (single character) wildcards.
48
+ * Does not handle replacement variables — callers must ensure patterns
49
+ * with variables are excluded before calling this.
50
+ *
51
+ * @param pattern the IAM pattern string (e.g. `arn:aws:iam::*:role/ec2/*`)
52
+ * @returns an anchored case-sensitive RegExp
53
+ */
54
+ export declare function iamPatternToRegex(pattern: string): RegExp;
55
+ /**
56
+ * Builds a PrincipalArnFilter from a resource policy by extracting
57
+ * aws:PrincipalArn patterns from Allow statements with wildcard principals.
58
+ *
59
+ * The filter is only constructed if **every** wildcard-Allow statement has
60
+ * a usable aws:PrincipalArn condition. If any wildcard-Allow statement lacks
61
+ * one, the filter cannot safely exclude principals and undefined is returned.
62
+ *
63
+ * @param resourcePolicy the raw resource policy document, or undefined/null if none
64
+ * @returns a PrincipalArnFilter if filtering is possible, undefined otherwise
65
+ */
66
+ export declare function buildPrincipalArnFilter(resourcePolicy: any): PrincipalArnFilter | undefined;
67
+ /**
68
+ * Tests whether a principal ARN passes the PrincipalArnFilter for a given action.
69
+ *
70
+ * Principals in the resource account or an exempt account bypass the positive
71
+ * allow-side filtering (allow patterns and deny-derived allow entries) because
72
+ * they may be granted access through account-level principal grants independent
73
+ * of any PrincipalArn conditions. However, they are still subject to deny-side
74
+ * filtering (deny entries) because an explicit deny in a resource policy applies
75
+ * regardless of the principal's account.
76
+ *
77
+ * @param principal the principal ARN to test
78
+ * @param action the action being simulated
79
+ * @param resourceAccount the account that owns the resource being checked
80
+ * @param filter the filter to apply
81
+ * @returns true if the principal should be simulated, false if it can be skipped
82
+ */
83
+ export declare function principalMatchesFilter(principal: string, action: string, resourceAccount: string, filter: PrincipalArnFilter): boolean;
84
+ //# sourceMappingURL=principalArnFilter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"principalArnFilter.d.ts","sourceRoot":"","sources":["../../../src/whoCan/principalArnFilter.ts"],"names":[],"mappings":"AAkCA;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,+FAA+F;IAC/F,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,2DAA2D;IAC3D,iBAAiB,EAAE,MAAM,EAAE,CAAA;CAC5B;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,aAAa,EAAE,MAAM,EAAE,CAAA;IAEvB;;;;;OAKG;IACH,uBAAuB,EAAE,eAAe,EAAE,CAAA;IAE1C;;;;;OAKG;IACH,WAAW,EAAE,eAAe,EAAE,CAAA;IAE9B;;;;;OAKG;IACH,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAC5B;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAIzD;AAYD;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CAAC,cAAc,EAAE,GAAG,GAAG,kBAAkB,GAAG,SAAS,CA2I3F;AAcD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CA+BT"}