@cloud-copilot/iam-collect 0.1.131 → 0.1.133
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 +16 -8
- package/dist/cjs/aws/ClientPool.d.ts +21 -3
- package/dist/cjs/aws/ClientPool.d.ts.map +1 -1
- package/dist/cjs/aws/ClientPool.js +22 -0
- package/dist/cjs/aws/ClientPool.js.map +1 -1
- package/dist/cjs/awsConfigClients/AwsConfigClientContext.d.ts +15 -0
- package/dist/cjs/awsConfigClients/AwsConfigClientContext.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/AwsConfigClientContext.js +6 -0
- package/dist/cjs/awsConfigClients/AwsConfigClientContext.js.map +1 -0
- package/dist/cjs/awsConfigClients/AwsConfigClientPool.d.ts +40 -0
- package/dist/cjs/awsConfigClients/AwsConfigClientPool.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/AwsConfigClientPool.js +132 -0
- package/dist/cjs/awsConfigClients/AwsConfigClientPool.js.map +1 -0
- package/dist/cjs/awsConfigClients/awsConfigUtils.d.ts +30 -0
- package/dist/cjs/awsConfigClients/awsConfigUtils.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/awsConfigUtils.js +64 -0
- package/dist/cjs/awsConfigClients/awsConfigUtils.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigAccountClient.d.ts +18 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigAccountClient.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigAccountClient.js +60 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigAccountClient.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigApiGatewayClient.d.ts +21 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigApiGatewayClient.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigApiGatewayClient.js +37 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigApiGatewayClient.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigBackupClient.d.ts +18 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigBackupClient.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigBackupClient.js +98 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigBackupClient.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigDynamoDBClient.d.ts +21 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigDynamoDBClient.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigDynamoDBClient.js +60 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigDynamoDBClient.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigEC2Client.d.ts +18 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigEC2Client.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigEC2Client.js +61 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigEC2Client.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigEcrClient.d.ts +18 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigEcrClient.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigEcrClient.js +122 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigEcrClient.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigEfsClient.d.ts +18 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigEfsClient.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigEfsClient.js +89 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigEfsClient.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigEventBridgeClient.d.ts +19 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigEventBridgeClient.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigEventBridgeClient.js +107 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigEventBridgeClient.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigGlueClient.d.ts +21 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigGlueClient.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigGlueClient.js +44 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigGlueClient.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigIamClient.d.ts +18 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigIamClient.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigIamClient.js +439 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigIamClient.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigKafkaClient.d.ts +18 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigKafkaClient.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigKafkaClient.js +145 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigKafkaClient.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigKinesisClient.d.ts +22 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigKinesisClient.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigKinesisClient.js +87 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigKinesisClient.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigKmsClient.d.ts +18 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigKmsClient.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigKmsClient.js +105 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigKmsClient.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigLambdaClient.d.ts +22 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigLambdaClient.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigLambdaClient.js +158 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigLambdaClient.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigOpenSearchClient.d.ts +18 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigOpenSearchClient.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigOpenSearchClient.js +125 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigOpenSearchClient.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigOrganizationsClient.d.ts +22 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigOrganizationsClient.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigOrganizationsClient.js +174 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigOrganizationsClient.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigS3Client.d.ts +15 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigS3Client.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigS3Client.js +239 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigS3Client.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigS3ControlClient.d.ts +25 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigS3ControlClient.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigS3ControlClient.js +293 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigS3ControlClient.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigSNSClient.d.ts +18 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigSNSClient.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigSNSClient.js +114 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigSNSClient.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigSQSClient.d.ts +18 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigSQSClient.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigSQSClient.js +105 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigSQSClient.js.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigSecretsManagerClient.d.ts +21 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigSecretsManagerClient.d.ts.map +1 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigSecretsManagerClient.js +50 -0
- package/dist/cjs/awsConfigClients/clients/AwsConfigSecretsManagerClient.js.map +1 -0
- package/dist/cjs/config/config.d.ts +18 -0
- package/dist/cjs/config/config.d.ts.map +1 -1
- package/dist/cjs/config/config.js +16 -0
- package/dist/cjs/config/config.js.map +1 -1
- package/dist/cjs/config/dataSource.d.ts +11 -0
- package/dist/cjs/config/dataSource.d.ts.map +1 -0
- package/dist/cjs/config/dataSource.js +27 -0
- package/dist/cjs/config/dataSource.js.map +1 -0
- package/dist/cjs/customClients/AbstractClient.d.ts +45 -0
- package/dist/cjs/customClients/AbstractClient.d.ts.map +1 -0
- package/dist/cjs/customClients/AbstractClient.js +75 -0
- package/dist/cjs/customClients/AbstractClient.js.map +1 -0
- package/dist/cjs/customClients/AbstractClientPool.d.ts +53 -0
- package/dist/cjs/customClients/AbstractClientPool.d.ts.map +1 -0
- package/dist/cjs/customClients/AbstractClientPool.js +66 -0
- package/dist/cjs/customClients/AbstractClientPool.js.map +1 -0
- package/dist/cjs/customClients/AbstractCommand.d.ts +56 -0
- package/dist/cjs/customClients/AbstractCommand.d.ts.map +1 -0
- package/dist/cjs/customClients/AbstractCommand.js +19 -0
- package/dist/cjs/customClients/AbstractCommand.js.map +1 -0
- package/dist/cjs/customClients/ResourceNotFoundException.d.ts +23 -0
- package/dist/cjs/customClients/ResourceNotFoundException.d.ts.map +1 -0
- package/dist/cjs/customClients/ResourceNotFoundException.js +37 -0
- package/dist/cjs/customClients/ResourceNotFoundException.js.map +1 -0
- package/dist/cjs/download/download.d.ts.map +1 -1
- package/dist/cjs/download/download.js +65 -28
- package/dist/cjs/download/download.js.map +1 -1
- package/dist/cjs/regions.d.ts +2 -1
- package/dist/cjs/regions.d.ts.map +1 -1
- package/dist/cjs/regions.js +2 -2
- package/dist/cjs/regions.js.map +1 -1
- package/dist/cjs/syncs/dynamodb/dynamoDbStreams.d.ts.map +1 -1
- package/dist/cjs/syncs/dynamodb/dynamoDbStreams.js +2 -3
- package/dist/cjs/syncs/dynamodb/dynamoDbStreams.js.map +1 -1
- package/dist/cjs/syncs/ecr/ecrSyncs.d.ts.map +1 -1
- package/dist/cjs/syncs/ecr/ecrSyncs.js +1 -2
- package/dist/cjs/syncs/ecr/ecrSyncs.js.map +1 -1
- package/dist/cjs/syncs/glue/catalogs.d.ts.map +1 -1
- package/dist/cjs/syncs/glue/catalogs.js +1 -2
- package/dist/cjs/syncs/glue/catalogs.js.map +1 -1
- package/dist/cjs/syncs/iam/authorizationDetails.d.ts.map +1 -1
- package/dist/cjs/syncs/iam/authorizationDetails.js +1 -2
- package/dist/cjs/syncs/iam/authorizationDetails.js.map +1 -1
- package/dist/cjs/syncs/lambda/lambda.d.ts.map +1 -1
- package/dist/cjs/syncs/lambda/lambda.js +1 -2
- package/dist/cjs/syncs/lambda/lambda.js.map +1 -1
- package/dist/cjs/syncs/organizations/organizations.d.ts.map +1 -1
- package/dist/cjs/syncs/organizations/organizations.js +1 -2
- package/dist/cjs/syncs/organizations/organizations.js.map +1 -1
- package/dist/cjs/syncs/ram/ramShares.d.ts.map +1 -1
- package/dist/cjs/syncs/ram/ramShares.js +1 -2
- package/dist/cjs/syncs/ram/ramShares.js.map +1 -1
- package/dist/cjs/syncs/s3/accountBpa.d.ts.map +1 -1
- package/dist/cjs/syncs/s3/accountBpa.js +2 -3
- package/dist/cjs/syncs/s3/accountBpa.js.map +1 -1
- package/dist/cjs/syncs/s3/buckets.js +3 -6
- package/dist/cjs/syncs/s3/buckets.js.map +1 -1
- package/dist/cjs/syncs/s3outposts/s3OutpostsSyncs.d.ts.map +1 -1
- package/dist/cjs/syncs/s3outposts/s3OutpostsSyncs.js +2 -3
- package/dist/cjs/syncs/s3outposts/s3OutpostsSyncs.js.map +1 -1
- package/dist/cjs/syncs/sso/ssoInstances.d.ts.map +1 -1
- package/dist/cjs/syncs/sso/ssoInstances.js +1 -2
- package/dist/cjs/syncs/sso/ssoInstances.js.map +1 -1
- package/dist/cjs/syncs/sync.d.ts +2 -0
- package/dist/cjs/syncs/sync.d.ts.map +1 -1
- package/dist/cjs/syncs/sync.js.map +1 -1
- package/dist/cjs/syncs/typedSync.d.ts +3 -2
- package/dist/cjs/syncs/typedSync.d.ts.map +1 -1
- package/dist/cjs/syncs/typedSync.js +4 -4
- package/dist/cjs/syncs/typedSync.js.map +1 -1
- package/dist/cjs/utils/json.d.ts +7 -0
- package/dist/cjs/utils/json.d.ts.map +1 -1
- package/dist/cjs/utils/json.js +17 -1
- package/dist/cjs/utils/json.js.map +1 -1
- package/dist/esm/aws/ClientPool.d.ts +21 -3
- package/dist/esm/aws/ClientPool.d.ts.map +1 -1
- package/dist/esm/aws/ClientPool.js +22 -0
- package/dist/esm/aws/ClientPool.js.map +1 -1
- package/dist/esm/awsConfigClients/AwsConfigClientContext.d.ts +15 -0
- package/dist/esm/awsConfigClients/AwsConfigClientContext.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/AwsConfigClientContext.js +3 -0
- package/dist/esm/awsConfigClients/AwsConfigClientContext.js.map +1 -0
- package/dist/esm/awsConfigClients/AwsConfigClientPool.d.ts +40 -0
- package/dist/esm/awsConfigClients/AwsConfigClientPool.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/AwsConfigClientPool.js +124 -0
- package/dist/esm/awsConfigClients/AwsConfigClientPool.js.map +1 -0
- package/dist/esm/awsConfigClients/awsConfigUtils.d.ts +30 -0
- package/dist/esm/awsConfigClients/awsConfigUtils.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/awsConfigUtils.js +59 -0
- package/dist/esm/awsConfigClients/awsConfigUtils.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigAccountClient.d.ts +18 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigAccountClient.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigAccountClient.js +56 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigAccountClient.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigApiGatewayClient.d.ts +21 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigApiGatewayClient.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigApiGatewayClient.js +33 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigApiGatewayClient.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigBackupClient.d.ts +18 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigBackupClient.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigBackupClient.js +94 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigBackupClient.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigDynamoDBClient.d.ts +21 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigDynamoDBClient.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigDynamoDBClient.js +56 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigDynamoDBClient.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigEC2Client.d.ts +18 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigEC2Client.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigEC2Client.js +57 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigEC2Client.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigEcrClient.d.ts +18 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigEcrClient.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigEcrClient.js +118 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigEcrClient.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigEfsClient.d.ts +18 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigEfsClient.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigEfsClient.js +85 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigEfsClient.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigEventBridgeClient.d.ts +19 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigEventBridgeClient.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigEventBridgeClient.js +103 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigEventBridgeClient.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigGlueClient.d.ts +21 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigGlueClient.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigGlueClient.js +40 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigGlueClient.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigIamClient.d.ts +18 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigIamClient.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigIamClient.js +435 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigIamClient.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigKafkaClient.d.ts +18 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigKafkaClient.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigKafkaClient.js +141 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigKafkaClient.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigKinesisClient.d.ts +22 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigKinesisClient.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigKinesisClient.js +83 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigKinesisClient.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigKmsClient.d.ts +18 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigKmsClient.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigKmsClient.js +101 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigKmsClient.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigLambdaClient.d.ts +22 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigLambdaClient.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigLambdaClient.js +154 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigLambdaClient.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigOpenSearchClient.d.ts +18 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigOpenSearchClient.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigOpenSearchClient.js +121 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigOpenSearchClient.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigOrganizationsClient.d.ts +22 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigOrganizationsClient.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigOrganizationsClient.js +170 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigOrganizationsClient.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigS3Client.d.ts +15 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigS3Client.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigS3Client.js +235 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigS3Client.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigS3ControlClient.d.ts +25 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigS3ControlClient.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigS3ControlClient.js +289 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigS3ControlClient.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigSNSClient.d.ts +18 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigSNSClient.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigSNSClient.js +110 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigSNSClient.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigSQSClient.d.ts +18 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigSQSClient.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigSQSClient.js +101 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigSQSClient.js.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigSecretsManagerClient.d.ts +21 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigSecretsManagerClient.d.ts.map +1 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigSecretsManagerClient.js +46 -0
- package/dist/esm/awsConfigClients/clients/AwsConfigSecretsManagerClient.js.map +1 -0
- package/dist/esm/config/config.d.ts +18 -0
- package/dist/esm/config/config.d.ts.map +1 -1
- package/dist/esm/config/config.js +15 -0
- package/dist/esm/config/config.js.map +1 -1
- package/dist/esm/config/dataSource.d.ts +11 -0
- package/dist/esm/config/dataSource.d.ts.map +1 -0
- package/dist/esm/config/dataSource.js +24 -0
- package/dist/esm/config/dataSource.js.map +1 -0
- package/dist/esm/customClients/AbstractClient.d.ts +45 -0
- package/dist/esm/customClients/AbstractClient.d.ts.map +1 -0
- package/dist/esm/customClients/AbstractClient.js +68 -0
- package/dist/esm/customClients/AbstractClient.js.map +1 -0
- package/dist/esm/customClients/AbstractClientPool.d.ts +53 -0
- package/dist/esm/customClients/AbstractClientPool.d.ts.map +1 -0
- package/dist/esm/customClients/AbstractClientPool.js +62 -0
- package/dist/esm/customClients/AbstractClientPool.js.map +1 -0
- package/dist/esm/customClients/AbstractCommand.d.ts +56 -0
- package/dist/esm/customClients/AbstractCommand.d.ts.map +1 -0
- package/dist/esm/customClients/AbstractCommand.js +16 -0
- package/dist/esm/customClients/AbstractCommand.js.map +1 -0
- package/dist/esm/customClients/ResourceNotFoundException.d.ts +23 -0
- package/dist/esm/customClients/ResourceNotFoundException.d.ts.map +1 -0
- package/dist/esm/customClients/ResourceNotFoundException.js +32 -0
- package/dist/esm/customClients/ResourceNotFoundException.js.map +1 -0
- package/dist/esm/download/download.d.ts.map +1 -1
- package/dist/esm/download/download.js +66 -29
- package/dist/esm/download/download.js.map +1 -1
- package/dist/esm/regions.d.ts +2 -1
- package/dist/esm/regions.d.ts.map +1 -1
- package/dist/esm/regions.js +2 -2
- package/dist/esm/regions.js.map +1 -1
- package/dist/esm/syncs/dynamodb/dynamoDbStreams.d.ts.map +1 -1
- package/dist/esm/syncs/dynamodb/dynamoDbStreams.js +2 -3
- package/dist/esm/syncs/dynamodb/dynamoDbStreams.js.map +1 -1
- package/dist/esm/syncs/ecr/ecrSyncs.d.ts.map +1 -1
- package/dist/esm/syncs/ecr/ecrSyncs.js +1 -2
- package/dist/esm/syncs/ecr/ecrSyncs.js.map +1 -1
- package/dist/esm/syncs/glue/catalogs.d.ts.map +1 -1
- package/dist/esm/syncs/glue/catalogs.js +1 -2
- package/dist/esm/syncs/glue/catalogs.js.map +1 -1
- package/dist/esm/syncs/iam/authorizationDetails.d.ts.map +1 -1
- package/dist/esm/syncs/iam/authorizationDetails.js +1 -2
- package/dist/esm/syncs/iam/authorizationDetails.js.map +1 -1
- package/dist/esm/syncs/lambda/lambda.d.ts.map +1 -1
- package/dist/esm/syncs/lambda/lambda.js +1 -2
- package/dist/esm/syncs/lambda/lambda.js.map +1 -1
- package/dist/esm/syncs/organizations/organizations.d.ts.map +1 -1
- package/dist/esm/syncs/organizations/organizations.js +1 -2
- package/dist/esm/syncs/organizations/organizations.js.map +1 -1
- package/dist/esm/syncs/ram/ramShares.d.ts.map +1 -1
- package/dist/esm/syncs/ram/ramShares.js +1 -2
- package/dist/esm/syncs/ram/ramShares.js.map +1 -1
- package/dist/esm/syncs/s3/accountBpa.d.ts.map +1 -1
- package/dist/esm/syncs/s3/accountBpa.js +2 -3
- package/dist/esm/syncs/s3/accountBpa.js.map +1 -1
- package/dist/esm/syncs/s3/buckets.js +3 -6
- package/dist/esm/syncs/s3/buckets.js.map +1 -1
- package/dist/esm/syncs/s3outposts/s3OutpostsSyncs.d.ts.map +1 -1
- package/dist/esm/syncs/s3outposts/s3OutpostsSyncs.js +2 -3
- package/dist/esm/syncs/s3outposts/s3OutpostsSyncs.js.map +1 -1
- package/dist/esm/syncs/sso/ssoInstances.d.ts.map +1 -1
- package/dist/esm/syncs/sso/ssoInstances.js +1 -2
- package/dist/esm/syncs/sso/ssoInstances.js.map +1 -1
- package/dist/esm/syncs/sync.d.ts +2 -0
- package/dist/esm/syncs/sync.d.ts.map +1 -1
- package/dist/esm/syncs/sync.js.map +1 -1
- package/dist/esm/syncs/typedSync.d.ts +3 -2
- package/dist/esm/syncs/typedSync.d.ts.map +1 -1
- package/dist/esm/syncs/typedSync.js +4 -4
- package/dist/esm/syncs/typedSync.js.map +1 -1
- package/dist/esm/utils/json.d.ts +7 -0
- package/dist/esm/utils/json.d.ts.map +1 -1
- package/dist/esm/utils/json.js +16 -1
- package/dist/esm/utils/json.js.map +1 -1
- package/package.json +2 -1
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { DynamoDBClient, ListTablesCommand, ListTagsOfResourceCommand } from '@aws-sdk/client-dynamodb';
|
|
2
|
+
import { AbstractClient } from '../../customClients/AbstractClient.js';
|
|
3
|
+
import { awsConfigCommand } from '../AwsConfigClientContext.js';
|
|
4
|
+
/**
|
|
5
|
+
* AWS Config-based DynamoDB client implementation
|
|
6
|
+
*
|
|
7
|
+
* Since policies are not available in AWS Config, this client provides limited functionality
|
|
8
|
+
* and returns empty results for all operations.
|
|
9
|
+
*/
|
|
10
|
+
export class AwsConfigDynamoDBClient extends AbstractClient {
|
|
11
|
+
constructor(options, customContext) {
|
|
12
|
+
super(options, customContext);
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Register all DynamoDB command implementations
|
|
16
|
+
*/
|
|
17
|
+
registerCommands() {
|
|
18
|
+
this.registerCommand(AwsConfigListTablesCommand);
|
|
19
|
+
this.registerCommand(AwsConfigListTagsOfResourceCommand);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
AwsConfigDynamoDBClient.clientName = DynamoDBClient.name;
|
|
23
|
+
/**
|
|
24
|
+
* Config-based implementation of DynamoDB ListTablesCommand
|
|
25
|
+
*
|
|
26
|
+
* Note: DynamoDB resource policies are not available in AWS Config.
|
|
27
|
+
* Without policy data, this service provides no meaningful value for IAM analysis.
|
|
28
|
+
* Returning empty result to indicate no actionable data available.
|
|
29
|
+
*/
|
|
30
|
+
const AwsConfigListTablesCommand = awsConfigCommand({
|
|
31
|
+
command: ListTablesCommand,
|
|
32
|
+
execute: async (input, context) => {
|
|
33
|
+
// Note: DynamoDB resource policies are not available in AWS Config.
|
|
34
|
+
// Without policy data, this service provides no meaningful value for IAM analysis.
|
|
35
|
+
return {
|
|
36
|
+
TableNames: [] // Empty - no actionable data without policies
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
/**
|
|
41
|
+
* Config-based implementation of DynamoDB ListTagsOfResourceCommand
|
|
42
|
+
*
|
|
43
|
+
* Note: DynamoDB resource policies are not available in AWS Config.
|
|
44
|
+
* Without policy data, tag information provides no meaningful value for IAM analysis.
|
|
45
|
+
* Returning empty result to indicate no actionable data available.
|
|
46
|
+
*/
|
|
47
|
+
const AwsConfigListTagsOfResourceCommand = awsConfigCommand({
|
|
48
|
+
command: ListTagsOfResourceCommand,
|
|
49
|
+
execute: async (input, context) => {
|
|
50
|
+
// Note: Without resource policies, tag information provides no IAM analysis value
|
|
51
|
+
return {
|
|
52
|
+
Tags: [] // Empty - no actionable data without policies
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
//# sourceMappingURL=AwsConfigDynamoDBClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigDynamoDBClient.js","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigDynamoDBClient.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,yBAAyB,EAC1B,MAAM,0BAA0B,CAAA;AAEjC,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAA;AACtE,OAAO,EAA0B,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAEvF;;;;;GAKG;AACH,MAAM,OAAO,uBAAwB,SAAQ,cAAsC;IAGjF,YACE,OAGC,EACD,aAAqC;QAErC,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;IAC/B,CAAC;IAED;;OAEG;IACO,gBAAgB;QACxB,IAAI,CAAC,eAAe,CAAC,0BAA0B,CAAC,CAAA;QAChD,IAAI,CAAC,eAAe,CAAC,kCAAkC,CAAC,CAAA;IAC1D,CAAC;;AAlBe,kCAAU,GAAG,cAAc,CAAC,IAAI,CAAA;AAqBlD;;;;;;GAMG;AACH,MAAM,0BAA0B,GAAG,gBAAgB,CAAC;IAClD,OAAO,EAAE,iBAAiB;IAC1B,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAChC,oEAAoE;QACpE,mFAAmF;QACnF,OAAO;YACL,UAAU,EAAE,EAAE,CAAC,8CAA8C;SAC9D,CAAA;IACH,CAAC;CACF,CAAC,CAAA;AAEF;;;;;;GAMG;AACH,MAAM,kCAAkC,GAAG,gBAAgB,CAAC;IAC1D,OAAO,EAAE,yBAAyB;IAClC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAChC,kFAAkF;QAClF,OAAO;YACL,IAAI,EAAE,EAAE,CAAC,8CAA8C;SACxD,CAAA;IACH,CAAC;CACF,CAAC,CAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { AwsCredentialIdentityWithMetaData } from '../../aws/coreAuth.js';
|
|
2
|
+
import { AbstractClient } from '../../customClients/AbstractClient.js';
|
|
3
|
+
import { AwsConfigClientContext } from '../AwsConfigClientContext.js';
|
|
4
|
+
/**
|
|
5
|
+
* AWS Config-based EC2 client implementation
|
|
6
|
+
*/
|
|
7
|
+
export declare class AwsConfigEC2Client extends AbstractClient<AwsConfigClientContext> {
|
|
8
|
+
static readonly clientName: string;
|
|
9
|
+
constructor(options: {
|
|
10
|
+
credentials: AwsCredentialIdentityWithMetaData;
|
|
11
|
+
region: string | undefined;
|
|
12
|
+
}, customContext: AwsConfigClientContext);
|
|
13
|
+
/**
|
|
14
|
+
* Register all EC2 command implementations
|
|
15
|
+
*/
|
|
16
|
+
protected registerCommands(): void;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=AwsConfigEC2Client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigEC2Client.d.ts","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigEC2Client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iCAAiC,EAAE,MAAM,uBAAuB,CAAA;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAA;AACtE,OAAO,EAAE,sBAAsB,EAAoB,MAAM,8BAA8B,CAAA;AAOvF;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAC5E,MAAM,CAAC,QAAQ,CAAC,UAAU,SAAiB;gBAGzC,OAAO,EAAE;QACP,WAAW,EAAE,iCAAiC,CAAA;QAC9C,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;KAC3B,EACD,aAAa,EAAE,sBAAsB;IAKvC;;OAEG;IACH,SAAS,CAAC,gBAAgB,IAAI,IAAI;CAGnC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { DescribeVpcEndpointsCommand, EC2Client } from '@aws-sdk/client-ec2';
|
|
2
|
+
import { AbstractClient } from '../../customClients/AbstractClient.js';
|
|
3
|
+
import { awsConfigCommand } from '../AwsConfigClientContext.js';
|
|
4
|
+
import { executeConfigQuery, parseConfigItem, resourceStatusWhereClause } from '../awsConfigUtils.js';
|
|
5
|
+
/**
|
|
6
|
+
* AWS Config-based EC2 client implementation
|
|
7
|
+
*/
|
|
8
|
+
export class AwsConfigEC2Client extends AbstractClient {
|
|
9
|
+
constructor(options, customContext) {
|
|
10
|
+
super(options, customContext);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Register all EC2 command implementations
|
|
14
|
+
*/
|
|
15
|
+
registerCommands() {
|
|
16
|
+
this.registerCommand(AwsConfigDescribeVpcEndpointsCommand);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
AwsConfigEC2Client.clientName = EC2Client.name;
|
|
20
|
+
/**
|
|
21
|
+
* Config-based implementation of EC2 DescribeVpcEndpointsCommand
|
|
22
|
+
* Retrieves VPC endpoint information including endpoint policies from AWS Config
|
|
23
|
+
*/
|
|
24
|
+
const AwsConfigDescribeVpcEndpointsCommand = awsConfigCommand({
|
|
25
|
+
command: DescribeVpcEndpointsCommand,
|
|
26
|
+
execute: async (input, context) => {
|
|
27
|
+
let query = `
|
|
28
|
+
SELECT
|
|
29
|
+
configuration.vpcEndpointId,
|
|
30
|
+
configuration.vpcEndpointType,
|
|
31
|
+
configuration.serviceName,
|
|
32
|
+
configuration.policyDocument
|
|
33
|
+
WHERE
|
|
34
|
+
resourceType = 'AWS::EC2::VPCEndpoint'
|
|
35
|
+
AND awsRegion = '${context.region}'
|
|
36
|
+
AND accountId = '${context.accountId}'
|
|
37
|
+
AND ${resourceStatusWhereClause}
|
|
38
|
+
`;
|
|
39
|
+
const results = await executeConfigQuery(query, context);
|
|
40
|
+
// Transform Config results to match AWS SDK format with only essential fields
|
|
41
|
+
const vpcEndpoints = results.map((resultString) => {
|
|
42
|
+
const { configItem } = parseConfigItem(resultString);
|
|
43
|
+
const config = configItem.configuration || {};
|
|
44
|
+
return {
|
|
45
|
+
VpcEndpointId: config.vpcEndpointId,
|
|
46
|
+
VpcEndpointType: config.vpcEndpointType,
|
|
47
|
+
ServiceName: config.serviceName,
|
|
48
|
+
PolicyDocument: config.policyDocument // The endpoint policy as a string
|
|
49
|
+
};
|
|
50
|
+
});
|
|
51
|
+
return {
|
|
52
|
+
VpcEndpoints: vpcEndpoints,
|
|
53
|
+
NextToken: undefined // Config doesn't support pagination in this context
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
//# sourceMappingURL=AwsConfigEC2Client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigEC2Client.js","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigEC2Client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAE5E,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAA;AACtE,OAAO,EAA0B,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AACvF,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,yBAAyB,EAC1B,MAAM,sBAAsB,CAAA;AAE7B;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,cAAsC;IAG5E,YACE,OAGC,EACD,aAAqC;QAErC,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;IAC/B,CAAC;IAED;;OAEG;IACO,gBAAgB;QACxB,IAAI,CAAC,eAAe,CAAC,oCAAoC,CAAC,CAAA;IAC5D,CAAC;;AAjBe,6BAAU,GAAG,SAAS,CAAC,IAAI,CAAA;AAoB7C;;;GAGG;AACH,MAAM,oCAAoC,GAAG,gBAAgB,CAAC;IAC5D,OAAO,EAAE,2BAA2B;IACpC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAChC,IAAI,KAAK,GAAG;;;;;;;;2BAQW,OAAO,CAAC,MAAM;2BACd,OAAO,CAAC,SAAS;cAC9B,yBAAyB;KAClC,CAAA;QAED,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QAExD,8EAA8E;QAC9E,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,YAAoB,EAAE,EAAE;YACxD,MAAM,EAAE,UAAU,EAAE,GAAG,eAAe,CAAC,YAAY,CAAC,CAAA;YACpD,MAAM,MAAM,GAAG,UAAU,CAAC,aAAa,IAAI,EAAE,CAAA;YAE7C,OAAO;gBACL,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,eAAe,EAAE,MAAM,CAAC,eAAe;gBACvC,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,cAAc,EAAE,MAAM,CAAC,cAAc,CAAC,kCAAkC;aACzE,CAAA;QACH,CAAC,CAAC,CAAA;QAEF,OAAO;YACL,YAAY,EAAE,YAAY;YAC1B,SAAS,EAAE,SAAS,CAAC,oDAAoD;SAC1E,CAAA;IACH,CAAC;CACF,CAAC,CAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { AwsCredentialIdentityWithMetaData } from '../../aws/coreAuth.js';
|
|
2
|
+
import { AbstractClient } from '../../customClients/AbstractClient.js';
|
|
3
|
+
import { AwsConfigClientContext } from '../AwsConfigClientContext.js';
|
|
4
|
+
/**
|
|
5
|
+
* Config-based ECR client implementation
|
|
6
|
+
*/
|
|
7
|
+
export declare class AwsConfigEcrClient extends AbstractClient<AwsConfigClientContext> {
|
|
8
|
+
static readonly clientName: string;
|
|
9
|
+
constructor(options: {
|
|
10
|
+
credentials: AwsCredentialIdentityWithMetaData;
|
|
11
|
+
region: string | undefined;
|
|
12
|
+
}, customContext: AwsConfigClientContext);
|
|
13
|
+
/**
|
|
14
|
+
* Register all ECR command implementations
|
|
15
|
+
*/
|
|
16
|
+
protected registerCommands(): void;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=AwsConfigEcrClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigEcrClient.d.ts","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigEcrClient.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,iCAAiC,EAAE,MAAM,uBAAuB,CAAA;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAA;AAEtE,OAAO,EAAE,sBAAsB,EAAoB,MAAM,8BAA8B,CAAA;AAOvF;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAC5E,MAAM,CAAC,QAAQ,CAAC,UAAU,SAAiB;gBAGzC,OAAO,EAAE;QACP,WAAW,EAAE,iCAAiC,CAAA;QAC9C,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;KAC3B,EACD,aAAa,EAAE,sBAAsB;IAKvC;;OAEG;IACH,SAAS,CAAC,gBAAgB,IAAI,IAAI;CAMnC"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { DescribeRepositoriesCommand, ECRClient, GetRegistryPolicyCommand, GetRepositoryPolicyCommand, ListTagsForResourceCommand } from '@aws-sdk/client-ecr';
|
|
2
|
+
import { AbstractClient } from '../../customClients/AbstractClient.js';
|
|
3
|
+
import { stringifyIfPresent } from '../../utils/json.js';
|
|
4
|
+
import { awsConfigCommand } from '../AwsConfigClientContext.js';
|
|
5
|
+
import { executeConfigQuery, parseConfigItem, resourceStatusWhereClause } from '../awsConfigUtils.js';
|
|
6
|
+
/**
|
|
7
|
+
* Config-based ECR client implementation
|
|
8
|
+
*/
|
|
9
|
+
export class AwsConfigEcrClient extends AbstractClient {
|
|
10
|
+
constructor(options, customContext) {
|
|
11
|
+
super(options, customContext);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Register all ECR command implementations
|
|
15
|
+
*/
|
|
16
|
+
registerCommands() {
|
|
17
|
+
this.registerCommand(AwsConfigDescribeRepositoriesCommand);
|
|
18
|
+
this.registerCommand(AwsConfigGetRepositoryPolicyCommand);
|
|
19
|
+
this.registerCommand(AwsConfigListTagsForResourceCommand);
|
|
20
|
+
this.registerCommand(AwsConfigGetRegistryPolicyCommand);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
AwsConfigEcrClient.clientName = ECRClient.name;
|
|
24
|
+
/**
|
|
25
|
+
* Config-based implementation of ECR GetRegistryPolicyCommand
|
|
26
|
+
* Uses AWS::ECR::RegistryPolicy resource type from Config
|
|
27
|
+
*/
|
|
28
|
+
const AwsConfigGetRegistryPolicyCommand = awsConfigCommand({
|
|
29
|
+
command: GetRegistryPolicyCommand,
|
|
30
|
+
execute: async (input, context) => {
|
|
31
|
+
const query = `
|
|
32
|
+
SELECT
|
|
33
|
+
configuration.PolicyText
|
|
34
|
+
WHERE
|
|
35
|
+
resourceType = 'AWS::ECR::RegistryPolicy'
|
|
36
|
+
AND accountId = '${context.accountId}'
|
|
37
|
+
AND awsRegion = '${context.region}'
|
|
38
|
+
AND ${resourceStatusWhereClause}
|
|
39
|
+
`;
|
|
40
|
+
const results = await executeConfigQuery(query, context);
|
|
41
|
+
if (results.length === 0) {
|
|
42
|
+
// Return undefined when no registry policy is configured
|
|
43
|
+
return {
|
|
44
|
+
policyText: undefined
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
const { configuration } = parseConfigItem(results[0]);
|
|
48
|
+
return {
|
|
49
|
+
policyText: configuration?.PolicyText ? JSON.stringify(configuration.PolicyText) : undefined
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
/**
|
|
54
|
+
* Config-based implementation of ECR DescribeRepositoriesCommand
|
|
55
|
+
*
|
|
56
|
+
* Note: Without repository policies, repository listing provides no meaningful IAM analysis value.
|
|
57
|
+
* ECR is primarily used for policy analysis, but policies are not available in Config.
|
|
58
|
+
* Returning empty result to indicate no actionable data available.
|
|
59
|
+
*/
|
|
60
|
+
const AwsConfigDescribeRepositoriesCommand = awsConfigCommand({
|
|
61
|
+
command: DescribeRepositoriesCommand,
|
|
62
|
+
execute: async (input, context) => {
|
|
63
|
+
const sql = `
|
|
64
|
+
SELECT
|
|
65
|
+
resourceId,
|
|
66
|
+
arn,
|
|
67
|
+
configuration.RepositoryName,
|
|
68
|
+
configuration.RepositoryPolicyText,
|
|
69
|
+
tags
|
|
70
|
+
WHERE
|
|
71
|
+
resourceType = 'AWS::ECR::Repository'
|
|
72
|
+
AND awsRegion = '${context.region}'
|
|
73
|
+
AND accountId = '${context.accountId}'
|
|
74
|
+
AND ${resourceStatusWhereClause}
|
|
75
|
+
`;
|
|
76
|
+
const results = await executeConfigQuery(sql, context);
|
|
77
|
+
const repositories = results.map((resultString) => {
|
|
78
|
+
const { configItem, configuration, tags } = parseConfigItem(resultString);
|
|
79
|
+
// Cache data that will be needed by other commands
|
|
80
|
+
context.putCache(configItem.resourceId, 'configuration', configuration);
|
|
81
|
+
// Also cache by ARN for ListTagsForResourceCommand
|
|
82
|
+
context.putCache(configItem.arn, 'configuration', configuration);
|
|
83
|
+
return {
|
|
84
|
+
repositoryName: configuration.RepositoryName
|
|
85
|
+
};
|
|
86
|
+
});
|
|
87
|
+
return {
|
|
88
|
+
repositories
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
/**
|
|
93
|
+
* Config-based implementation of ECR GetRepositoryPolicyCommand
|
|
94
|
+
*
|
|
95
|
+
*/
|
|
96
|
+
const AwsConfigGetRepositoryPolicyCommand = awsConfigCommand({
|
|
97
|
+
command: GetRepositoryPolicyCommand,
|
|
98
|
+
execute: async (input, context) => {
|
|
99
|
+
const configuration = context.getCache(input.repositoryName, 'configuration');
|
|
100
|
+
return {
|
|
101
|
+
policyText: stringifyIfPresent(configuration?.RepositoryPolicyText)
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
/**
|
|
106
|
+
* Config-based implementation of ECR ListTagsForResourceCommand
|
|
107
|
+
*
|
|
108
|
+
*/
|
|
109
|
+
const AwsConfigListTagsForResourceCommand = awsConfigCommand({
|
|
110
|
+
command: ListTagsForResourceCommand,
|
|
111
|
+
execute: async (input, context) => {
|
|
112
|
+
const tags = context.getCache(input.resourceArn, 'tags');
|
|
113
|
+
return {
|
|
114
|
+
tags: tags
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
});
|
|
118
|
+
//# sourceMappingURL=AwsConfigEcrClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigEcrClient.js","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigEcrClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { AwsCredentialIdentityWithMetaData } from '../../aws/coreAuth.js';
|
|
2
|
+
import { AbstractClient } from '../../customClients/AbstractClient.js';
|
|
3
|
+
import { AwsConfigClientContext } from '../AwsConfigClientContext.js';
|
|
4
|
+
/**
|
|
5
|
+
* AWS Config-based EFS client implementation
|
|
6
|
+
*/
|
|
7
|
+
export declare class AwsConfigEfsClient extends AbstractClient<AwsConfigClientContext> {
|
|
8
|
+
static readonly clientName: string;
|
|
9
|
+
constructor(options: {
|
|
10
|
+
credentials: AwsCredentialIdentityWithMetaData;
|
|
11
|
+
region: string | undefined;
|
|
12
|
+
}, customContext: AwsConfigClientContext);
|
|
13
|
+
/**
|
|
14
|
+
* Register all EFS command implementations
|
|
15
|
+
*/
|
|
16
|
+
protected registerCommands(): void;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=AwsConfigEfsClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigEfsClient.d.ts","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigEfsClient.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iCAAiC,EAAE,MAAM,uBAAuB,CAAA;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAA;AAEtE,OAAO,EAAE,sBAAsB,EAAoB,MAAM,8BAA8B,CAAA;AAOvF;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAC5E,MAAM,CAAC,QAAQ,CAAC,UAAU,SAAiB;gBAGzC,OAAO,EAAE;QACP,WAAW,EAAE,iCAAiC,CAAA;QAC9C,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;KAC3B,EACD,aAAa,EAAE,sBAAsB;IAKvC;;OAEG;IACH,SAAS,CAAC,gBAAgB,IAAI,IAAI;CAInC"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { DescribeFileSystemPolicyCommand, DescribeFileSystemsCommand, EFSClient } from '@aws-sdk/client-efs';
|
|
2
|
+
import { AbstractClient } from '../../customClients/AbstractClient.js';
|
|
3
|
+
import { stringifyIfPresent } from '../../utils/json.js';
|
|
4
|
+
import { awsConfigCommand } from '../AwsConfigClientContext.js';
|
|
5
|
+
import { executeConfigQuery, parseConfigItem, resourceStatusWhereClause } from '../awsConfigUtils.js';
|
|
6
|
+
/**
|
|
7
|
+
* AWS Config-based EFS client implementation
|
|
8
|
+
*/
|
|
9
|
+
export class AwsConfigEfsClient extends AbstractClient {
|
|
10
|
+
constructor(options, customContext) {
|
|
11
|
+
super(options, customContext);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Register all EFS command implementations
|
|
15
|
+
*/
|
|
16
|
+
registerCommands() {
|
|
17
|
+
this.registerCommand(AwsConfigDescribeFileSystemsCommand);
|
|
18
|
+
this.registerCommand(AwsConfigDescribeFileSystemPolicyCommand);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
AwsConfigEfsClient.clientName = EFSClient.name;
|
|
22
|
+
/**
|
|
23
|
+
* Config-based implementation of EFS DescribeFileSystemPolicyCommand
|
|
24
|
+
* Uses configuration.FileSystemPolicy from AWS Config
|
|
25
|
+
*/
|
|
26
|
+
const AwsConfigDescribeFileSystemPolicyCommand = awsConfigCommand({
|
|
27
|
+
command: DescribeFileSystemPolicyCommand,
|
|
28
|
+
execute: async (input, context) => {
|
|
29
|
+
const configuration = context.getCache(input.FileSystemId, 'configuration');
|
|
30
|
+
return {
|
|
31
|
+
FileSystemId: input.FileSystemId,
|
|
32
|
+
Policy: stringifyIfPresent(configuration?.FileSystemPolicy)
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
/**
|
|
37
|
+
* Config-based implementation of EFS DescribeFileSystemsCommand
|
|
38
|
+
* Retrieves file system information from AWS Config with minimal required fields
|
|
39
|
+
*/
|
|
40
|
+
const AwsConfigDescribeFileSystemsCommand = awsConfigCommand({
|
|
41
|
+
command: DescribeFileSystemsCommand,
|
|
42
|
+
execute: async (input, context) => {
|
|
43
|
+
let query = `
|
|
44
|
+
SELECT
|
|
45
|
+
resourceId,
|
|
46
|
+
arn,
|
|
47
|
+
configuration.Name,
|
|
48
|
+
configuration.AvailabilityZoneId,
|
|
49
|
+
configuration.KmsKeyId,
|
|
50
|
+
configuration.Encrypted,
|
|
51
|
+
configuration.CreationTime,
|
|
52
|
+
configuration.FileSystemPolicy,
|
|
53
|
+
tags
|
|
54
|
+
WHERE
|
|
55
|
+
resourceType = 'AWS::EFS::FileSystem'
|
|
56
|
+
AND awsRegion = '${context.region}'
|
|
57
|
+
AND accountId = '${context.accountId}'
|
|
58
|
+
AND ${resourceStatusWhereClause}
|
|
59
|
+
`;
|
|
60
|
+
// Add specific file system ID filter if provided
|
|
61
|
+
if (input.FileSystemId) {
|
|
62
|
+
query += ` AND resourceId = '${input.FileSystemId}'`;
|
|
63
|
+
}
|
|
64
|
+
const results = await executeConfigQuery(query, context);
|
|
65
|
+
// Transform Config results to match AWS SDK format with minimal required fields
|
|
66
|
+
const fileSystems = results.map((resultString) => {
|
|
67
|
+
const { configItem, configuration, tags } = parseConfigItem(resultString);
|
|
68
|
+
// Cache data that will be needed by other commands
|
|
69
|
+
context.putCache(configItem.resourceId, 'configuration', configuration);
|
|
70
|
+
return {
|
|
71
|
+
FileSystemId: configItem.resourceId,
|
|
72
|
+
FileSystemArn: configItem.arn,
|
|
73
|
+
Name: configuration.Name,
|
|
74
|
+
Encrypted: configuration.Encrypted || false,
|
|
75
|
+
KmsKeyId: configuration.KmsKeyId,
|
|
76
|
+
AvailabilityZoneId: configuration.AvailabilityZoneId,
|
|
77
|
+
Tags: tags
|
|
78
|
+
};
|
|
79
|
+
});
|
|
80
|
+
return {
|
|
81
|
+
FileSystems: fileSystems
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
//# sourceMappingURL=AwsConfigEfsClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigEfsClient.js","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigEfsClient.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,+BAA+B,EAC/B,0BAA0B,EAC1B,SAAS,EAEV,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAA;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,EAA0B,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AACvF,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,yBAAyB,EAC1B,MAAM,sBAAsB,CAAA;AAE7B;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,cAAsC;IAG5E,YACE,OAGC,EACD,aAAqC;QAErC,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;IAC/B,CAAC;IAED;;OAEG;IACO,gBAAgB;QACxB,IAAI,CAAC,eAAe,CAAC,mCAAmC,CAAC,CAAA;QACzD,IAAI,CAAC,eAAe,CAAC,wCAAwC,CAAC,CAAA;IAChE,CAAC;;AAlBe,6BAAU,GAAG,SAAS,CAAC,IAAI,CAAA;AAqB7C;;;GAGG;AACH,MAAM,wCAAwC,GAAG,gBAAgB,CAAC;IAChE,OAAO,EAAE,+BAA+B;IACxC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAChC,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAa,EAAE,eAAe,CAAC,CAAA;QAE5E,OAAO;YACL,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,MAAM,EAAE,kBAAkB,CAAC,aAAa,EAAE,gBAAgB,CAAC;SAC5D,CAAA;IACH,CAAC;CACF,CAAC,CAAA;AAEF;;;GAGG;AACH,MAAM,mCAAmC,GAAG,gBAAgB,CAAC;IAC3D,OAAO,EAAE,0BAA0B;IACnC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAChC,IAAI,KAAK,GAAG;;;;;;;;;;;;;2BAaW,OAAO,CAAC,MAAM;2BACd,OAAO,CAAC,SAAS;cAC9B,yBAAyB;KAClC,CAAA;QAED,iDAAiD;QACjD,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YACvB,KAAK,IAAI,sBAAsB,KAAK,CAAC,YAAY,GAAG,CAAA;QACtD,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QAExD,gFAAgF;QAChF,MAAM,WAAW,GAA4B,OAAO,CAAC,GAAG,CAAC,CAAC,YAAoB,EAAE,EAAE;YAChF,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,GAAG,eAAe,CAAC,YAAY,CAAC,CAAA;YAEzE,mDAAmD;YACnD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,EAAE,eAAe,EAAE,aAAa,CAAC,CAAA;YAEvE,OAAO;gBACL,YAAY,EAAE,UAAU,CAAC,UAAU;gBACnC,aAAa,EAAE,UAAU,CAAC,GAAG;gBAC7B,IAAI,EAAE,aAAa,CAAC,IAAI;gBACxB,SAAS,EAAE,aAAa,CAAC,SAAS,IAAI,KAAK;gBAC3C,QAAQ,EAAE,aAAa,CAAC,QAAQ;gBAChC,kBAAkB,EAAE,aAAa,CAAC,kBAAkB;gBACpD,IAAI,EAAE,IAAI;aACc,CAAA;QAC5B,CAAC,CAAC,CAAA;QAEF,OAAO;YACL,WAAW,EAAE,WAAW;SACzB,CAAA;IACH,CAAC;CACF,CAAC,CAAA"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { AwsCredentialIdentityWithMetaData } from '../../aws/coreAuth.js';
|
|
2
|
+
import { AbstractClient } from '../../customClients/AbstractClient.js';
|
|
3
|
+
import { AwsConfigClientContext } from '../AwsConfigClientContext.js';
|
|
4
|
+
/**
|
|
5
|
+
* AWS Config-based EventBridge client implementation
|
|
6
|
+
*
|
|
7
|
+
*/
|
|
8
|
+
export declare class AwsConfigEventBridgeClient extends AbstractClient<AwsConfigClientContext> {
|
|
9
|
+
static readonly clientName: string;
|
|
10
|
+
constructor(options: {
|
|
11
|
+
credentials: AwsCredentialIdentityWithMetaData;
|
|
12
|
+
region: string | undefined;
|
|
13
|
+
}, customContext: AwsConfigClientContext);
|
|
14
|
+
/**
|
|
15
|
+
* Register all EventBridge command implementations
|
|
16
|
+
*/
|
|
17
|
+
protected registerCommands(): void;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=AwsConfigEventBridgeClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigEventBridgeClient.d.ts","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigEventBridgeClient.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iCAAiC,EAAE,MAAM,uBAAuB,CAAA;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAA;AACtE,OAAO,EAAE,sBAAsB,EAAoB,MAAM,8BAA8B,CAAA;AAOvF;;;GAGG;AACH,qBAAa,0BAA2B,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IACpF,MAAM,CAAC,QAAQ,CAAC,UAAU,SAAyB;gBAGjD,OAAO,EAAE;QACP,WAAW,EAAE,iCAAiC,CAAA;QAC9C,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;KAC3B,EACD,aAAa,EAAE,sBAAsB;IAKvC;;OAEG;IACH,SAAS,CAAC,gBAAgB,IAAI,IAAI;CAKnC"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { DescribeEventBusCommand, EventBridgeClient, ListEventBusesCommand, ListTagsForResourceCommand } from '@aws-sdk/client-eventbridge';
|
|
2
|
+
import { AbstractClient } from '../../customClients/AbstractClient.js';
|
|
3
|
+
import { awsConfigCommand } from '../AwsConfigClientContext.js';
|
|
4
|
+
import { executeConfigQuery, parseConfigItem, resourceStatusWhereClause } from '../awsConfigUtils.js';
|
|
5
|
+
/**
|
|
6
|
+
* AWS Config-based EventBridge client implementation
|
|
7
|
+
*
|
|
8
|
+
*/
|
|
9
|
+
export class AwsConfigEventBridgeClient extends AbstractClient {
|
|
10
|
+
constructor(options, customContext) {
|
|
11
|
+
super(options, customContext);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Register all EventBridge command implementations
|
|
15
|
+
*/
|
|
16
|
+
registerCommands() {
|
|
17
|
+
this.registerCommand(AwsConfigDescribeEventBusCommand);
|
|
18
|
+
this.registerCommand(AwsConfigListEventBusesCommand);
|
|
19
|
+
this.registerCommand(AwsConfigListTagsForResourceCommand);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
AwsConfigEventBridgeClient.clientName = EventBridgeClient.name;
|
|
23
|
+
/**
|
|
24
|
+
* Config-based implementation of EventBridge DescribeEventBusCommand
|
|
25
|
+
*
|
|
26
|
+
* Maps Events::EventBus Config data to EventBridge DescribeEventBusCommand output format.
|
|
27
|
+
* Returns event bus policy from configuration.Policy field for IAM analysis.
|
|
28
|
+
*/
|
|
29
|
+
const AwsConfigDescribeEventBusCommand = awsConfigCommand({
|
|
30
|
+
command: DescribeEventBusCommand,
|
|
31
|
+
execute: async (input, context) => {
|
|
32
|
+
const eventBusName = input.Name || 'default';
|
|
33
|
+
const configuration = context.getCache(eventBusName, 'configuration');
|
|
34
|
+
return {
|
|
35
|
+
Name: configuration.Name || eventBusName,
|
|
36
|
+
Arn: configuration.Arn,
|
|
37
|
+
Policy: configuration.Policy,
|
|
38
|
+
// Note: KmsKeyIdentifier is not available in Config schema
|
|
39
|
+
KmsKeyIdentifier: undefined
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
/**
|
|
44
|
+
* Config-based implementation of EventBridge ListEventBusesCommand
|
|
45
|
+
*
|
|
46
|
+
* Maps Events::EventBus Config data to EventBridge ListEventBusesCommand output format.
|
|
47
|
+
* Returns event bus listing for IAM analysis and resource discovery.
|
|
48
|
+
*/
|
|
49
|
+
const AwsConfigListEventBusesCommand = awsConfigCommand({
|
|
50
|
+
command: ListEventBusesCommand,
|
|
51
|
+
execute: async (input, context) => {
|
|
52
|
+
const query = `
|
|
53
|
+
SELECT
|
|
54
|
+
arn,
|
|
55
|
+
resourceId,
|
|
56
|
+
resourceName,
|
|
57
|
+
configuration.Name,
|
|
58
|
+
configuration.Arn,
|
|
59
|
+
configuration.EventSourceName,
|
|
60
|
+
configuration.Policy,
|
|
61
|
+
tags
|
|
62
|
+
WHERE
|
|
63
|
+
resourceType = 'AWS::Events::EventBus'
|
|
64
|
+
AND awsRegion = '${context.region}'
|
|
65
|
+
AND accountId = '${context.accountId}'
|
|
66
|
+
AND ${resourceStatusWhereClause}
|
|
67
|
+
`;
|
|
68
|
+
const results = await executeConfigQuery(query, context);
|
|
69
|
+
const eventBuses = results.map((result) => {
|
|
70
|
+
const { configItem, configuration, tags } = parseConfigItem(result);
|
|
71
|
+
// Cache data that will be needed by other commands
|
|
72
|
+
const eventBusName = configuration.Name || configItem.resourceName;
|
|
73
|
+
context.putCache(eventBusName, 'configuration', configuration);
|
|
74
|
+
context.putCache(configItem.arn, 'tags', tags);
|
|
75
|
+
return {
|
|
76
|
+
Name: configuration.Name,
|
|
77
|
+
Arn: configuration.Arn,
|
|
78
|
+
EventSourceName: configuration.EventSourceName
|
|
79
|
+
};
|
|
80
|
+
});
|
|
81
|
+
return {
|
|
82
|
+
EventBuses: eventBuses
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
/**
|
|
87
|
+
* Config-based implementation of EventBridge ListTagsForResourceCommand
|
|
88
|
+
*
|
|
89
|
+
* Maps Events::EventBus Config tag data to EventBridge ListTagsForResourceCommand output format.
|
|
90
|
+
* Returns event bus tags for resource identification and compliance analysis.
|
|
91
|
+
*/
|
|
92
|
+
const AwsConfigListTagsForResourceCommand = awsConfigCommand({
|
|
93
|
+
command: ListTagsForResourceCommand,
|
|
94
|
+
execute: async (input, context) => {
|
|
95
|
+
// Extract event bus name from ARN or use the ARN directly for resourceName lookup
|
|
96
|
+
const resourceArn = input.ResourceARN;
|
|
97
|
+
const tags = context.getCache(resourceArn, 'tags');
|
|
98
|
+
return {
|
|
99
|
+
Tags: tags
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
//# sourceMappingURL=AwsConfigEventBridgeClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigEventBridgeClient.js","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigEventBridgeClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { AwsCredentialIdentityWithMetaData } from '../../aws/coreAuth.js';
|
|
2
|
+
import { AbstractClient } from '../../customClients/AbstractClient.js';
|
|
3
|
+
import { AwsConfigClientContext } from '../AwsConfigClientContext.js';
|
|
4
|
+
/**
|
|
5
|
+
* AWS Config-based Glue client implementation
|
|
6
|
+
*
|
|
7
|
+
* Since policies are not available in AWS Config, this client provides limited functionality
|
|
8
|
+
* and returns empty results for all operations.
|
|
9
|
+
*/
|
|
10
|
+
export declare class AwsConfigGlueClient extends AbstractClient<AwsConfigClientContext> {
|
|
11
|
+
static readonly clientName: string;
|
|
12
|
+
constructor(options: {
|
|
13
|
+
credentials: AwsCredentialIdentityWithMetaData;
|
|
14
|
+
region: string | undefined;
|
|
15
|
+
}, customContext: AwsConfigClientContext);
|
|
16
|
+
/**
|
|
17
|
+
* Register all Glue command implementations
|
|
18
|
+
*/
|
|
19
|
+
protected registerCommands(): void;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=AwsConfigGlueClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigGlueClient.d.ts","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigGlueClient.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iCAAiC,EAAE,MAAM,uBAAuB,CAAA;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAA;AACtE,OAAO,EAAE,sBAAsB,EAAoB,MAAM,8BAA8B,CAAA;AAEvF;;;;;GAKG;AACH,qBAAa,mBAAoB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAC7E,MAAM,CAAC,QAAQ,CAAC,UAAU,SAAkB;gBAG1C,OAAO,EAAE;QACP,WAAW,EAAE,iCAAiC,CAAA;QAC9C,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;KAC3B,EACD,aAAa,EAAE,sBAAsB;IAKvC;;OAEG;IACH,SAAS,CAAC,gBAAgB,IAAI,IAAI;CAGnC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { GetResourcePolicyCommand, GlueClient } from '@aws-sdk/client-glue';
|
|
2
|
+
import { AbstractClient } from '../../customClients/AbstractClient.js';
|
|
3
|
+
import { awsConfigCommand } from '../AwsConfigClientContext.js';
|
|
4
|
+
/**
|
|
5
|
+
* AWS Config-based Glue client implementation
|
|
6
|
+
*
|
|
7
|
+
* Since policies are not available in AWS Config, this client provides limited functionality
|
|
8
|
+
* and returns empty results for all operations.
|
|
9
|
+
*/
|
|
10
|
+
export class AwsConfigGlueClient extends AbstractClient {
|
|
11
|
+
constructor(options, customContext) {
|
|
12
|
+
super(options, customContext);
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Register all Glue command implementations
|
|
16
|
+
*/
|
|
17
|
+
registerCommands() {
|
|
18
|
+
this.registerCommand(AwsConfigGetResourcePolicyCommand);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
AwsConfigGlueClient.clientName = GlueClient.name;
|
|
22
|
+
/**
|
|
23
|
+
* Config-based implementation of Glue GetResourcePolicyCommand
|
|
24
|
+
*
|
|
25
|
+
* Note: The Glue data catalog resource and its policies are not tracked by AWS Config.
|
|
26
|
+
* AWS Config only tracks individual Glue jobs, transforms, and classifiers - not the catalog itself.
|
|
27
|
+
* Therefore, no catalog policy analysis is possible from Config data.
|
|
28
|
+
*/
|
|
29
|
+
const AwsConfigGetResourcePolicyCommand = awsConfigCommand({
|
|
30
|
+
command: GetResourcePolicyCommand,
|
|
31
|
+
execute: async (input, context) => {
|
|
32
|
+
// Note: The Glue data catalog resource and its policies are not tracked by AWS Config.
|
|
33
|
+
// AWS Config only tracks individual Glue jobs, transforms, and classifiers - not the catalog itself.
|
|
34
|
+
// Therefore, no catalog policy analysis is possible from Config data.
|
|
35
|
+
return {
|
|
36
|
+
PolicyInJson: undefined // Empty - no catalog policy data available in Config
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
//# sourceMappingURL=AwsConfigGlueClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigGlueClient.js","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigGlueClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAE3E,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAA;AACtE,OAAO,EAA0B,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAEvF;;;;;GAKG;AACH,MAAM,OAAO,mBAAoB,SAAQ,cAAsC;IAG7E,YACE,OAGC,EACD,aAAqC;QAErC,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;IAC/B,CAAC;IAED;;OAEG;IACO,gBAAgB;QACxB,IAAI,CAAC,eAAe,CAAC,iCAAiC,CAAC,CAAA;IACzD,CAAC;;AAjBe,8BAAU,GAAG,UAAU,CAAC,IAAI,CAAA;AAoB9C;;;;;;GAMG;AACH,MAAM,iCAAiC,GAAG,gBAAgB,CAAC;IACzD,OAAO,EAAE,wBAAwB;IACjC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAChC,uFAAuF;QACvF,qGAAqG;QACrG,sEAAsE;QACtE,OAAO;YACL,YAAY,EAAE,SAAS,CAAC,qDAAqD;SAC9E,CAAA;IACH,CAAC;CACF,CAAC,CAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { AwsCredentialIdentityWithMetaData } from '../../aws/coreAuth.js';
|
|
2
|
+
import { AbstractClient } from '../../customClients/AbstractClient.js';
|
|
3
|
+
import { AwsConfigClientContext } from '../AwsConfigClientContext.js';
|
|
4
|
+
/**
|
|
5
|
+
* AWS Config-based IAM client implementation
|
|
6
|
+
*/
|
|
7
|
+
export declare class AwsConfigIamClient extends AbstractClient<AwsConfigClientContext> {
|
|
8
|
+
static readonly clientName: string;
|
|
9
|
+
constructor(options: {
|
|
10
|
+
credentials: AwsCredentialIdentityWithMetaData;
|
|
11
|
+
region: string | undefined;
|
|
12
|
+
}, customContext: AwsConfigClientContext);
|
|
13
|
+
/**
|
|
14
|
+
* Register all IAM command implementations
|
|
15
|
+
*/
|
|
16
|
+
protected registerCommands(): void;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=AwsConfigIamClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigIamClient.d.ts","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigIamClient.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,iCAAiC,EAAE,MAAM,uBAAuB,CAAA;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAA;AACtE,OAAO,EAAE,sBAAsB,EAAoB,MAAM,8BAA8B,CAAA;AAOvF;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAC5E,MAAM,CAAC,QAAQ,CAAC,UAAU,SAAiB;gBAGzC,OAAO,EAAE;QACP,WAAW,EAAE,iCAAiC,CAAA;QAC9C,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;KAC3B,EACD,aAAa,EAAE,sBAAsB;IAKvC;;OAEG;IACH,SAAS,CAAC,gBAAgB,IAAI,IAAI;CASnC"}
|