@actsecurity/iam-collect 0.1.233 → 0.1.235

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
@@ -147,6 +147,7 @@ If you prefer, you can configure iam-collect to pull data from AWS Config instea
147
147
  | iam | Instance Profiles | name, roles, id, path, tags |
148
148
  | apigateway | Rest APIs | id, name, policy, tags |
149
149
  | backup | Backup Vaults | name, key, tags, policy |
150
+ | cloudfront | Origin Access Identities | id, comment, S3 canonical user ID |
150
151
  | codeartifact | Repositories | name, region, domain name, domain owner, administrator account, description, tags, resource policy |
151
152
  | codebuild | Projects | name, description, service role, resource access role, encryption key, visibility, public project alias, tags, policy |
152
153
  | dynamodb | Streams | name, region, resource policy |
@@ -192,4 +193,6 @@ If you prefer, you can configure iam-collect to pull data from AWS Config instea
192
193
  | sso | Identity Store Groups | name, description, external ids, members |
193
194
  | sso | Identity Store Group Memberships | group and member relationships |
194
195
 
196
+ CloudFront origin access identities are the legacy S3 origin access mechanism; this collection does not include origin access controls (OACs).
197
+
195
198
  If you don't see the data you are looking for, please check the [open resource issues](https://github.com/act-security-labs/iam-collect/issues?q=is%3Aissue%20state%3Aopen%20label%3Aresource) and comment on the issue or create a new one.
@@ -2,5 +2,5 @@
2
2
  * iam-collect version.
3
3
  * Generated by build, do not manually edit
4
4
  */
5
- export declare const IAM_COLLECT_VERSION = "0.1.232";
5
+ export declare const IAM_COLLECT_VERSION = "0.1.234";
6
6
  //# sourceMappingURL=version.d.ts.map
@@ -5,5 +5,5 @@ exports.IAM_COLLECT_VERSION = void 0;
5
5
  * iam-collect version.
6
6
  * Generated by build, do not manually edit
7
7
  */
8
- exports.IAM_COLLECT_VERSION = '0.1.232';
8
+ exports.IAM_COLLECT_VERSION = '0.1.234';
9
9
  //# sourceMappingURL=version.js.map
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * All Valid AWS Services
3
3
  */
4
- export declare const allServices: readonly ["apigateway", "backup", "codeartifact", "codebuild", "dynamodb", "ec2", "ecr", "eks", "elasticfilesystem", "es", "events", "glacier", "glue", "iam", "iot", "kafka", "kinesis", "kms", "lambda", "organizations", "ram", "s3", "s3-object-lambda", "s3express", "s3outposts", "s3tables", "secretsmanager", "ses", "sns", "sqs", "sso"];
4
+ export declare const allServices: readonly ["apigateway", "backup", "cloudfront", "codeartifact", "codebuild", "dynamodb", "ec2", "ecr", "eks", "elasticfilesystem", "es", "events", "glacier", "glue", "iam", "iot", "kafka", "kinesis", "kms", "lambda", "organizations", "ram", "s3", "s3-object-lambda", "s3express", "s3outposts", "s3tables", "secretsmanager", "ses", "sns", "sqs", "sso"];
5
5
  /**
6
6
  * Type representing a valid AWS service. A union of all strings in `allServices`.
7
7
  */
