@cloud-copilot/iam-collect 0.1.69 → 0.1.70

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/README.md CHANGED
@@ -115,6 +115,7 @@ This will show you your data that was downloaded. See the [storage docs](docs/St
115
115
  | iam | Instance Profiles | arn, name, roles, id, path, tags |
116
116
  | apigateway | Rest APIs | id, name, policy, tags |
117
117
  | backup | Backup Vaults | name, key arn, tags, policy |
118
+ | dynamodb | Streams | name, arn, region, resource policy |
118
119
  | dynamodb | Tables | name, arn, region, tags, resource policy |
119
120
  | ecr | Repositories | name, arn, region, tags, resource policy, key id |
120
121
  | ecr | Registries | policy |
@@ -0,0 +1,3 @@
1
+ import { Sync } from '../sync.js';
2
+ export declare const DynamoDbStreamsSync: Sync;
3
+ //# sourceMappingURL=dynamoDbStreams.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamoDbStreams.d.ts","sourceRoot":"","sources":["../../../../src/syncs/dynamodb/dynamoDbStreams.ts"],"names":[],"mappings":"AAKA,OAAO,EAAc,IAAI,EAAY,MAAM,YAAY,CAAA;AAGvD,eAAO,MAAM,mBAAmB,EAAE,IAwDjC,CAAA"}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DynamoDbStreamsSync = void 0;
4
+ const client_dynamodb_1 = require("@aws-sdk/client-dynamodb");
5
+ const client_dynamodb_streams_1 = require("@aws-sdk/client-dynamodb-streams");
6
+ const ClientPool_js_1 = require("../../aws/ClientPool.js");
7
+ const client_tools_js_1 = require("../../utils/client-tools.js");
8
+ const json_js_1 = require("../../utils/json.js");
9
+ const sync_js_1 = require("../sync.js");
10
+ const typedSync_js_1 = require("../typedSync.js");
11
+ exports.DynamoDbStreamsSync = {
12
+ awsService: 'dynamodb',
13
+ name: 'dynamoDbStreams',
14
+ execute: async (accountId, region, credentials, storage, endpoint, syncOptions) => {
15
+ const streamsClient = ClientPool_js_1.AwsClientPool.defaultInstance.client(client_dynamodb_streams_1.DynamoDBStreamsClient, credentials, region, endpoint);
16
+ const dynamoClient = ClientPool_js_1.AwsClientPool.defaultInstance.client(client_dynamodb_1.DynamoDBClient, credentials, region, endpoint);
17
+ const allStreams = await (0, typedSync_js_1.paginateResource)(streamsClient, client_dynamodb_streams_1.ListStreamsCommand, 'Streams', {
18
+ inputKey: 'ExclusiveStartStreamArn',
19
+ outputKey: 'LastEvaluatedStreamArn'
20
+ });
21
+ const streams = [];
22
+ for (const stream of allStreams) {
23
+ const streamArn = stream.StreamArn;
24
+ const tableName = streamArn.split('/')[1];
25
+ const policy = await (0, client_tools_js_1.runAndCatchError)('PolicyNotFoundException', async () => {
26
+ const result = await dynamoClient.send(new client_dynamodb_1.GetResourcePolicyCommand({ ResourceArn: streamArn }));
27
+ return (0, json_js_1.parseIfPresent)(result.Policy);
28
+ });
29
+ streams.push({
30
+ arn: streamArn,
31
+ metadata: {
32
+ arn: streamArn,
33
+ label: stream.StreamLabel,
34
+ tableName,
35
+ stream: 'true'
36
+ },
37
+ policy
38
+ });
39
+ }
40
+ await (0, sync_js_1.syncData)(streams, storage, accountId, {
41
+ // Stream ARNS start with the table ARN, so we use table as the resource type
42
+ // and then set the metadata to indicate that this is a stream resource
43
+ service: 'dynamodb',
44
+ resourceType: 'table',
45
+ account: accountId,
46
+ region: region,
47
+ metadata: {
48
+ stream: 'true'
49
+ }
50
+ });
51
+ }
52
+ };
53
+ //# sourceMappingURL=dynamoDbStreams.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamoDbStreams.js","sourceRoot":"","sources":["../../../../src/syncs/dynamodb/dynamoDbStreams.ts"],"names":[],"mappings":";;;AAAA,8DAAmF;AACnF,8EAA4F;AAC5F,2DAAuD;AACvD,iEAA8D;AAC9D,iDAAoD;AACpD,wCAAuD;AACvD,kDAAkD;AAErC,QAAA,mBAAmB,GAAS;IACvC,UAAU,EAAE,UAAU;IACtB,IAAI,EAAE,iBAAiB;IACvB,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE;QAChF,MAAM,aAAa,GAAG,6BAAa,CAAC,eAAe,CAAC,MAAM,CACxD,+CAAqB,EACrB,WAAW,EACX,MAAM,EACN,QAAQ,CACT,CAAA;QACD,MAAM,YAAY,GAAG,6BAAa,CAAC,eAAe,CAAC,MAAM,CACvD,gCAAc,EACd,WAAW,EACX,MAAM,EACN,QAAQ,CACT,CAAA;QAED,MAAM,UAAU,GAAG,MAAM,IAAA,+BAAgB,EAAC,aAAa,EAAE,4CAAkB,EAAE,SAAS,EAAE;YACtF,QAAQ,EAAE,yBAAyB;YACnC,SAAS,EAAE,wBAAwB;SACpC,CAAC,CAAA;QAEF,MAAM,OAAO,GAAiB,EAAE,CAAA;QAChC,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE,CAAC;YAChC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAU,CAAA;YACnC,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACzC,MAAM,MAAM,GAAG,MAAM,IAAA,kCAAgB,EAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;gBAC1E,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CACpC,IAAI,0CAAwB,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CACzD,CAAA;gBACD,OAAO,IAAA,wBAAc,EAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YACtC,CAAC,CAAC,CAAA;YACF,OAAO,CAAC,IAAI,CAAC;gBACX,GAAG,EAAE,SAAS;gBACd,QAAQ,EAAE;oBACR,GAAG,EAAE,SAAS;oBACd,KAAK,EAAE,MAAM,CAAC,WAAW;oBACzB,SAAS;oBACT,MAAM,EAAE,MAAM;iBACf;gBACD,MAAM;aACP,CAAC,CAAA;QACJ,CAAC;QAED,MAAM,IAAA,kBAAQ,EAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE;YAC1C,6EAA6E;YAC7E,uEAAuE;YACvE,OAAO,EAAE,UAAU;YACnB,YAAY,EAAE,OAAO;YACrB,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE;gBACR,MAAM,EAAE,MAAM;aACf;SACF,CAAC,CAAA;IACJ,CAAC;CACF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"tables.d.ts","sourceRoot":"","sources":["../../../../src/syncs/dynamodb/tables.ts"],"names":[],"mappings":"AAUA;;GAEG;AACH,eAAO,MAAM,iBAAiB,2BA4D7B,CAAA"}
1
+ {"version":3,"file":"tables.d.ts","sourceRoot":"","sources":["../../../../src/syncs/dynamodb/tables.ts"],"names":[],"mappings":"AAUA;;GAEG;AACH,eAAO,MAAM,iBAAiB,2BAmE7B,CAAA"}
@@ -20,7 +20,13 @@ exports.DynamoDBTableSync = (0, typedSync_js_1.createTypedSyncOperation)('dynamo
20
20
  service: 'dynamodb',
21
21
  resourceType: 'table',
22
22
  account: accountId,
23
- region: region
23
+ region: region,
24
+ metadata: {
25
+ // We set this to true to indicate that this is a table resource
26
+ // and not a stream resource. This is important for the
27
+ // DynamoDBTableSync to work correctly.
28
+ table: 'true'
29
+ }
24
30
  }),
