@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,15 @@
|
|
|
1
|
+
import { ConfigServiceClient } from '@aws-sdk/client-config-service';
|
|
2
|
+
import { AwsCredentialIdentityWithMetaData } from '../aws/coreAuth.js';
|
|
3
|
+
/**
|
|
4
|
+
* Custom client context for AWS Config-based implementations
|
|
5
|
+
*/
|
|
6
|
+
export interface AwsConfigClientContext {
|
|
7
|
+
configClient: ConfigServiceClient;
|
|
8
|
+
aggregatorName: string;
|
|
9
|
+
configCredentials: AwsCredentialIdentityWithMetaData;
|
|
10
|
+
}
|
|
11
|
+
export declare const awsConfigCommand: <const Cmd extends import("../syncs/typedSync.js").CommandConstructors>(options: {
|
|
12
|
+
command: Cmd;
|
|
13
|
+
execute: (input: import("../syncs/typedSync.js").ExtractInputType<Cmd>, context: import("../customClients/AbstractCommand.js").CommandContext & AwsConfigClientContext) => Promise<Partial<import("../syncs/typedSync.js").ExtractOutputType<Cmd>> | undefined>;
|
|
14
|
+
}) => import("../customClients/AbstractCommand.js").CustomCommand<Cmd, AwsConfigClientContext>;
|
|
15
|
+
//# sourceMappingURL=AwsConfigClientContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigClientContext.d.ts","sourceRoot":"","sources":["../../../src/awsConfigClients/AwsConfigClientContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,EAAE,iCAAiC,EAAE,MAAM,oBAAoB,CAAA;AAGtE;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,YAAY,EAAE,mBAAmB,CAAA;IACjC,cAAc,EAAE,MAAM,CAAA;IACtB,iBAAiB,EAAE,iCAAiC,CAAA;CACrD;AAED,eAAO,MAAM,gBAAgB;;;8FAAiD,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigClientContext.js","sourceRoot":"","sources":["../../../src/awsConfigClients/AwsConfigClientContext.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAA;AAW1E,MAAM,CAAC,MAAM,gBAAgB,GAAG,oBAAoB,EAA0B,CAAA"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { AwsCredentialIdentityWithMetaData } from '../aws/coreAuth.js';
|
|
2
|
+
import { AuthConfig } from '../config/config.js';
|
|
3
|
+
import { ClientConstructor } from '../customClients/AbstractClient.js';
|
|
4
|
+
import { AbstractClientPool } from '../customClients/AbstractClientPool.js';
|
|
5
|
+
import { AwsService } from '../services.js';
|
|
6
|
+
import { AwsConfigClientContext } from './AwsConfigClientContext.js';
|
|
7
|
+
interface AwsConfigClientPoolOptions {
|
|
8
|
+
aggregatorName: string;
|
|
9
|
+
region: string;
|
|
10
|
+
accountId?: string;
|
|
11
|
+
auth?: AuthConfig;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* AWS Config-based client pool using the new abstract base classes
|
|
15
|
+
*/
|
|
16
|
+
export declare class AwsConfigClientPool extends AbstractClientPool<AwsConfigClientContext> {
|
|
17
|
+
private readonly options;
|
|
18
|
+
private configClient;
|
|
19
|
+
private aggregatorName;
|
|
20
|
+
private configCredentials;
|
|
21
|
+
/**
|
|
22
|
+
* Constructor
|
|
23
|
+
*
|
|
24
|
+
* @param options Options for the Config client pool
|
|
25
|
+
*/
|
|
26
|
+
constructor(options: AwsConfigClientPoolOptions);
|
|
27
|
+
init(): Promise<void>;
|
|
28
|
+
requiresAwsCredentials(): boolean;
|
|
29
|
+
/**
|
|
30
|
+
* Register the default supported Config-based clients
|
|
31
|
+
*/
|
|
32
|
+
protected registerDefaultClients(): void;
|
|
33
|
+
/**
|
|
34
|
+
* Get custom client context for Config-based implementations
|
|
35
|
+
*/
|
|
36
|
+
protected getClientContext(ClientType: ClientConstructor<any>, credentials: AwsCredentialIdentityWithMetaData, region: string | undefined, endpoint: string | undefined): AwsConfigClientContext;
|
|
37
|
+
isSyncSupported(service: AwsService, syncName: string, region: string): boolean;
|
|
38
|
+
}
|
|
39
|
+
export {};
|
|
40
|
+
//# sourceMappingURL=AwsConfigClientPool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigClientPool.d.ts","sourceRoot":"","sources":["../../../src/awsConfigClients/AwsConfigClientPool.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iCAAiC,EAA4B,MAAM,oBAAoB,CAAA;AAChG,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAA;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAA;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAuBpE,UAAU,0BAA0B;IAClC,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,UAAU,CAAA;CAClB;AAgBD;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,kBAAkB,CAAC,sBAAsB,CAAC;IAUrE,OAAO,CAAC,QAAQ,CAAC,OAAO;IATpC,OAAO,CAAC,YAAY,CAAiC;IACrD,OAAO,CAAC,cAAc,CAAoB;IAC1C,OAAO,CAAC,iBAAiB,CAA+C;IAExE;;;;OAIG;gBAC0B,OAAO,EAAE,0BAA0B;IAInD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAoB3B,sBAAsB,IAAI,OAAO;IAIxC;;OAEG;IACH,SAAS,CAAC,sBAAsB,IAAI,IAAI;IAwBxC;;OAEG;IACH,SAAS,CAAC,gBAAgB,CACxB,UAAU,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAClC,WAAW,EAAE,iCAAiC,EAC9C,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,QAAQ,EAAE,MAAM,GAAG,SAAS,GAC3B,sBAAsB;IAQlB,eAAe,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;CAkBvF"}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { ConfigServiceClient } from '@aws-sdk/client-config-service';
|
|
2
|
+
import { getCredentials } from '../aws/auth.js';
|
|
3
|
+
import { AwsClientPool } from '../aws/ClientPool.js';
|
|
4
|
+
import { getNewInitialCredentials } from '../aws/coreAuth.js';
|
|
5
|
+
import { AbstractClientPool } from '../customClients/AbstractClientPool.js';
|
|
6
|
+
import { AwsConfigAccountClient } from './clients/AwsConfigAccountClient.js';
|
|
7
|
+
import { AwsConfigApiGatewayClient } from './clients/AwsConfigApiGatewayClient.js';
|
|
8
|
+
import { AwsConfigBackupClient } from './clients/AwsConfigBackupClient.js';
|
|
9
|
+
import { AwsConfigDynamoDBClient } from './clients/AwsConfigDynamoDBClient.js';
|
|
10
|
+
import { AwsConfigEC2Client } from './clients/AwsConfigEC2Client.js';
|
|
11
|
+
import { AwsConfigEcrClient } from './clients/AwsConfigEcrClient.js';
|
|
12
|
+
import { AwsConfigEfsClient } from './clients/AwsConfigEfsClient.js';
|
|
13
|
+
import { AwsConfigEventBridgeClient } from './clients/AwsConfigEventBridgeClient.js';
|
|
14
|
+
import { AwsConfigGlueClient } from './clients/AwsConfigGlueClient.js';
|
|
15
|
+
import { AwsConfigIamClient } from './clients/AwsConfigIamClient.js';
|
|
16
|
+
import { AwsConfigKafkaClient } from './clients/AwsConfigKafkaClient.js';
|
|
17
|
+
import { AwsConfigKinesisClient } from './clients/AwsConfigKinesisClient.js';
|
|
18
|
+
import { AwsConfigKmsClient } from './clients/AwsConfigKmsClient.js';
|
|
19
|
+
import { AwsConfigLambdaClient } from './clients/AwsConfigLambdaClient.js';
|
|
20
|
+
import { AwsConfigOpenSearchClient } from './clients/AwsConfigOpenSearchClient.js';
|
|
21
|
+
import { AwsConfigOrganizationsClient } from './clients/AwsConfigOrganizationsClient.js';
|
|
22
|
+
import { AwsConfigS3Client } from './clients/AwsConfigS3Client.js';
|
|
23
|
+
import { AwsConfigS3ControlClient } from './clients/AwsConfigS3ControlClient.js';
|
|
24
|
+
import { AwsConfigSecretsManagerClient } from './clients/AwsConfigSecretsManagerClient.js';
|
|
25
|
+
import { AwsConfigSNSClient } from './clients/AwsConfigSNSClient.js';
|
|
26
|
+
import { AwsConfigSQSClient } from './clients/AwsConfigSQSClient.js';
|
|
27
|
+
const fullySupportedServices = new Set([
|
|
28
|
+
'backup',
|
|
29
|
+
'ec2',
|
|
30
|
+
'ecr',
|
|
31
|
+
'elasticfilesystem',
|
|
32
|
+
'es',
|
|
33
|
+
'events',
|
|
34
|
+
'iam',
|
|
35
|
+
'kafka',
|
|
36
|
+
'kms',
|
|
37
|
+
'sns',
|
|
38
|
+
'sqs'
|
|
39
|
+
]);
|
|
40
|
+
/**
|
|
41
|
+
* AWS Config-based client pool using the new abstract base classes
|
|
42
|
+
*/
|
|
43
|
+
export class AwsConfigClientPool extends AbstractClientPool {
|
|
44
|
+
/**
|
|
45
|
+
* Constructor
|
|
46
|
+
*
|
|
47
|
+
* @param options Options for the Config client pool
|
|
48
|
+
*/
|
|
49
|
+
constructor(options) {
|
|
50
|
+
super();
|
|
51
|
+
this.options = options;
|
|
52
|
+
}
|
|
53
|
+
async init() {
|
|
54
|
+
this.aggregatorName = this.options.aggregatorName;
|
|
55
|
+
const authConfig = this.options.auth;
|
|
56
|
+
const defaultCredentials = await getNewInitialCredentials(authConfig, {
|
|
57
|
+
phase: 'initial AwsConfig credentials'
|
|
58
|
+
});
|
|
59
|
+
let credentials = defaultCredentials;
|
|
60
|
+
if (this.options.accountId || authConfig?.role) {
|
|
61
|
+
const targetAccountId = this.options.accountId || credentials.accountId;
|
|
62
|
+
credentials = await getCredentials(targetAccountId, authConfig);
|
|
63
|
+
}
|
|
64
|
+
this.configCredentials = credentials;
|
|
65
|
+
this.configClient = AwsClientPool.defaultInstance.client(ConfigServiceClient, credentials, this.options.region, undefined);
|
|
66
|
+
}
|
|
67
|
+
requiresAwsCredentials() {
|
|
68
|
+
return false;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Register the default supported Config-based clients
|
|
72
|
+
*/
|
|
73
|
+
registerDefaultClients() {
|
|
74
|
+
this.registerClient(AwsConfigAccountClient);
|
|
75
|
+
this.registerClient(AwsConfigApiGatewayClient);
|
|
76
|
+
this.registerClient(AwsConfigBackupClient);
|
|
77
|
+
this.registerClient(AwsConfigDynamoDBClient);
|
|
78
|
+
this.registerClient(AwsConfigEC2Client);
|
|
79
|
+
this.registerClient(AwsConfigEcrClient);
|
|
80
|
+
this.registerClient(AwsConfigEfsClient);
|
|
81
|
+
this.registerClient(AwsConfigEventBridgeClient);
|
|
82
|
+
this.registerClient(AwsConfigGlueClient);
|
|
83
|
+
this.registerClient(AwsConfigIamClient);
|
|
84
|
+
this.registerClient(AwsConfigKafkaClient);
|
|
85
|
+
this.registerClient(AwsConfigKinesisClient);
|
|
86
|
+
this.registerClient(AwsConfigKmsClient);
|
|
87
|
+
this.registerClient(AwsConfigLambdaClient);
|
|
88
|
+
this.registerClient(AwsConfigOpenSearchClient);
|
|
89
|
+
this.registerClient(AwsConfigOrganizationsClient);
|
|
90
|
+
this.registerClient(AwsConfigS3Client);
|
|
91
|
+
this.registerClient(AwsConfigS3ControlClient);
|
|
92
|
+
this.registerClient(AwsConfigSecretsManagerClient);
|
|
93
|
+
this.registerClient(AwsConfigSNSClient);
|
|
94
|
+
this.registerClient(AwsConfigSQSClient);
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Get custom client context for Config-based implementations
|
|
98
|
+
*/
|
|
99
|
+
getClientContext(ClientType, credentials, region, endpoint) {
|
|
100
|
+
return {
|
|
101
|
+
configClient: this.configClient,
|
|
102
|
+
aggregatorName: this.aggregatorName,
|
|
103
|
+
configCredentials: this.configCredentials
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
isSyncSupported(service, syncName, region) {
|
|
107
|
+
const fullySupported = fullySupportedServices.has(service);
|
|
108
|
+
if (fullySupported) {
|
|
109
|
+
return true;
|
|
110
|
+
}
|
|
111
|
+
if (service === 'lambda') {
|
|
112
|
+
return syncName === 'lambdaFunctions';
|
|
113
|
+
}
|
|
114
|
+
if (service === 's3') {
|
|
115
|
+
return ['generalPurposeBuckets', 'accessPoints', 'accountBpa'].includes(syncName);
|
|
116
|
+
}
|
|
117
|
+
if (service === 's3express') {
|
|
118
|
+
return syncName === 'directoryBuckets';
|
|
119
|
+
}
|
|
120
|
+
// By default, nothing is supported
|
|
121
|
+
return false;
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
//# sourceMappingURL=AwsConfigClientPool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigClientPool.js","sourceRoot":"","sources":["../../../src/awsConfigClients/AwsConfigClientPool.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { AwsConfigClientContext } from './AwsConfigClientContext.js';
|
|
2
|
+
/**
|
|
3
|
+
* Common utility functions for AWS Config-based command implementations
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Execute AWS Config query and return all paginated results
|
|
7
|
+
*
|
|
8
|
+
* @param query The AWS Config query string
|
|
9
|
+
* @param context The AWS Config client context
|
|
10
|
+
*
|
|
11
|
+
* @returns An array of results
|
|
12
|
+
*/
|
|
13
|
+
export declare function executeConfigQuery(query: string, context: AwsConfigClientContext): Promise<string[]>;
|
|
14
|
+
/**
|
|
15
|
+
* Parse a Config result item into structured data
|
|
16
|
+
*
|
|
17
|
+
* @param configItemString The JSON string of the config item
|
|
18
|
+
* @returns An object containing the parsed config item and its components
|
|
19
|
+
*/
|
|
20
|
+
export declare function parseConfigItem(configItemString: string): {
|
|
21
|
+
configItem: any;
|
|
22
|
+
configuration: any | undefined;
|
|
23
|
+
supplementaryConfiguration: any | undefined;
|
|
24
|
+
tags: any;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Where clause to filter for resources that are active/discovered
|
|
28
|
+
*/
|
|
29
|
+
export declare const resourceStatusWhereClause = "configurationItemStatus IN ('ResourceDiscovered', 'OK')";
|
|
30
|
+
//# sourceMappingURL=awsConfigUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"awsConfigUtils.d.ts","sourceRoot":"","sources":["../../../src/awsConfigClients/awsConfigUtils.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAEpE;;GAEG;AAEH;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,MAAM,EAAE,CAAC,CAyBnB;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,gBAAgB,EAAE,MAAM,GAAG;IACzD,UAAU,EAAE,GAAG,CAAA;IACf,aAAa,EAAE,GAAG,GAAG,SAAS,CAAA;IAC9B,0BAA0B,EAAE,GAAG,GAAG,SAAS,CAAA;IAC3C,IAAI,EAAE,GAAG,CAAA;CACV,CAkBA;AAED;;GAEG;AACH,eAAO,MAAM,yBAAyB,4DAA4D,CAAA"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { SelectAggregateResourceConfigCommand } from '@aws-sdk/client-config-service';
|
|
2
|
+
/**
|
|
3
|
+
* Common utility functions for AWS Config-based command implementations
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Execute AWS Config query and return all paginated results
|
|
7
|
+
*
|
|
8
|
+
* @param query The AWS Config query string
|
|
9
|
+
* @param context The AWS Config client context
|
|
10
|
+
*
|
|
11
|
+
* @returns An array of results
|
|
12
|
+
*/
|
|
13
|
+
export async function executeConfigQuery(query, context) {
|
|
14
|
+
const { configClient } = context;
|
|
15
|
+
const allResults = [];
|
|
16
|
+
let nextToken = undefined;
|
|
17
|
+
do {
|
|
18
|
+
const result = await configClient.send(new SelectAggregateResourceConfigCommand({
|
|
19
|
+
ConfigurationAggregatorName: context.aggregatorName,
|
|
20
|
+
Expression: query,
|
|
21
|
+
MaxResults: 100,
|
|
22
|
+
NextToken: nextToken
|
|
23
|
+
}));
|
|
24
|
+
// Add current page results to the collection
|
|
25
|
+
if (result.Results) {
|
|
26
|
+
allResults.push(...result.Results);
|
|
27
|
+
}
|
|
28
|
+
// Update nextToken for next iteration
|
|
29
|
+
nextToken = result.NextToken;
|
|
30
|
+
} while (nextToken);
|
|
31
|
+
return allResults;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Parse a Config result item into structured data
|
|
35
|
+
*
|
|
36
|
+
* @param configItemString The JSON string of the config item
|
|
37
|
+
* @returns An object containing the parsed config item and its components
|
|
38
|
+
*/
|
|
39
|
+
export function parseConfigItem(configItemString) {
|
|
40
|
+
const configItem = JSON.parse(configItemString);
|
|
41
|
+
let configuration = configItem.configuration;
|
|
42
|
+
if (typeof configuration === 'string') {
|
|
43
|
+
configuration = JSON.parse(configuration || '{}');
|
|
44
|
+
}
|
|
45
|
+
let supplementaryConfiguration = configItem.supplementaryConfiguration;
|
|
46
|
+
if (typeof supplementaryConfiguration === 'string') {
|
|
47
|
+
supplementaryConfiguration = JSON.parse(supplementaryConfiguration || '{}');
|
|
48
|
+
}
|
|
49
|
+
let tags = configItem.tags;
|
|
50
|
+
if (typeof tags === 'string') {
|
|
51
|
+
tags = JSON.parse(tags || '{}');
|
|
52
|
+
}
|
|
53
|
+
return { configItem, configuration, supplementaryConfiguration, tags };
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Where clause to filter for resources that are active/discovered
|
|
57
|
+
*/
|
|
58
|
+
export const resourceStatusWhereClause = `configurationItemStatus IN ('ResourceDiscovered', 'OK')`;
|
|
59
|
+
//# sourceMappingURL=awsConfigUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"awsConfigUtils.js","sourceRoot":"","sources":["../../../src/awsConfigClients/awsConfigUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oCAAoC,EAErC,MAAM,gCAAgC,CAAA;AAGvC;;GAEG;AAEH;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAAa,EACb,OAA+B;IAE/B,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAA;IAChC,MAAM,UAAU,GAAa,EAAE,CAAA;IAC/B,IAAI,SAAS,GAAuB,SAAS,CAAA;IAE7C,GAAG,CAAC;QACF,MAAM,MAAM,GAA+C,MAAM,YAAY,CAAC,IAAI,CAChF,IAAI,oCAAoC,CAAC;YACvC,2BAA2B,EAAE,OAAO,CAAC,cAAc;YACnD,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,GAAG;YACf,SAAS,EAAE,SAAS;SACrB,CAAC,CACH,CAAA;QAED,6CAA6C;QAC7C,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;QACpC,CAAC;QAED,sCAAsC;QACtC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;IAC9B,CAAC,QAAQ,SAAS,EAAC;IAEnB,OAAO,UAAU,CAAA;AACnB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,gBAAwB;IAMtD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;IAC/C,IAAI,aAAa,GAAG,UAAU,CAAC,aAAa,CAAA;IAC5C,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;QACtC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,IAAI,IAAI,CAAC,CAAA;IACnD,CAAC;IAED,IAAI,0BAA0B,GAAG,UAAU,CAAC,0BAA0B,CAAA;IACtE,IAAI,OAAO,0BAA0B,KAAK,QAAQ,EAAE,CAAC;QACnD,0BAA0B,GAAG,IAAI,CAAC,KAAK,CAAC,0BAA0B,IAAI,IAAI,CAAC,CAAA;IAC7E,CAAC;IAED,IAAI,IAAI,GAAG,UAAU,CAAC,IAAI,CAAA;IAC1B,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,CAAA;IACjC,CAAC;IAED,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,0BAA0B,EAAE,IAAI,EAAE,CAAA;AACxE,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,yDAAyD,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
|
+
* Account client implementation using AWS Config as data source
|
|
6
|
+
*/
|
|
7
|
+
export declare class AwsConfigAccountClient 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 Account command implementations
|
|
15
|
+
*/
|
|
16
|
+
protected registerCommands(): void;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=AwsConfigAccountClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigAccountClient.d.ts","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigAccountClient.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;AAGvF;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAChF,MAAM,CAAC,QAAQ,CAAC,UAAU,SAAqB;gBAG7C,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;CA8CnC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { AccountClient, ListRegionsCommand } from '@aws-sdk/client-account';
|
|
2
|
+
import { AbstractClient } from '../../customClients/AbstractClient.js';
|
|
3
|
+
import { awsConfigCommand } from '../AwsConfigClientContext.js';
|
|
4
|
+
import { executeConfigQuery, resourceStatusWhereClause } from '../awsConfigUtils.js';
|
|
5
|
+
/**
|
|
6
|
+
* Account client implementation using AWS Config as data source
|
|
7
|
+
*/
|
|
8
|
+
export class AwsConfigAccountClient extends AbstractClient {
|
|
9
|
+
constructor(options, customContext) {
|
|
10
|
+
super(options, customContext);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Register all Account command implementations
|
|
14
|
+
*/
|
|
15
|
+
registerCommands() {
|
|
16
|
+
this.registerCommand(awsConfigCommand({
|
|
17
|
+
command: ListRegionsCommand,
|
|
18
|
+
execute: async (input, context) => {
|
|
19
|
+
const globalRegion = 'us-east-1';
|
|
20
|
+
const partition = context.partition;
|
|
21
|
+
if (partition !== 'aws') {
|
|
22
|
+
throw new Error(`Unknown global region for partition ${partition}. Please file an issue with the default region for your partition.`);
|
|
23
|
+
}
|
|
24
|
+
const accountId = context.accountId;
|
|
25
|
+
const query = `
|
|
26
|
+
SELECT
|
|
27
|
+
awsRegion
|
|
28
|
+
WHERE
|
|
29
|
+
accountId = '${accountId}'
|
|
30
|
+
AND ${resourceStatusWhereClause}
|
|
31
|
+
GROUP BY
|
|
32
|
+
awsRegion
|
|
33
|
+
`;
|
|
34
|
+
const results = await executeConfigQuery(query, context);
|
|
35
|
+
// Convert the results to the expected format
|
|
36
|
+
const uniqueRegions = new Set();
|
|
37
|
+
results.forEach((resultString) => {
|
|
38
|
+
const result = JSON.parse(resultString);
|
|
39
|
+
if (result.awsRegion === 'global') {
|
|
40
|
+
uniqueRegions.add(globalRegion);
|
|
41
|
+
}
|
|
42
|
+
else if (result.awsRegion) {
|
|
43
|
+
uniqueRegions.add(result.awsRegion);
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
return {
|
|
47
|
+
Regions: Array.from(uniqueRegions).map((regionName) => ({
|
|
48
|
+
RegionName: regionName
|
|
49
|
+
}))
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
}));
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
AwsConfigAccountClient.clientName = AccountClient.name;
|
|
56
|
+
//# sourceMappingURL=AwsConfigAccountClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigAccountClient.js","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigAccountClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE3E,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAA;AACtE,OAAO,EAA0B,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AACvF,OAAO,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAA;AAEpF;;GAEG;AACH,MAAM,OAAO,sBAAuB,SAAQ,cAAsC;IAGhF,YACE,OAGC,EACD,aAAqC;QAErC,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;IAC/B,CAAC;IAED;;OAEG;IACO,gBAAgB;QACxB,IAAI,CAAC,eAAe,CAClB,gBAAgB,CAAC;YACf,OAAO,EAAE,kBAAkB;YAC3B,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBAChC,MAAM,YAAY,GAAG,WAAW,CAAA;gBAChC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;gBACnC,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;oBACxB,MAAM,IAAI,KAAK,CACb,uCAAuC,SAAS,oEAAoE,CACrH,CAAA;gBACH,CAAC;gBAED,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;gBACnC,MAAM,KAAK,GAAG;;;;6BAIK,SAAS;oBAClB,yBAAyB;;;WAGlC,CAAA;gBAED,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;gBAExD,6CAA6C;gBAC7C,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAA;gBACvC,OAAO,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;oBAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;oBACvC,IAAI,MAAM,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;wBAClC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;oBACjC,CAAC;yBAAM,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;wBAC5B,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;oBACrC,CAAC;gBACH,CAAC,CAAC,CAAA;gBAEF,OAAO;oBACL,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;wBACtD,UAAU,EAAE,UAAU;qBACvB,CAAC,CAAC;iBACJ,CAAA;YACH,CAAC;SACF,CAAC,CACH,CAAA;IACH,CAAC;;AA5De,iCAAU,GAAG,aAAa,CAAC,IAAI,CAAA"}
|
|
@@ -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
|
+
* API Gateway client implementation using AWS Config as data source
|
|
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 AwsConfigApiGatewayClient 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 API Gateway command implementations
|
|
18
|
+
*/
|
|
19
|
+
protected registerCommands(): void;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=AwsConfigApiGatewayClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigApiGatewayClient.d.ts","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigApiGatewayClient.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,yBAA0B,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IACnF,MAAM,CAAC,QAAQ,CAAC,UAAU,SAAwB;gBAGhD,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,33 @@
|
|
|
1
|
+
import { APIGatewayClient, GetRestApisCommand } from '@aws-sdk/client-api-gateway';
|
|
2
|
+
import { AbstractClient } from '../../customClients/AbstractClient.js';
|
|
3
|
+
import { awsConfigCommand } from '../AwsConfigClientContext.js';
|
|
4
|
+
/**
|
|
5
|
+
* API Gateway client implementation using AWS Config as data source
|
|
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 AwsConfigApiGatewayClient extends AbstractClient {
|
|
11
|
+
constructor(options, customContext) {
|
|
12
|
+
super(options, customContext);
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Register all API Gateway command implementations
|
|
16
|
+
*/
|
|
17
|
+
registerCommands() {
|
|
18
|
+
this.registerCommand(AwsConfigGetRestApisCommand);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
AwsConfigApiGatewayClient.clientName = APIGatewayClient.name;
|
|
22
|
+
/**
|
|
23
|
+
* Config-based implementation of API Gateway GetRestApisCommand
|
|
24
|
+
*/
|
|
25
|
+
const AwsConfigGetRestApisCommand = awsConfigCommand({
|
|
26
|
+
command: GetRestApisCommand,
|
|
27
|
+
execute: async (input, context) => {
|
|
28
|
+
return {
|
|
29
|
+
items: [] // API Gateway is not fully supported in Config, so return empty result
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
//# sourceMappingURL=AwsConfigApiGatewayClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigApiGatewayClient.js","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigApiGatewayClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAElF,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAA;AACtE,OAAO,EAA0B,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAEvF;;;;;GAKG;AACH,MAAM,OAAO,yBAA0B,SAAQ,cAAsC;IAGnF,YACE,OAGC,EACD,aAAqC;QAErC,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;IAC/B,CAAC;IAED;;OAEG;IACO,gBAAgB;QACxB,IAAI,CAAC,eAAe,CAAC,2BAA2B,CAAC,CAAA;IACnD,CAAC;;AAjBe,oCAAU,GAAG,gBAAgB,CAAC,IAAI,CAAA;AAoBpD;;GAEG;AACH,MAAM,2BAA2B,GAAG,gBAAgB,CAAC;IACnD,OAAO,EAAE,kBAAkB;IAC3B,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAChC,OAAO;YACL,KAAK,EAAE,EAAE,CAAC,uEAAuE;SAClF,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 Backup client implementation
|
|
6
|
+
*/
|
|
7
|
+
export declare class AwsConfigBackupClient 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 Backup command implementations
|
|
15
|
+
*/
|
|
16
|
+
protected registerCommands(): void;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=AwsConfigBackupClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigBackupClient.d.ts","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigBackupClient.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,qBAAsB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAC/E,MAAM,CAAC,QAAQ,CAAC,UAAU,SAAoB;gBAG5C,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,94 @@
|
|
|
1
|
+
import { BackupClient, GetBackupVaultAccessPolicyCommand, ListBackupVaultsCommand, ListTagsCommand } from '@aws-sdk/client-backup';
|
|
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 Backup client implementation
|
|
8
|
+
*/
|
|
9
|
+
export class AwsConfigBackupClient extends AbstractClient {
|
|
10
|
+
constructor(options, customContext) {
|
|
11
|
+
super(options, customContext);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Register all Backup command implementations
|
|
15
|
+
*/
|
|
16
|
+
registerCommands() {
|
|
17
|
+
this.registerCommand(AwsConfigGetBackupVaultAccessPolicyCommand);
|
|
18
|
+
this.registerCommand(AwsConfigListBackupVaultsCommand);
|
|
19
|
+
this.registerCommand(AwsConfigListTagsCommand);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
AwsConfigBackupClient.clientName = BackupClient.name;
|
|
23
|
+
/**
|
|
24
|
+
* Config-based implementation of Backup ListBackupVaultsCommand
|
|
25
|
+
* Retrieves backup vault list from AWS Config
|
|
26
|
+
*/
|
|
27
|
+
const AwsConfigListBackupVaultsCommand = awsConfigCommand({
|
|
28
|
+
command: ListBackupVaultsCommand,
|
|
29
|
+
execute: async (input, context) => {
|
|
30
|
+
const query = `
|
|
31
|
+
SELECT
|
|
32
|
+
resourceName,
|
|
33
|
+
arn,
|
|
34
|
+
configuration.BackupVaultName,
|
|
35
|
+
configuration.BackupVaultArn,
|
|
36
|
+
configuration.EncryptionKeyArn,
|
|
37
|
+
configuration.AccessPolicy,
|
|
38
|
+
resourceCreationTime,
|
|
39
|
+
tags
|
|
40
|
+
WHERE
|
|
41
|
+
resourceType = 'AWS::Backup::BackupVault'
|
|
42
|
+
AND awsRegion = '${context.region}'
|
|
43
|
+
AND accountId = '${context.accountId}'
|
|
44
|
+
AND ${resourceStatusWhereClause}
|
|
45
|
+
`;
|
|
46
|
+
const results = await executeConfigQuery(query, context);
|
|
47
|
+
// Transform Config results to match AWS SDK format
|
|
48
|
+
const vaultList = results
|
|
49
|
+
.map((resultString) => {
|
|
50
|
+
const { configItem, configuration, tags } = parseConfigItem(resultString);
|
|
51
|
+
// Cache data that will be needed by other commands
|
|
52
|
+
const vaultName = configuration?.BackupVaultName || configItem.resourceName;
|
|
53
|
+
context.putCache(vaultName, 'configuration', configuration);
|
|
54
|
+
context.putCache(configItem.arn, 'tags', tags);
|
|
55
|
+
return {
|
|
56
|
+
BackupVaultName: vaultName,
|
|
57
|
+
BackupVaultArn: configuration?.BackupVaultArn || configItem.arn,
|
|
58
|
+
EncryptionKeyArn: configuration?.EncryptionKeyArn
|
|
59
|
+
};
|
|
60
|
+
})
|
|
61
|
+
.filter((vault) => vault.BackupVaultName); // Filter out any malformed entries
|
|
62
|
+
return {
|
|
63
|
+
BackupVaultList: vaultList,
|
|
64
|
+
NextToken: undefined // Config doesn't support pagination in this context
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
});
|
|
68
|
+
/**
|
|
69
|
+
* Config-based implementation of Backup GetBackupVaultAccessPolicyCommand
|
|
70
|
+
* Uses configuration.AccessPolicy from AWS Config BackupVault resource
|
|
71
|
+
*/
|
|
72
|
+
const AwsConfigGetBackupVaultAccessPolicyCommand = awsConfigCommand({
|
|
73
|
+
command: GetBackupVaultAccessPolicyCommand,
|
|
74
|
+
execute: async (input, context) => {
|
|
75
|
+
const configuration = context.getCache(input.BackupVaultName, 'configuration');
|
|
76
|
+
return {
|
|
77
|
+
BackupVaultName: input.BackupVaultName,
|
|
78
|
+
BackupVaultArn: configuration.BackupVaultArn,
|
|
79
|
+
Policy: stringifyIfPresent(configuration?.AccessPolicy)
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
/**
|
|
84
|
+
* Config-based implementation of Backup ListTagsCommand
|
|
85
|
+
* Retrieves tags for a specific backup vault from AWS Config
|
|
86
|
+
*/
|
|
87
|
+
const AwsConfigListTagsCommand = awsConfigCommand({
|
|
88
|
+
command: ListTagsCommand,
|
|
89
|
+
execute: async (input, context) => {
|
|
90
|
+
const tags = context.getCache(input.ResourceArn, 'tags');
|
|
91
|
+
return { Tags: tags };
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
//# sourceMappingURL=AwsConfigBackupClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigBackupClient.js","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigBackupClient.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 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 declare class AwsConfigDynamoDBClient 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 DynamoDB command implementations
|
|
18
|
+
*/
|
|
19
|
+
protected registerCommands(): void;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=AwsConfigDynamoDBClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigDynamoDBClient.d.ts","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigDynamoDBClient.ts"],"names":[],"mappings":"AAKA,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,uBAAwB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IACjF,MAAM,CAAC,QAAQ,CAAC,UAAU,SAAsB;gBAG9C,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"}
|