@@ -1 +1 @@
1
- {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../src/services.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,WAAW,mVAgCd,CAAA;AAEV;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAA;AAErD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAE5D"}
1
+ {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../src/services.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,WAAW,iWAiCd,CAAA;AAEV;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAA;AAErD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAE5D"}
@@ -8,6 +8,7 @@ exports.lowerCaseService = lowerCaseService;
8
8
  exports.allServices = [
9
9
  'apigateway',
10
10
  'backup',
11
+ 'cloudfront',
11
12
  'codeartifact',
12
13
  'codebuild',
13
14
  'dynamodb',
@@ -1 +1 @@
1
- {"version":3,"file":"services.js","sourceRoot":"","sources":["../../src/services.ts"],"names":[],"mappings":";;;AAgDA,4CAEC;AAlDD;;GAEG;AACU,QAAA,WAAW,GAAG;IACzB,YAAY;IACZ,QAAQ;IACR,cAAc;IACd,WAAW;IACX,UAAU;IACV,KAAK;IACL,KAAK;IACL,KAAK;IACL,mBAAmB;IACnB,IAAI;IACJ,QAAQ;IACR,SAAS;IACT,MAAM;IACN,KAAK;IACL,KAAK;IACL,OAAO;IACP,SAAS;IACT,KAAK;IACL,QAAQ;IACR,eAAe;IACf,KAAK;IACL,IAAI;IACJ,kBAAkB;IAClB,WAAW;IACX,YAAY;IACZ,UAAU;IACV,gBAAgB;IAChB,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;CACG,CAAA;AAOV;;;;;GAKG;AACH,SAAgB,gBAAgB,CAAC,OAAe;IAC9C,OAAO,OAAO,CAAC,WAAW,EAAgB,CAAA;AAC5C,CAAC"}
1
+ {"version":3,"file":"services.js","sourceRoot":"","sources":["../../src/services.ts"],"names":[],"mappings":";;;AAiDA,4CAEC;AAnDD;;GAEG;AACU,QAAA,WAAW,GAAG;IACzB,YAAY;IACZ,QAAQ;IACR,YAAY;IACZ,cAAc;IACd,WAAW;IACX,UAAU;IACV,KAAK;IACL,KAAK;IACL,KAAK;IACL,mBAAmB;IACnB,IAAI;IACJ,QAAQ;IACR,SAAS;IACT,MAAM;IACN,KAAK;IACL,KAAK;IACL,OAAO;IACP,SAAS;IACT,KAAK;IACL,QAAQ;IACR,eAAe;IACf,KAAK;IACL,IAAI;IACJ,kBAAkB;IAClB,WAAW;IACX,YAAY;IACZ,UAAU;IACV,gBAAgB;IAChB,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;CACG,CAAA;AAOV;;;;;GAKG;AACH,SAAgB,gBAAgB,CAAC,OAAe;IAC9C,OAAO,OAAO,CAAC,WAAW,EAAgB,CAAA;AAC5C,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { type Sync } from '../sync.js';
2
+ /** Collect account-owned CloudFront origin access identities and their S3 canonical user IDs. */
3
+ export declare const CloudFrontOriginAccessIdentitiesSync: Sync;
4
+ //# sourceMappingURL=originAccessIdentities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"originAccessIdentities.d.ts","sourceRoot":"","sources":["../../../../src/syncs/cloudfront/originAccessIdentities.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,IAAI,EAAY,MAAM,YAAY,CAAA;AAEhD,iGAAiG;AACjG,eAAO,MAAM,oCAAoC,EAAE,IA6BlD,CAAA"}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CloudFrontOriginAccessIdentitiesSync = void 0;
4
+ const client_cloudfront_1 = require("@aws-sdk/client-cloudfront");
5
+ const client_tools_js_1 = require("../../utils/client-tools.js");
6
+ const sync_js_1 = require("../sync.js");
7
+ /** Collect account-owned CloudFront origin access identities and their S3 canonical user IDs. */
8
+ exports.CloudFrontOriginAccessIdentitiesSync = {
9
+ awsService: 'cloudfront',
10
+ name: 'originAccessIdentities',
11
+ global: true,
12
+ execute: async (accountId, region, credentials, storage, endpoint, syncOptions) => {
13
+ const client = syncOptions.clientPool.client(client_cloudfront_1.CloudFrontClient, credentials, region, endpoint);
14
+ const identities = await listOriginAccessIdentities(client);
15
+ const records = identities.map((identity) => {
16
+ const arn = `arn:${credentials.partition}:cloudfront::${accountId}:origin-access-identity/${identity.Id}`;
17
+ return {
18
+ arn,
19
+ metadata: {
20
+ arn,
21
+ id: identity.Id,
22
+ name: identity.Id,
23
+ comment: identity.Comment,
24
+ s3CanonicalUserId: identity.S3CanonicalUserId
25
+ }
26
+ };
27
+ });
28
+ await (0, sync_js_1.syncData)(records, storage, accountId, { service: 'cloudfront', account: accountId, resourceType: 'origin-access-identity' }, syncOptions.writeOnly);
29
+ }
30
+ };
31
+ /**
32
+ * Fetch every page before returning so a partial collection never replaces stored identities.
33
+ *
34
+ * @param client The CloudFront client scoped to the owning account.
35
+ * @returns The complete list, including canonical IDs used to resolve S3 policy principals.
36
+ * @throws If any page fails or contains incomplete pagination or identity data.
37
+ */
38
+ async function listOriginAccessIdentities(client) {
39
+ const identities = [];
40
+ const markers = new Set();
41
+ let marker;
42
+ do {
43
+ const response = await (0, client_tools_js_1.withDnsRetry)(() => client.send(new client_cloudfront_1.ListCloudFrontOriginAccessIdentitiesCommand({ Marker: marker })));
44
+ const page = response.CloudFrontOriginAccessIdentityList;
45
+ if (!page || typeof page.IsTruncated !== 'boolean' || typeof page.Quantity !== 'number') {
46
+ throw new Error('Invalid CloudFront origin access identity list response');
47
+ }
48
+ const items = page.Items ?? [];
49
+ if (page.Quantity < items.length ||
50
+ (page.Quantity > 0 && items.length === 0) ||
51
+ items.some((item) => !item.Id || !item.S3CanonicalUserId)) {
52
+ throw new Error('Incomplete CloudFront origin access identity list response');
53
+ }
54
+ identities.push(...items);
55
+ if (!page.IsTruncated) {
56
+ break;
57
+ }
58
+ if (!page.NextMarker || markers.has(page.NextMarker)) {
59
+ throw new Error('Invalid CloudFront origin access identity pagination marker');
60
+ }
61
+ markers.add(page.NextMarker);
62
+ marker = page.NextMarker;
63
+ } while (true);
64
+ return identities;
65
+ }
66
+ //# sourceMappingURL=originAccessIdentities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"originAccessIdentities.js","sourceRoot":"","sources":["../../../../src/syncs/cloudfront/originAccessIdentities.ts"],"names":[],"mappings":";;;AAAA,kEAImC;AACnC,iEAA0D;AAC1D,wCAAgD;AAEhD,iGAAiG;AACpF,QAAA,oCAAoC,GAAS;IACxD,UAAU,EAAE,YAAY;IACxB,IAAI,EAAE,wBAAwB;IAC9B,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE;QAChF,MAAM,MAAM,GAAG,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,oCAAgB,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;QAC7F,MAAM,UAAU,GAAG,MAAM,0BAA0B,CAAC,MAAM,CAAC,CAAA;QAC3D,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC1C,MAAM,GAAG,GAAG,OAAO,WAAW,CAAC,SAAS,gBAAgB,SAAS,2BAA2B,QAAQ,CAAC,EAAE,EAAE,CAAA;YACzG,OAAO;gBACL,GAAG;gBACH,QAAQ,EAAE;oBACR,GAAG;oBACH,EAAE,EAAE,QAAQ,CAAC,EAAE;oBACf,IAAI,EAAE,QAAQ,CAAC,EAAE;oBACjB,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;iBAC9C;aACF,CAAA;QACH,CAAC,CAAC,CAAA;QAEF,MAAM,IAAA,kBAAQ,EACZ,OAAO,EACP,OAAO,EACP,SAAS,EACT,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,wBAAwB,EAAE,EACrF,WAAW,CAAC,SAAS,CACtB,CAAA;IACH,CAAC;CACF,CAAA;AAED;;;;;;GAMG;AACH,KAAK,UAAU,0BAA0B,CACvC,MAAwB;IAExB,MAAM,UAAU,GAA4C,EAAE,CAAA;IAC9D,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAA;IACjC,IAAI,MAA0B,CAAA;IAC9B,GAAG,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,IAAA,8BAAY,EAAC,GAAG,EAAE,CACvC,MAAM,CAAC,IAAI,CAAC,IAAI,+DAA2C,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CACjF,CAAA;QACD,MAAM,IAAI,GAAG,QAAQ,CAAC,kCAAkC,CAAA;QACxD,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACxF,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAA;QAC5E,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAA;QAC9B,IACE,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,MAAM;YAC5B,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;YACzC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,EACzD,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAA;QAC/E,CAAC;QACD,UAAU,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAA;QACzB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAK;QACP,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACrD,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAA;QAChF,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC5B,MAAM,GAAG,IAAI,CAAC,UAAU,CAAA;IAC1B,CAAC,QAAQ,IAAI,EAAC;IACd,OAAO,UAAU,CAAA;AACnB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"syncMap.d.ts","sourceRoot":"","sources":["../../../src/syncs/syncMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAoB,MAAM,gBAAgB,CAAA;AAuClE,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,WAAW,CAAA;AA+DrC;;;;;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,KAAK,UAAU,EAAoB,MAAM,gBAAgB,CAAA;AAwClE,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,WAAW,CAAA;AAgErC;;;;;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 originAccessIdentities_js_1 = require("./cloudfront/originAccessIdentities.js");
8
9
  const repositories_js_1 = require("./codeartifact/repositories.js");
9
10
  const projects_js_1 = require("./codebuild/projects.js");
10
11
  const dynamoDbStreams_js_1 = require("./dynamodb/dynamoDbStreams.js");
@@ -45,6 +46,7 @@ const allSyncs = [
45
46
  accountBpa_js_1.AccountS3BpaSync,
46
47
  authorizationDetails_js_1.AuthorizationDetailsSync,
47
48
  backupVaults_js_1.BackupVaultsSync,
49
+ originAccessIdentities_js_1.CloudFrontOriginAccessIdentitiesSync,
48
50
  repositories_js_1.CodeArtifactRepositoriesSync,
49
51
  projects_js_1.CodeBuildProjectsSync,
50
52
  dynamoDbStreams_js_1.DynamoDbStreamsSync,
@@ -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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"}
@@ -2,5 +2,5 @@
2
2
  * iam-collect version.
3
3
  * Generated by build, do not manually edit
4
4
  */
5
- export declare const IAM_COLLECT_VERSION = "0.1.232";
5
+ export declare const IAM_COLLECT_VERSION = "0.1.234";
6
6
  //# sourceMappingURL=version.d.ts.map
@@ -2,5 +2,5 @@
2
2
  * iam-collect version.
3
3
  * Generated by build, do not manually edit
4
4
  */
5
- export const IAM_COLLECT_VERSION = '0.1.232';
5
+ export const IAM_COLLECT_VERSION = '0.1.234';
6
6
  //# sourceMappingURL=version.js.map
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * All Valid AWS Services
3
3
  */
4
- export declare const allServices: readonly ["apigateway", "backup", "codeartifact", "codebuild", "dynamodb", "ec2", "ecr", "eks", "elasticfilesystem", "es", "events", "glacier", "glue", "iam", "iot", "kafka", "kinesis", "kms", "lambda", "organizations", "ram", "s3", "s3-object-lambda", "s3express", "s3outposts", "s3tables", "secretsmanager", "ses", "sns", "sqs", "sso"];
4
+ export declare const allServices: readonly ["apigateway", "backup", "cloudfront", "codeartifact", "codebuild", "dynamodb", "ec2", "ecr", "eks", "elasticfilesystem", "es", "events", "glacier", "glue", "iam", "iot", "kafka", "kinesis", "kms", "lambda", "organizations", "ram", "s3", "s3-object-lambda", "s3express", "s3outposts", "s3tables", "secretsmanager", "ses", "sns", "sqs", "sso"];
5
5
  /**
6
6
  * Type representing a valid AWS service. A union of all strings in `allServices`.
7
7
  */
@@ -1 +1 @@
1
- {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../src/services.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,WAAW,mVAgCd,CAAA;AAEV;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAA;AAErD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAE5D"}
1
+ {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../src/services.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,WAAW,iWAiCd,CAAA;AAEV;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAA;AAErD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAE5D"}
@@ -4,6 +4,7 @@
4
4
  export const allServices = [
5
5
  'apigateway',
6
6
  'backup',
7
+ 'cloudfront',
7
8
  'codeartifact',
8
9
  'codebuild',
9
10
  'dynamodb',
@@ -1 +1 @@
1
- {"version":3,"file":"services.js","sourceRoot":"","sources":["../../src/services.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,YAAY;IACZ,QAAQ;IACR,cAAc;IACd,WAAW;IACX,UAAU;IACV,KAAK;IACL,KAAK;IACL,KAAK;IACL,mBAAmB;IACnB,IAAI;IACJ,QAAQ;IACR,SAAS;IACT,MAAM;IACN,KAAK;IACL,KAAK;IACL,OAAO;IACP,SAAS;IACT,KAAK;IACL,QAAQ;IACR,eAAe;IACf,KAAK;IACL,IAAI;IACJ,kBAAkB;IAClB,WAAW;IACX,YAAY;IACZ,UAAU;IACV,gBAAgB;IAChB,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;CACG,CAAA;AAOV;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,OAAO,OAAO,CAAC,WAAW,EAAgB,CAAA;AAC5C,CAAC"}
1
+ {"version":3,"file":"services.js","sourceRoot":"","sources":["../../src/services.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,YAAY;IACZ,QAAQ;IACR,YAAY;IACZ,cAAc;IACd,WAAW;IACX,UAAU;IACV,KAAK;IACL,KAAK;IACL,KAAK;IACL,mBAAmB;IACnB,IAAI;IACJ,QAAQ;IACR,SAAS;IACT,MAAM;IACN,KAAK;IACL,KAAK;IACL,OAAO;IACP,SAAS;IACT,KAAK;IACL,QAAQ;IACR,eAAe;IACf,KAAK;IACL,IAAI;IACJ,kBAAkB;IAClB,WAAW;IACX,YAAY;IACZ,UAAU;IACV,gBAAgB;IAChB,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;CACG,CAAA;AAOV;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,OAAO,OAAO,CAAC,WAAW,EAAgB,CAAA;AAC5C,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { type Sync } from '../sync.js';
2
+ /** Collect account-owned CloudFront origin access identities and their S3 canonical user IDs. */
3
+ export declare const CloudFrontOriginAccessIdentitiesSync: Sync;
4
+ //# sourceMappingURL=originAccessIdentities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"originAccessIdentities.d.ts","sourceRoot":"","sources":["../../../../src/syncs/cloudfront/originAccessIdentities.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,IAAI,EAAY,MAAM,YAAY,CAAA;AAEhD,iGAAiG;AACjG,eAAO,MAAM,oCAAoC,EAAE,IA6BlD,CAAA"}
@@ -0,0 +1,63 @@
1
+ import { CloudFrontClient, ListCloudFrontOriginAccessIdentitiesCommand } from '@aws-sdk/client-cloudfront';
2
+ import { withDnsRetry } from '../../utils/client-tools.js';
3
+ import { syncData } from '../sync.js';
4
+ /** Collect account-owned CloudFront origin access identities and their S3 canonical user IDs. */
5
+ export const CloudFrontOriginAccessIdentitiesSync = {
6
+ awsService: 'cloudfront',
7
+ name: 'originAccessIdentities',
8
+ global: true,
9
+ execute: async (accountId, region, credentials, storage, endpoint, syncOptions) => {
10
+ const client = syncOptions.clientPool.client(CloudFrontClient, credentials, region, endpoint);
11
+ const identities = await listOriginAccessIdentities(client);
12
+ const records = identities.map((identity) => {
13
+ const arn = `arn:${credentials.partition}:cloudfront::${accountId}:origin-access-identity/${identity.Id}`;
14
+ return {
15
+ arn,
16
+ metadata: {
17
+ arn,
18
+ id: identity.Id,
19
+ name: identity.Id,
20
+ comment: identity.Comment,
21
+ s3CanonicalUserId: identity.S3CanonicalUserId
22
+ }
23
+ };
24
+ });
25
+ await syncData(records, storage, accountId, { service: 'cloudfront', account: accountId, resourceType: 'origin-access-identity' }, syncOptions.writeOnly);
26
+ }
27
+ };
28
+ /**
29
+ * Fetch every page before returning so a partial collection never replaces stored identities.
30
+ *
31
+ * @param client The CloudFront client scoped to the owning account.
32
+ * @returns The complete list, including canonical IDs used to resolve S3 policy principals.
33
+ * @throws If any page fails or contains incomplete pagination or identity data.
34
+ */
35
+ async function listOriginAccessIdentities(client) {
36
+ const identities = [];
37
+ const markers = new Set();
38
+ let marker;
39
+ do {
40
+ const response = await withDnsRetry(() => client.send(new ListCloudFrontOriginAccessIdentitiesCommand({ Marker: marker })));
41
+ const page = response.CloudFrontOriginAccessIdentityList;
42
+ if (!page || typeof page.IsTruncated !== 'boolean' || typeof page.Quantity !== 'number') {
43
+ throw new Error('Invalid CloudFront origin access identity list response');
44
+ }
45
+ const items = page.Items ?? [];
46
+ if (page.Quantity < items.length ||
47
+ (page.Quantity > 0 && items.length === 0) ||
48
+ items.some((item) => !item.Id || !item.S3CanonicalUserId)) {
49
+ throw new Error('Incomplete CloudFront origin access identity list response');
50
+ }
51
+ identities.push(...items);
52
+ if (!page.IsTruncated) {
53
+ break;
54
+ }
55
+ if (!page.NextMarker || markers.has(page.NextMarker)) {
56
+ throw new Error('Invalid CloudFront origin access identity pagination marker');
57
+ }
58
+ markers.add(page.NextMarker);
59
+ marker = page.NextMarker;
60
+ } while (true);
61
+ return identities;
62
+ }
63
+ //# sourceMappingURL=originAccessIdentities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"originAccessIdentities.js","sourceRoot":"","sources":["../../../../src/syncs/cloudfront/originAccessIdentities.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,KAAK,UAAU,EAAoB,MAAM,gBAAgB,CAAA;AAuClE,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,WAAW,CAAA;AA+DrC;;;;;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,KAAK,UAAU,EAAoB,MAAM,gBAAgB,CAAA;AAwClE,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,WAAW,CAAA;AAgErC;;;;;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 { CloudFrontOriginAccessIdentitiesSync } from './cloudfront/originAccessIdentities.js';
4
5
  import { CodeArtifactRepositoriesSync } from './codeartifact/repositories.js';
5
6
  import { CodeBuildProjectsSync } from './codebuild/projects.js';
6
7
  import { DynamoDbStreamsSync } from './dynamodb/dynamoDbStreams.js';
@@ -42,6 +43,7 @@ const allSyncs = [
42
43
  AccountS3BpaSync,
43
44
  AuthorizationDetailsSync,
44
45
  BackupVaultsSync,
46
+ CloudFrontOriginAccessIdentitiesSync,
45
47
  CodeArtifactRepositoriesSync,
46
48
  CodeBuildProjectsSync,
47
49
  DynamoDbStreamsSync,
@@ -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": "@actsecurity/iam-collect",
3
- "version": "0.1.233",
3
+ "version": "0.1.235",
4
4
  "description": "Collect IAM information from AWS Accounts",
5
5
  "repository": {
6
6
  "type": "git",
@@ -125,6 +125,7 @@
125
125
  "@aws-sdk/client-account": "^3.758.0",
126
126
  "@aws-sdk/client-api-gateway": "^3.799.0",
127
127
  "@aws-sdk/client-backup": "^3.812.0",
128
+ "@aws-sdk/client-cloudfront": "^3.1164.0",
128
129
  "@aws-sdk/client-codeartifact": "^3.1121.0",
129
130
  "@aws-sdk/client-codebuild": "^3.1121.0",
130
131
  "@aws-sdk/client-config-service": "^3.886.0",