25
31
  extraFields: {
26
32
  policy: async (client, table, accountId, region, partition) => {
@@ -50,7 +56,8 @@ exports.DynamoDBTableSync = (0, typedSync_js_1.createTypedSyncOperation)('dynamo
50
56
  arn: (table, region, accountId, partition) => tableArn(partition, region, accountId, table.name),
51
57
  results: (table) => ({
52
58
  metadata: {
53
- name: table.name
59
+ name: table.name,
60
+ table: 'true'
54
61
  },
55
62
  policy: table.extraFields.policy
56
63
  })
@@ -1 +1 @@
1
- {"version":3,"file":"tables.js","sourceRoot":"","sources":["../../../../src/syncs/dynamodb/tables.ts"],"names":[],"mappings":";;;AAAA,8DAKiC;AACjC,iEAA8E;AAC9E,iDAAyD;AACzD,kDAAoG;AAEpG;;GAEG;AACU,QAAA,iBAAiB,GAAG,IAAA,uCAAwB,EACvD,UAAU,EACV,QAAQ,EACR,IAAA,qCAAsB,EAAC;IACrB,MAAM,EAAE,gCAAc;IACtB,OAAO,EAAE,mCAAiB;IAC1B,GAAG,EAAE,YAAY;IACjB,gBAAgB,EAAE;QAChB,QAAQ,EAAE,yBAAyB;QACnC,SAAS,EAAE,wBAAwB;KACpC;IACD,iBAAiB,EAAE,CAAC,SAAiB,EAAE,MAAc,EAAE,EAAE,CAAC,CAAC;QACzD,OAAO,EAAE,UAAU;QACnB,YAAY,EAAE,OAAO;QACrB,OAAO,EAAE,SAAS;QAClB,MAAM,EAAE,MAAM;KACf,CAAC;IACF,WAAW,EAAE;QACX,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE;YAC5D,OAAO,IAAA,kCAAgB,EAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;gBAC5D,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAChC,IAAI,0CAAwB,CAAC;oBAC3B,WAAW,EAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC;iBAChE,CAAC,CACH,CAAA;gBACD,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;oBACpB,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;gBACpC,CAAC;gBACD,OAAO,SAAS,CAAA;YAClB,CAAC,CAAC,CAAA;QACJ,CAAC;QACD,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE;YAC1D,OAAO,IAAA,gCAAc,EAAC,KAAK,IAAI,EAAE;gBAC/B,MAAM,QAAQ,GAAG,MAAM,IAAA,+BAAgB,EACrC,MAAM,EACN,2CAAyB,EACzB,MAAM,EACN;oBACE,QAAQ,EAAE,WAAW;oBACrB,SAAS,EAAE,WAAW;iBACvB,EACD;oBACE,WAAW,EAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC;iBAChE,CACF,CAAA;gBAED,OAAO,IAAA,6BAAmB,EAAC,QAAQ,CAAC,CAAA;YACtC,CAAC,CAAC,CAAA;QACJ,CAAC;KACF;IACD,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI;IACvC,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,CAC3C,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC;IACpD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACnB,QAAQ,EAAE;YACR,IAAI,EAAE,KAAK,CAAC,IAAK;SAClB;QACD,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,MAAM;KACjC,CAAC;CACH,CAAC,CACH,CAAA;AAED;;;;;;;;GAQG;AACH,SAAS,QAAQ,CAAC,SAAiB,EAAE,MAAc,EAAE,SAAiB,EAAE,SAAiB;IACvF,OAAO,OAAO,SAAS,aAAa,MAAM,IAAI,SAAS,UAAU,SAAS,EAAE,CAAA;AAC9E,CAAC"}
1
+ {"version":3,"file":"tables.js","sourceRoot":"","sources":["../../../../src/syncs/dynamodb/tables.ts"],"names":[],"mappings":";;;AAAA,8DAKiC;AACjC,iEAA8E;AAC9E,iDAAyD;AACzD,kDAAoG;AAEpG;;GAEG;AACU,QAAA,iBAAiB,GAAG,IAAA,uCAAwB,EACvD,UAAU,EACV,QAAQ,EACR,IAAA,qCAAsB,EAAC;IACrB,MAAM,EAAE,gCAAc;IACtB,OAAO,EAAE,mCAAiB;IAC1B,GAAG,EAAE,YAAY;IACjB,gBAAgB,EAAE;QAChB,QAAQ,EAAE,yBAAyB;QACnC,SAAS,EAAE,wBAAwB;KACpC;IACD,iBAAiB,EAAE,CAAC,SAAiB,EAAE,MAAc,EAAE,EAAE,CAAC,CAAC;QACzD,OAAO,EAAE,UAAU;QACnB,YAAY,EAAE,OAAO;QACrB,OAAO,EAAE,SAAS;QAClB,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE;YACR,gEAAgE;YAChE,uDAAuD;YACvD,uCAAuC;YACvC,KAAK,EAAE,MAAM;SACd;KACF,CAAC;IACF,WAAW,EAAE;QACX,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE;YAC5D,OAAO,IAAA,kCAAgB,EAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;gBAC5D,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAChC,IAAI,0CAAwB,CAAC;oBAC3B,WAAW,EAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC;iBAChE,CAAC,CACH,CAAA;gBACD,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;oBACpB,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;gBACpC,CAAC;gBACD,OAAO,SAAS,CAAA;YAClB,CAAC,CAAC,CAAA;QACJ,CAAC;QACD,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE;YAC1D,OAAO,IAAA,gCAAc,EAAC,KAAK,IAAI,EAAE;gBAC/B,MAAM,QAAQ,GAAG,MAAM,IAAA,+BAAgB,EACrC,MAAM,EACN,2CAAyB,EACzB,MAAM,EACN;oBACE,QAAQ,EAAE,WAAW;oBACrB,SAAS,EAAE,WAAW;iBACvB,EACD;oBACE,WAAW,EAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC;iBAChE,CACF,CAAA;gBAED,OAAO,IAAA,6BAAmB,EAAC,QAAQ,CAAC,CAAA;YACtC,CAAC,CAAC,CAAA;QACJ,CAAC;KACF;IACD,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI;IACvC,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,CAC3C,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC;IACpD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACnB,QAAQ,EAAE;YACR,IAAI,EAAE,KAAK,CAAC,IAAK;YACjB,KAAK,EAAE,MAAM;SACd;QACD,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,MAAM;KACjC,CAAC;CACH,CAAC,CACH,CAAA;AAED;;;;;;;;GAQG;AACH,SAAS,QAAQ,CAAC,SAAiB,EAAE,MAAc,EAAE,SAAiB,EAAE,SAAiB;IACvF,OAAO,OAAO,SAAS,aAAa,MAAM,IAAI,SAAS,UAAU,SAAS,EAAE,CAAA;AAC9E,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"syncMap.d.ts","sourceRoot":"","sources":["../../../src/syncs/syncMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAoB,MAAM,gBAAgB,CAAA;AA0B7D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAiDhC;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,EAAE,CAMpE;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,EAAE,CAMtE"}
1
+ {"version":3,"file":"syncMap.d.ts","sourceRoot":"","sources":["../../../src/syncs/syncMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAoB,MAAM,gBAAgB,CAAA;AA2B7D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAkDhC;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,EAAE,CAMpE;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,EAAE,CAMtE"}
@@ -5,6 +5,7 @@ exports.getRegionalSyncsForService = getRegionalSyncsForService;
5
5
  const services_js_1 = require("../services.js");
6
6
  const gateways_js_1 = require("./apigateway/gateways.js");
7
7
  const backupVaults_js_1 = require("./backup/backupVaults.js");
8
+ const dynamoDbStreams_js_1 = require("./dynamodb/dynamoDbStreams.js");
8
9
  const tables_js_1 = require("./dynamodb/tables.js");
9
10
  const vpcEndpoints_js_1 = require("./ec2/vpcEndpoints.js");
10
11
  const ecrSyncs_js_1 = require("./ecr/ecrSyncs.js");
@@ -32,6 +33,7 @@ const allSyncs = [
32
33
  accountBpa_js_1.AccountS3BpaSync,
33
34
  authorizationDetails_js_1.AuthorizationDetailsSync,
34
35
  backupVaults_js_1.BackupVaultsSync,
36
+ dynamoDbStreams_js_1.DynamoDbStreamsSync,
35
37
  tables_js_1.DynamoDBTableSync,
36
38
  ...ecrSyncs_js_1.EcrSyncs,
37
39
  fileSystems_js_1.ElasticFileSystemsSync,
@@ -1 +1 @@
1
- {"version":3,"file":"syncMap.js","sourceRoot":"","sources":["../../../src/syncs/syncMap.ts"],"names":[],"mappings":";;AAiFA,4DAMC;AAQD,gEAMC;AArGD,gDAA6D;AAC7D,0DAAuD;AACvD,8DAA2D;AAC3D,oDAAwD;AACxD,2DAAwD;AACxD,mDAA4C;AAC5C,yDAA6D;AAC7D,oDAAoD;AACpD,2EAAwE;AACxE,qEAAkE;AAClE,mEAAgE;AAChE,yCAAsC;AACtC,kDAAwE;AACxE,uEAAmE;AACnE,qDAAqD;AACrD,0DAAyD;AACzD,sDAAqD;AACrD,gDAA4D;AAC5D,gFAA+E;AAC/E,8CAAkD;AAClD,qFAA8E;AAC9E,gEAA+D;AAC/D,4DAAwD;AACxD,+CAA+C;AAC/C,+CAA8C;AAC9C,2DAAmD;AAGnD,MAAM,QAAQ,GAAG;IACf,gCAAgB;IAChB,kDAAwB;IACxB,kCAAgB;IAChB,6BAAiB;IACjB,GAAG,sBAAQ;IACX,uCAAsB;IACtB,0CAAoB;IACpB,GAAG,4CAAqB;IACxB,6BAAiB;IACjB,6BAAe;IACf,gBAAO;IACP,sBAAU;IACV,mCAAuB;IACvB,mCAAgB;IAChB,+BAAgB;IAChB,0BAAY;IACZ,oCAAkB;IAClB,kDAAsB;IACtB,uCAA0B;IAC1B,0DAA6B;IAC7B,oCAAkB;IAClB,uBAAU;IACV,yBAAa;IACb,wBAAY;IACZ,6BAAW;IACX,kCAAgB;CACjB,CAAA;AAED,MAAM,OAAO,GAAG,IAAI,GAAG,EAAoD,CAAA;AAE3E,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;IAC5B,MAAM,OAAO,GAAG,IAAA,8BAAgB,EAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IACjD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE;YACnB,QAAQ,EAAE,EAAE;YACZ,MAAM,EAAE,EAAE;SACX,CAAC,CAAA;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAE,CAAA;IACnC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACzB,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,wBAAwB,CAAC,OAAmB;IAC1D,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAA,8BAAgB,EAAC,OAAO,CAAC,CAAC,CAAA;IACpD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,CAAA;IACX,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,CAAA;AACrB,CAAC;AAED;;;;;GAKG;AACH,SAAgB,0BAA0B,CAAC,OAAmB;IAC5D,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAA,8BAAgB,EAAC,OAAO,CAAC,CAAC,CAAA;IACpD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,CAAA;IACX,CAAC;IACD,OAAO,KAAK,CAAC,QAAQ,CAAA;AACvB,CAAC"}
1
+ {"version":3,"file":"syncMap.js","sourceRoot":"","sources":["../../../src/syncs/syncMap.ts"],"names":[],"mappings":";;AAmFA,4DAMC;AAQD,gEAMC;AAvGD,gDAA6D;AAC7D,0DAAuD;AACvD,8DAA2D;AAC3D,sEAAmE;AACnE,oDAAwD;AACxD,2DAAwD;AACxD,mDAA4C;AAC5C,yDAA6D;AAC7D,oDAAoD;AACpD,2EAAwE;AACxE,qEAAkE;AAClE,mEAAgE;AAChE,yCAAsC;AACtC,kDAAwE;AACxE,uEAAmE;AACnE,qDAAqD;AACrD,0DAAyD;AACzD,sDAAqD;AACrD,gDAA4D;AAC5D,gFAA+E;AAC/E,8CAAkD;AAClD,qFAA8E;AAC9E,gEAA+D;AAC/D,4DAAwD;AACxD,+CAA+C;AAC/C,+CAA8C;AAC9C,2DAAmD;AAGnD,MAAM,QAAQ,GAAG;IACf,gCAAgB;IAChB,kDAAwB;IACxB,kCAAgB;IAChB,wCAAmB;IACnB,6BAAiB;IACjB,GAAG,sBAAQ;IACX,uCAAsB;IACtB,0CAAoB;IACpB,GAAG,4CAAqB;IACxB,6BAAiB;IACjB,6BAAe;IACf,gBAAO;IACP,sBAAU;IACV,mCAAuB;IACvB,mCAAgB;IAChB,+BAAgB;IAChB,0BAAY;IACZ,oCAAkB;IAClB,kDAAsB;IACtB,uCAA0B;IAC1B,0DAA6B;IAC7B,oCAAkB;IAClB,uBAAU;IACV,yBAAa;IACb,wBAAY;IACZ,6BAAW;IACX,kCAAgB;CACjB,CAAA;AAED,MAAM,OAAO,GAAG,IAAI,GAAG,EAAoD,CAAA;AAE3E,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;IAC5B,MAAM,OAAO,GAAG,IAAA,8BAAgB,EAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IACjD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE;YACnB,QAAQ,EAAE,EAAE;YACZ,MAAM,EAAE,EAAE;SACX,CAAC,CAAA;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAE,CAAA;IACnC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACzB,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,wBAAwB,CAAC,OAAmB;IAC1D,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAA,8BAAgB,EAAC,OAAO,CAAC,CAAC,CAAA;IACpD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,CAAA;IACX,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,CAAA;AACrB,CAAC;AAED;;;;;GAKG;AACH,SAAgB,0BAA0B,CAAC,OAAmB;IAC5D,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAA,8BAAgB,EAAC,OAAO,CAAC,CAAC,CAAA;IACpD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,CAAA;IACX,CAAC;IACD,OAAO,KAAK,CAAC,QAAQ,CAAA;AACvB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Sync } from '../sync.js';
2
+ export declare const DynamoDbStreamsSync: Sync;
3
+ //# sourceMappingURL=dynamoDbStreams.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamoDbStreams.d.ts","sourceRoot":"","sources":["../../../../src/syncs/dynamodb/dynamoDbStreams.ts"],"names":[],"mappings":"AAKA,OAAO,EAAc,IAAI,EAAY,MAAM,YAAY,CAAA;AAGvD,eAAO,MAAM,mBAAmB,EAAE,IAwDjC,CAAA"}
@@ -0,0 +1,50 @@
1
+ import { DynamoDBClient, GetResourcePolicyCommand } from '@aws-sdk/client-dynamodb';
2
+ import { DynamoDBStreamsClient, ListStreamsCommand } from '@aws-sdk/client-dynamodb-streams';
3
+ import { AwsClientPool } from '../../aws/ClientPool.js';
4
+ import { runAndCatchError } from '../../utils/client-tools.js';
5
+ import { parseIfPresent } from '../../utils/json.js';
6
+ import { syncData } from '../sync.js';
7
+ import { paginateResource } from '../typedSync.js';
8
+ export const DynamoDbStreamsSync = {
9
+ awsService: 'dynamodb',
10
+ name: 'dynamoDbStreams',
11
+ execute: async (accountId, region, credentials, storage, endpoint, syncOptions) => {
12
+ const streamsClient = AwsClientPool.defaultInstance.client(DynamoDBStreamsClient, credentials, region, endpoint);
13
+ const dynamoClient = AwsClientPool.defaultInstance.client(DynamoDBClient, credentials, region, endpoint);
14
+ const allStreams = await paginateResource(streamsClient, ListStreamsCommand, 'Streams', {
15
+ inputKey: 'ExclusiveStartStreamArn',
16
+ outputKey: 'LastEvaluatedStreamArn'
17
+ });
18
+ const streams = [];
19
+ for (const stream of allStreams) {
20
+ const streamArn = stream.StreamArn;
21
+ const tableName = streamArn.split('/')[1];
22
+ const policy = await runAndCatchError('PolicyNotFoundException', async () => {
23
+ const result = await dynamoClient.send(new GetResourcePolicyCommand({ ResourceArn: streamArn }));
24
+ return parseIfPresent(result.Policy);
25
+ });
26
+ streams.push({
27
+ arn: streamArn,
28
+ metadata: {
29
+ arn: streamArn,
30
+ label: stream.StreamLabel,
31
+ tableName,
32
+ stream: 'true'
33
+ },
34
+ policy
35
+ });
36
+ }
37
+ await syncData(streams, storage, accountId, {
38
+ // Stream ARNS start with the table ARN, so we use table as the resource type
39
+ // and then set the metadata to indicate that this is a stream resource
40
+ service: 'dynamodb',
41
+ resourceType: 'table',
42
+ account: accountId,
43
+ region: region,
44
+ metadata: {
45
+ stream: 'true'
46
+ }
47
+ });
48
+ }
49
+ };
50
+ //# sourceMappingURL=dynamoDbStreams.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamoDbStreams.js","sourceRoot":"","sources":["../../../../src/syncs/dynamodb/dynamoDbStreams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAA;AACnF,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AAC5F,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAoB,QAAQ,EAAE,MAAM,YAAY,CAAA;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAElD,MAAM,CAAC,MAAM,mBAAmB,GAAS;IACvC,UAAU,EAAE,UAAU;IACtB,IAAI,EAAE,iBAAiB;IACvB,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE;QAChF,MAAM,aAAa,GAAG,aAAa,CAAC,eAAe,CAAC,MAAM,CACxD,qBAAqB,EACrB,WAAW,EACX,MAAM,EACN,QAAQ,CACT,CAAA;QACD,MAAM,YAAY,GAAG,aAAa,CAAC,eAAe,CAAC,MAAM,CACvD,cAAc,EACd,WAAW,EACX,MAAM,EACN,QAAQ,CACT,CAAA;QAED,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,aAAa,EAAE,kBAAkB,EAAE,SAAS,EAAE;YACtF,QAAQ,EAAE,yBAAyB;YACnC,SAAS,EAAE,wBAAwB;SACpC,CAAC,CAAA;QAEF,MAAM,OAAO,GAAiB,EAAE,CAAA;QAChC,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE,CAAC;YAChC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAU,CAAA;YACnC,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACzC,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;gBAC1E,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CACpC,IAAI,wBAAwB,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CACzD,CAAA;gBACD,OAAO,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YACtC,CAAC,CAAC,CAAA;YACF,OAAO,CAAC,IAAI,CAAC;gBACX,GAAG,EAAE,SAAS;gBACd,QAAQ,EAAE;oBACR,GAAG,EAAE,SAAS;oBACd,KAAK,EAAE,MAAM,CAAC,WAAW;oBACzB,SAAS;oBACT,MAAM,EAAE,MAAM;iBACf;gBACD,MAAM;aACP,CAAC,CAAA;QACJ,CAAC;QAED,MAAM,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE;YAC1C,6EAA6E;YAC7E,uEAAuE;YACvE,OAAO,EAAE,UAAU;YACnB,YAAY,EAAE,OAAO;YACrB,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE;gBACR,MAAM,EAAE,MAAM;aACf;SACF,CAAC,CAAA;IACJ,CAAC;CACF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"tables.d.ts","sourceRoot":"","sources":["../../../../src/syncs/dynamodb/tables.ts"],"names":[],"mappings":"AAUA;;GAEG;AACH,eAAO,MAAM,iBAAiB,2BA4D7B,CAAA"}
1
+ {"version":3,"file":"tables.d.ts","sourceRoot":"","sources":["../../../../src/syncs/dynamodb/tables.ts"],"names":[],"mappings":"AAUA;;GAEG;AACH,eAAO,MAAM,iBAAiB,2BAmE7B,CAAA"}
@@ -17,7 +17,13 @@ export const DynamoDBTableSync = createTypedSyncOperation('dynamodb', 'tables',
17
17
  service: 'dynamodb',
18
18
  resourceType: 'table',
19
19
  account: accountId,
20
- region: region
20
+ region: region,
21
+ metadata: {
22
+ // We set this to true to indicate that this is a table resource
23
+ // and not a stream resource. This is important for the
24
+ // DynamoDBTableSync to work correctly.
25
+ table: 'true'
26
+ }
21
27
  }),
22
28
  extraFields: {
23
29
  policy: async (client, table, accountId, region, partition) => {
@@ -47,7 +53,8 @@ export const DynamoDBTableSync = createTypedSyncOperation('dynamodb', 'tables',
47
53
  arn: (table, region, accountId, partition) => tableArn(partition, region, accountId, table.name),
48
54
  results: (table) => ({
49
55
  metadata: {
50
- name: table.name
56
+ name: table.name,
57
+ table: 'true'
51
58
  },
52
59
  policy: table.extraFields.policy
53
60
  })
@@ -1 +1 @@
1
- {"version":3,"file":"tables.js","sourceRoot":"","sources":["../../../../src/syncs/dynamodb/tables.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tables.js","sourceRoot":"","sources":["../../../../src/syncs/dynamodb/tables.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"syncMap.d.ts","sourceRoot":"","sources":["../../../src/syncs/syncMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAoB,MAAM,gBAAgB,CAAA;AA0B7D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAiDhC;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,EAAE,CAMpE;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,EAAE,CAMtE"}
1
+ {"version":3,"file":"syncMap.d.ts","sourceRoot":"","sources":["../../../src/syncs/syncMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAoB,MAAM,gBAAgB,CAAA;AA2B7D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAkDhC;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,EAAE,CAMpE;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,EAAE,CAMtE"}
@@ -1,6 +1,7 @@
1
1
  import { lowerCaseService } from '../services.js';
2
2
  import { RestApisSync } from './apigateway/gateways.js';
3
3
  import { BackupVaultsSync } from './backup/backupVaults.js';
4
+ import { DynamoDbStreamsSync } from './dynamodb/dynamoDbStreams.js';
4
5
  import { DynamoDBTableSync } from './dynamodb/tables.js';
5
6
  import { VpcEndpointsSync } from './ec2/vpcEndpoints.js';
6
7
  import { EcrSyncs } from './ecr/ecrSyncs.js';
@@ -28,6 +29,7 @@ const allSyncs = [
28
29
  AccountS3BpaSync,
29
30
  AuthorizationDetailsSync,
30
31
  BackupVaultsSync,
32
+ DynamoDbStreamsSync,
31
33
  DynamoDBTableSync,
32
34
  ...EcrSyncs,
33
35
  ElasticFileSystemsSync,
@@ -1 +1 @@
1
- {"version":3,"file":"syncMap.js","sourceRoot":"","sources":["../../../src/syncs/syncMap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"syncMap.js","sourceRoot":"","sources":["../../../src/syncs/syncMap.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cloud-copilot/iam-collect",
3
- "version": "0.1.69",
3
+ "version": "0.1.70",
4
4
  "description": "Collect IAM information from AWS Accounts",
5
5
  "repository": {
6
6
  "type": "git",
@@ -112,6 +112,7 @@
112
112
  "@aws-sdk/client-api-gateway": "^3.799.0",
113
113
  "@aws-sdk/client-backup": "^3.812.0",
114
114
  "@aws-sdk/client-dynamodb": "^3.788.0",
115
+ "@aws-sdk/client-dynamodb-streams": "^3.816.0",
115
116
  "@aws-sdk/client-ec2": "^3.798.0",
116
117
  "@aws-sdk/client-ecr": "^3.798.0",
117
118
  "@aws-sdk/client-efs": "^3.806.0",