@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,83 @@
|
|
|
1
|
+
import { DescribeStreamCommand, GetResourcePolicyCommand, KinesisClient, ListStreamsCommand, ListTagsForStreamCommand } from '@aws-sdk/client-kinesis';
|
|
2
|
+
import { AbstractClient } from '../../customClients/AbstractClient.js';
|
|
3
|
+
import { awsConfigCommand } from '../AwsConfigClientContext.js';
|
|
4
|
+
/**
|
|
5
|
+
* AWS Config-based Kinesis client implementation
|
|
6
|
+
* Returns empty responses since stream policies are not tracked in AWS Config
|
|
7
|
+
*
|
|
8
|
+
* Since policies are not available in AWS Config, this client provides limited functionality
|
|
9
|
+
* and returns empty results for all operations.
|
|
10
|
+
*/
|
|
11
|
+
export class AwsConfigKinesisClient extends AbstractClient {
|
|
12
|
+
constructor(options, customContext) {
|
|
13
|
+
super(options, customContext);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Register all Kinesis command implementations
|
|
17
|
+
*/
|
|
18
|
+
registerCommands() {
|
|
19
|
+
this.registerCommand(AwsConfigListStreamsCommand);
|
|
20
|
+
this.registerCommand(AwsConfigDescribeStreamCommand);
|
|
21
|
+
this.registerCommand(AwsConfigGetResourcePolicyCommand);
|
|
22
|
+
this.registerCommand(AwsConfigListTagsForStreamCommand);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
AwsConfigKinesisClient.clientName = KinesisClient.name;
|
|
26
|
+
/**
|
|
27
|
+
* Config-based implementation of Kinesis ListStreamsCommand
|
|
28
|
+
* Returns empty list since stream policies are not available for analysis
|
|
29
|
+
*/
|
|
30
|
+
const AwsConfigListStreamsCommand = awsConfigCommand({
|
|
31
|
+
command: ListStreamsCommand,
|
|
32
|
+
execute: async (input, context) => {
|
|
33
|
+
// Return empty list since we can't analyze stream policies from Config
|
|
34
|
+
return {
|
|
35
|
+
StreamNames: [],
|
|
36
|
+
HasMoreStreams: false
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
/**
|
|
41
|
+
* Config-based implementation of Kinesis DescribeStreamCommand
|
|
42
|
+
* Returns minimal response since stream policies are not available for analysis
|
|
43
|
+
*/
|
|
44
|
+
const AwsConfigDescribeStreamCommand = awsConfigCommand({
|
|
45
|
+
command: DescribeStreamCommand,
|
|
46
|
+
execute: async (input, context) => {
|
|
47
|
+
const { StreamName, StreamARN } = input;
|
|
48
|
+
if (!StreamName && !StreamARN) {
|
|
49
|
+
throw new Error('StreamName or StreamARN is required for DescribeStreamCommand');
|
|
50
|
+
}
|
|
51
|
+
// Return minimal stream description since we can't analyze policies
|
|
52
|
+
return {};
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
/**
|
|
56
|
+
* Config-based implementation of Kinesis GetResourcePolicyCommand
|
|
57
|
+
* Returns empty result as stream policies are not tracked in AWS Config
|
|
58
|
+
*/
|
|
59
|
+
const AwsConfigGetResourcePolicyCommand = awsConfigCommand({
|
|
60
|
+
command: GetResourcePolicyCommand,
|
|
61
|
+
execute: async (input, context) => {
|
|
62
|
+
// Stream resource policies are not available in AWS Config
|
|
63
|
+
// Return empty response to maintain compatibility
|
|
64
|
+
return {
|
|
65
|
+
Policy: undefined
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
/**
|
|
70
|
+
* Config-based implementation of Kinesis ListTagsForStreamCommand
|
|
71
|
+
* Returns empty tags since stream policies are not available for analysis
|
|
72
|
+
*/
|
|
73
|
+
const AwsConfigListTagsForStreamCommand = awsConfigCommand({
|
|
74
|
+
command: ListTagsForStreamCommand,
|
|
75
|
+
execute: async (input, context) => {
|
|
76
|
+
// Return empty tags since we can't analyze stream policies
|
|
77
|
+
return {
|
|
78
|
+
Tags: [],
|
|
79
|
+
HasMoreTags: false
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
//# sourceMappingURL=AwsConfigKinesisClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigKinesisClient.js","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigKinesisClient.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,aAAa,EACb,kBAAkB,EAClB,wBAAwB,EACzB,MAAM,yBAAyB,CAAA;AAEhC,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAA;AACtE,OAAO,EAA0B,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAEvF;;;;;;GAMG;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,CAAC,2BAA2B,CAAC,CAAA;QACjD,IAAI,CAAC,eAAe,CAAC,8BAA8B,CAAC,CAAA;QACpD,IAAI,CAAC,eAAe,CAAC,iCAAiC,CAAC,CAAA;QACvD,IAAI,CAAC,eAAe,CAAC,iCAAiC,CAAC,CAAA;IACzD,CAAC;;AApBe,iCAAU,GAAG,aAAa,CAAC,IAAI,CAAA;AAuBjD;;;GAGG;AACH,MAAM,2BAA2B,GAAG,gBAAgB,CAAC;IACnD,OAAO,EAAE,kBAAkB;IAC3B,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAChC,uEAAuE;QACvE,OAAO;YACL,WAAW,EAAE,EAAE;YACf,cAAc,EAAE,KAAK;SACtB,CAAA;IACH,CAAC;CACF,CAAC,CAAA;AAEF;;;GAGG;AACH,MAAM,8BAA8B,GAAG,gBAAgB,CAAC;IACtD,OAAO,EAAE,qBAAqB;IAC9B,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAChC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,KAAK,CAAA;QAEvC,IAAI,CAAC,UAAU,IAAI,CAAC,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAA;QAClF,CAAC;QAED,oEAAoE;QACpE,OAAO,EAAE,CAAA;IACX,CAAC;CACF,CAAC,CAAA;AAEF;;;GAGG;AACH,MAAM,iCAAiC,GAAG,gBAAgB,CAAC;IACzD,OAAO,EAAE,wBAAwB;IACjC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAChC,2DAA2D;QAC3D,kDAAkD;QAClD,OAAO;YACL,MAAM,EAAE,SAAS;SAClB,CAAA;IACH,CAAC;CACF,CAAC,CAAA;AAEF;;;GAGG;AACH,MAAM,iCAAiC,GAAG,gBAAgB,CAAC;IACzD,OAAO,EAAE,wBAAwB;IACjC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAChC,2DAA2D;QAC3D,OAAO;YACL,IAAI,EAAE,EAAE;YACR,WAAW,EAAE,KAAK;SACnB,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
|
+
* KMS client implementation using AWS Config as data source
|
|
6
|
+
*/
|
|
7
|
+
export declare class AwsConfigKmsClient 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 KMS command implementations
|
|
15
|
+
*/
|
|
16
|
+
protected registerCommands(): void;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=AwsConfigKmsClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigKmsClient.d.ts","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigKmsClient.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;CAKnC"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { GetKeyPolicyCommand, KMSClient, ListKeysCommand, ListResourceTagsCommand } from '@aws-sdk/client-kms';
|
|
2
|
+
import { AbstractClient } from '../../customClients/AbstractClient.js';
|
|
3
|
+
import { ResourceNotFoundException } from '../../customClients/ResourceNotFoundException.js';
|
|
4
|
+
import { awsConfigCommand } from '../AwsConfigClientContext.js';
|
|
5
|
+
import { executeConfigQuery, parseConfigItem, resourceStatusWhereClause } from '../awsConfigUtils.js';
|
|
6
|
+
/**
|
|
7
|
+
* KMS client implementation using AWS Config as data source
|
|
8
|
+
*/
|
|
9
|
+
export class AwsConfigKmsClient extends AbstractClient {
|
|
10
|
+
constructor(options, customContext) {
|
|
11
|
+
super(options, customContext);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Register all KMS command implementations
|
|
15
|
+
*/
|
|
16
|
+
registerCommands() {
|
|
17
|
+
this.registerCommand(AwsConfigListKeysCommand);
|
|
18
|
+
this.registerCommand(AwsConfigGetKeyPolicyCommand);
|
|
19
|
+
this.registerCommand(AwsConfigListResourceTagsCommand);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
AwsConfigKmsClient.clientName = KMSClient.name;
|
|
23
|
+
/**
|
|
24
|
+
* Config-based implementation of KMS ListKeysCommand
|
|
25
|
+
*/
|
|
26
|
+
const AwsConfigListKeysCommand = awsConfigCommand({
|
|
27
|
+
command: ListKeysCommand,
|
|
28
|
+
execute: async (input, context) => {
|
|
29
|
+
const query = `
|
|
30
|
+
SELECT
|
|
31
|
+
arn,
|
|
32
|
+
resourceId,
|
|
33
|
+
supplementaryConfiguration.Policy,
|
|
34
|
+
tags
|
|
35
|
+
WHERE
|
|
36
|
+
resourceType = 'AWS::KMS::Key'
|
|
37
|
+
AND awsRegion = '${context.region}'
|
|
38
|
+
AND accountId = '${context.accountId}'
|
|
39
|
+
AND ${resourceStatusWhereClause}
|
|
40
|
+
`;
|
|
41
|
+
const results = await executeConfigQuery(query, context);
|
|
42
|
+
const keys = results.map((resultString) => {
|
|
43
|
+
const { configItem, supplementaryConfiguration, tags } = parseConfigItem(resultString);
|
|
44
|
+
// Cache data that will be needed by other commands
|
|
45
|
+
// Use KeyId as cache key for both GetKeyPolicyCommand and ListResourceTagsCommand
|
|
46
|
+
context.putCache(configItem.resourceId, 'supplementaryConfiguration', supplementaryConfiguration);
|
|
47
|
+
context.putCache(configItem.resourceId, 'tags', tags);
|
|
48
|
+
return {
|
|
49
|
+
KeyId: configItem.resourceId,
|
|
50
|
+
KeyArn: configItem.arn
|
|
51
|
+
};
|
|
52
|
+
});
|
|
53
|
+
return {
|
|
54
|
+
Keys: keys
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
/**
|
|
59
|
+
* Config-based implementation of KMS GetKeyPolicyCommand
|
|
60
|
+
*/
|
|
61
|
+
const AwsConfigGetKeyPolicyCommand = awsConfigCommand({
|
|
62
|
+
command: GetKeyPolicyCommand,
|
|
63
|
+
execute: async (input, context) => {
|
|
64
|
+
const { KeyId, PolicyName = 'default' } = input;
|
|
65
|
+
if (!KeyId) {
|
|
66
|
+
throw new ResourceNotFoundException('KeyId is required');
|
|
67
|
+
}
|
|
68
|
+
const supplementaryConfiguration = context.getCache(KeyId, 'supplementaryConfiguration');
|
|
69
|
+
const keyPolicy = supplementaryConfiguration?.Policy;
|
|
70
|
+
if (!keyPolicy) {
|
|
71
|
+
throw new ResourceNotFoundException(`Key policy '${PolicyName}' not found for KeyId: ${KeyId}`);
|
|
72
|
+
}
|
|
73
|
+
return {
|
|
74
|
+
Policy: keyPolicy
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
/**
|
|
79
|
+
* Config-based implementation of KMS ListResourceTagsCommand
|
|
80
|
+
*/
|
|
81
|
+
const AwsConfigListResourceTagsCommand = awsConfigCommand({
|
|
82
|
+
command: ListResourceTagsCommand,
|
|
83
|
+
execute: async (input, context) => {
|
|
84
|
+
const { KeyId } = input;
|
|
85
|
+
if (!KeyId) {
|
|
86
|
+
return {
|
|
87
|
+
Tags: []
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
const tags = context.getCache(KeyId, 'tags');
|
|
91
|
+
if (!tags) {
|
|
92
|
+
return {
|
|
93
|
+
Tags: []
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
return {
|
|
97
|
+
Tags: tags
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
//# sourceMappingURL=AwsConfigKmsClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigKmsClient.js","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigKmsClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
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 Lambda client implementation
|
|
6
|
+
*
|
|
7
|
+
* Lambda Layers Only:
|
|
8
|
+
* Since policies are not available in AWS Config for Lambda Layers, this client provides limited functionality
|
|
9
|
+
* and returns empty results for all Lambda Layer operations.
|
|
10
|
+
*/
|
|
11
|
+
export declare class AwsConfigLambdaClient extends AbstractClient<AwsConfigClientContext> {
|
|
12
|
+
static readonly clientName: string;
|
|
13
|
+
constructor(options: {
|
|
14
|
+
credentials: AwsCredentialIdentityWithMetaData;
|
|
15
|
+
region: string | undefined;
|
|
16
|
+
}, customContext: AwsConfigClientContext);
|
|
17
|
+
/**
|
|
18
|
+
* Register all Lambda command implementations
|
|
19
|
+
*/
|
|
20
|
+
protected registerCommands(): void;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=AwsConfigLambdaClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigLambdaClient.d.ts","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigLambdaClient.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,iCAAiC,EAAE,MAAM,uBAAuB,CAAA;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAA;AACtE,OAAO,EAAE,sBAAsB,EAAoB,MAAM,8BAA8B,CAAA;AAOvF;;;;;;GAMG;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;CAQnC"}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import { GetLayerVersionPolicyCommand, GetPolicyCommand, LambdaClient, ListFunctionsCommand, ListLayersCommand, ListLayerVersionsCommand, ListTagsCommand } from '@aws-sdk/client-lambda';
|
|
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 Lambda client implementation
|
|
7
|
+
*
|
|
8
|
+
* Lambda Layers Only:
|
|
9
|
+
* Since policies are not available in AWS Config for Lambda Layers, this client provides limited functionality
|
|
10
|
+
* and returns empty results for all Lambda Layer operations.
|
|
11
|
+
*/
|
|
12
|
+
export class AwsConfigLambdaClient extends AbstractClient {
|
|
13
|
+
constructor(options, customContext) {
|
|
14
|
+
super(options, customContext);
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Register all Lambda command implementations
|
|
18
|
+
*/
|
|
19
|
+
registerCommands() {
|
|
20
|
+
this.registerCommand(AwsConfigGetLayerVersionPolicyCommand);
|
|
21
|
+
this.registerCommand(AwsConfigGetPolicyCommand);
|
|
22
|
+
this.registerCommand(AwsConfigListFunctionsCommand);
|
|
23
|
+
this.registerCommand(AwsConfigListLayersCommand);
|
|
24
|
+
this.registerCommand(AwsConfigListLayerVersionsCommand);
|
|
25
|
+
this.registerCommand(AwsConfigListTagsCommand);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
AwsConfigLambdaClient.clientName = LambdaClient.name;
|
|
29
|
+
/**
|
|
30
|
+
* Config-based implementation of Lambda GetLayerVersionPolicyCommand
|
|
31
|
+
* Returns undefined since layer policies are not available in Config
|
|
32
|
+
*/
|
|
33
|
+
const AwsConfigGetLayerVersionPolicyCommand = awsConfigCommand({
|
|
34
|
+
command: GetLayerVersionPolicyCommand,
|
|
35
|
+
execute: async (input, context) => {
|
|
36
|
+
// Return undefined since layer policies are not tracked in Config
|
|
37
|
+
return {
|
|
38
|
+
Policy: undefined,
|
|
39
|
+
RevisionId: undefined
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
/**
|
|
44
|
+
* Config-based implementation of Lambda GetPolicyCommand
|
|
45
|
+
*
|
|
46
|
+
* Maps Lambda::Function Config data to Lambda GetPolicyCommand output format.
|
|
47
|
+
* Returns function policy from supplementaryConfiguration.Policy field for IAM analysis.
|
|
48
|
+
*/
|
|
49
|
+
const AwsConfigGetPolicyCommand = awsConfigCommand({
|
|
50
|
+
command: GetPolicyCommand,
|
|
51
|
+
execute: async (input, context) => {
|
|
52
|
+
const functionName = input.FunctionName;
|
|
53
|
+
const configuration = context.getCache(functionName, 'configuration');
|
|
54
|
+
const supplementaryConfiguration = context.getCache(functionName, 'supplementaryConfiguration');
|
|
55
|
+
return {
|
|
56
|
+
Policy: supplementaryConfiguration?.Policy,
|
|
57
|
+
RevisionId: configuration?.revisionId
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
/**
|
|
62
|
+
* Config-based implementation of Lambda ListFunctionsCommand
|
|
63
|
+
*
|
|
64
|
+
* Maps Lambda::Function Config data to Lambda ListFunctionsCommand output format.
|
|
65
|
+
* Returns function listing for IAM analysis and resource discovery.
|
|
66
|
+
*/
|
|
67
|
+
const AwsConfigListFunctionsCommand = awsConfigCommand({
|
|
68
|
+
command: ListFunctionsCommand,
|
|
69
|
+
execute: async (input, context) => {
|
|
70
|
+
const query = `
|
|
71
|
+
SELECT
|
|
72
|
+
arn,
|
|
73
|
+
resourceId,
|
|
74
|
+
resourceName,
|
|
75
|
+
configuration.functionName,
|
|
76
|
+
configuration.role,
|
|
77
|
+
configuration.revisionId,
|
|
78
|
+
supplementaryConfiguration.Policy,
|
|
79
|
+
tags
|
|
80
|
+
WHERE
|
|
81
|
+
resourceType = 'AWS::Lambda::Function'
|
|
82
|
+
AND awsRegion = '${context.region}'
|
|
83
|
+
AND accountId = '${context.accountId}'
|
|
84
|
+
AND ${resourceStatusWhereClause}
|
|
85
|
+
`;
|
|
86
|
+
const results = await executeConfigQuery(query, context);
|
|
87
|
+
const functions = results.map((result) => {
|
|
88
|
+
const { configItem, configuration, supplementaryConfiguration, tags } = parseConfigItem(result);
|
|
89
|
+
// Cache data that will be needed by other commands
|
|
90
|
+
// Use function name as cache key for GetPolicyCommand
|
|
91
|
+
if (configuration.functionName) {
|
|
92
|
+
context.putCache(configuration.functionName, 'configuration', configuration);
|
|
93
|
+
context.putCache(configuration.functionName, 'supplementaryConfiguration', supplementaryConfiguration);
|
|
94
|
+
}
|
|
95
|
+
// Cache by ARN for ListTagsCommand
|
|
96
|
+
context.putCache(configItem.arn, 'tags', tags);
|
|
97
|
+
return {
|
|
98
|
+
FunctionName: configuration.functionName,
|
|
99
|
+
FunctionArn: configItem.arn,
|
|
100
|
+
Role: configuration.role
|
|
101
|
+
};
|
|
102
|
+
});
|
|
103
|
+
return {
|
|
104
|
+
Functions: functions,
|
|
105
|
+
NextMarker: undefined // Config doesn't provide pagination markers
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
});
|
|
109
|
+
/**
|
|
110
|
+
* Config-based implementation of Lambda ListLayersCommand
|
|
111
|
+
* Returns empty list since layer policies are not available for analysis
|
|
112
|
+
*/
|
|
113
|
+
const AwsConfigListLayersCommand = awsConfigCommand({
|
|
114
|
+
command: ListLayersCommand,
|
|
115
|
+
execute: async (input, context) => {
|
|
116
|
+
// Return empty list since we can't analyze layer policies from Config
|
|
117
|
+
return {
|
|
118
|
+
Layers: [],
|
|
119
|
+
NextMarker: undefined
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
/**
|
|
124
|
+
* Config-based implementation of Lambda ListLayerVersionsCommand
|
|
125
|
+
* Returns empty list since layer version policies are not available for analysis
|
|
126
|
+
*/
|
|
127
|
+
const AwsConfigListLayerVersionsCommand = awsConfigCommand({
|
|
128
|
+
command: ListLayerVersionsCommand,
|
|
129
|
+
execute: async (input, context) => {
|
|
130
|
+
// Return empty list since we can't analyze layer version policies from Config
|
|
131
|
+
return {
|
|
132
|
+
LayerVersions: [],
|
|
133
|
+
NextMarker: undefined
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
});
|
|
137
|
+
/**
|
|
138
|
+
* Config-based implementation of Lambda ListTagsCommand
|
|
139
|
+
*
|
|
140
|
+
* Maps Lambda::Function Config tag data to Lambda ListTagsCommand output format.
|
|
141
|
+
* Returns function tags for resource identification and compliance analysis.
|
|
142
|
+
*/
|
|
143
|
+
const AwsConfigListTagsCommand = awsConfigCommand({
|
|
144
|
+
command: ListTagsCommand,
|
|
145
|
+
execute: async (input, context) => {
|
|
146
|
+
// Extract function name from ARN or use the Resource directly as function name
|
|
147
|
+
const resourceArn = input.Resource;
|
|
148
|
+
const tags = context.getCache(resourceArn, 'tags');
|
|
149
|
+
return {
|
|
150
|
+
Tags: tags || {}
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
});
|
|
154
|
+
//# sourceMappingURL=AwsConfigLambdaClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigLambdaClient.js","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigLambdaClient.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 OpenSearch client implementation
|
|
6
|
+
*/
|
|
7
|
+
export declare class AwsConfigOpenSearchClient 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 OpenSearch command implementations
|
|
15
|
+
*/
|
|
16
|
+
protected registerCommands(): void;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=AwsConfigOpenSearchClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigOpenSearchClient.d.ts","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigOpenSearchClient.ts"],"names":[],"mappings":"AAOA,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,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;CAKnC"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { DescribeDomainCommand, ListDomainNamesCommand, ListTagsCommand, OpenSearchClient } from '@aws-sdk/client-opensearch';
|
|
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 OpenSearch client implementation
|
|
7
|
+
*/
|
|
8
|
+
export class AwsConfigOpenSearchClient extends AbstractClient {
|
|
9
|
+
constructor(options, customContext) {
|
|
10
|
+
super(options, customContext);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Register all OpenSearch command implementations
|
|
14
|
+
*/
|
|
15
|
+
registerCommands() {
|
|
16
|
+
this.registerCommand(AwsConfigDescribeDomainCommand);
|
|
17
|
+
this.registerCommand(AwsConfigListDomainNamesCommand);
|
|
18
|
+
this.registerCommand(AwsConfigListTagsCommand);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
AwsConfigOpenSearchClient.clientName = OpenSearchClient.name;
|
|
22
|
+
/**
|
|
23
|
+
* Config-based implementation of OpenSearch ListDomainNamesCommand
|
|
24
|
+
* Returns all domain names from AWS Config
|
|
25
|
+
*/
|
|
26
|
+
const AwsConfigListDomainNamesCommand = awsConfigCommand({
|
|
27
|
+
command: ListDomainNamesCommand,
|
|
28
|
+
execute: async (input, context) => {
|
|
29
|
+
const query = `
|
|
30
|
+
SELECT
|
|
31
|
+
arn,
|
|
32
|
+
resourceId,
|
|
33
|
+
resourceName,
|
|
34
|
+
configuration.AccessPolicies,
|
|
35
|
+
configuration.Id,
|
|
36
|
+
configuration.DomainName,
|
|
37
|
+
configuration.EncryptionAtRestOptions,
|
|
38
|
+
tags
|
|
39
|
+
WHERE
|
|
40
|
+
resourceType = 'AWS::OpenSearch::Domain'
|
|
41
|
+
AND awsRegion = '${context.region}'
|
|
42
|
+
AND accountId = '${context.accountId}'
|
|
43
|
+
AND ${resourceStatusWhereClause}
|
|
44
|
+
`;
|
|
45
|
+
const results = await executeConfigQuery(query, context);
|
|
46
|
+
const domains = results
|
|
47
|
+
.map((result) => {
|
|
48
|
+
const { configItem, configuration, tags } = parseConfigItem(result);
|
|
49
|
+
// Cache data that will be needed by other commands
|
|
50
|
+
// Use domain name as cache key since that's what DescribeDomainCommand uses
|
|
51
|
+
if (configuration?.DomainName) {
|
|
52
|
+
context.putCache(configuration.DomainName, 'configuration', configuration);
|
|
53
|
+
context.putCache(configuration.DomainName, 'configItem', configItem);
|
|
54
|
+
// Also cache by ARN for ListTagsCommand
|
|
55
|
+
context.putCache(configItem.arn, 'tags', tags);
|
|
56
|
+
}
|
|
57
|
+
return {
|
|
58
|
+
DomainName: configuration?.DomainName
|
|
59
|
+
};
|
|
60
|
+
})
|
|
61
|
+
.filter((domain) => domain.DomainName);
|
|
62
|
+
return {
|
|
63
|
+
DomainNames: domains
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
/**
|
|
68
|
+
* Config-based implementation of OpenSearch DescribeDomainCommand
|
|
69
|
+
* Returns domain info including access policies from AWS Config
|
|
70
|
+
*/
|
|
71
|
+
const AwsConfigDescribeDomainCommand = awsConfigCommand({
|
|
72
|
+
command: DescribeDomainCommand,
|
|
73
|
+
execute: async (input, context) => {
|
|
74
|
+
if (!input.DomainName) {
|
|
75
|
+
throw new Error('DomainName is required');
|
|
76
|
+
}
|
|
77
|
+
const configuration = context.getCache(input.DomainName, 'configuration');
|
|
78
|
+
const configItem = context.getCache(input.DomainName, 'configItem');
|
|
79
|
+
// Parse the access policies from the configuration JSON string
|
|
80
|
+
let accessPolicies = undefined;
|
|
81
|
+
if (configuration?.AccessPolicies) {
|
|
82
|
+
accessPolicies = JSON.stringify(configuration.AccessPolicies);
|
|
83
|
+
}
|
|
84
|
+
return {
|
|
85
|
+
DomainStatus: {
|
|
86
|
+
DomainId: configuration?.Id || configItem.resourceId,
|
|
87
|
+
DomainName: configuration?.DomainName,
|
|
88
|
+
ARN: configItem.arn,
|
|
89
|
+
AccessPolicies: accessPolicies,
|
|
90
|
+
EncryptionAtRestOptions: {
|
|
91
|
+
Enabled: configuration?.EncryptionAtRestOptions?.Enabled || false,
|
|
92
|
+
KmsKeyId: configuration?.EncryptionAtRestOptions?.KmsKeyId
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
/**
|
|
99
|
+
* Config-based implementation of OpenSearch ListTagsCommand
|
|
100
|
+
* Returns domain tags from AWS Config
|
|
101
|
+
*/
|
|
102
|
+
const AwsConfigListTagsCommand = awsConfigCommand({
|
|
103
|
+
command: ListTagsCommand,
|
|
104
|
+
execute: async (input, context) => {
|
|
105
|
+
if (!input.ARN) {
|
|
106
|
+
throw new Error('ARN is required');
|
|
107
|
+
}
|
|
108
|
+
const tags = context.getCache(input.ARN, 'tags');
|
|
109
|
+
// Convert Config tags format to OpenSearch tags format
|
|
110
|
+
const tagList = tags
|
|
111
|
+
? Object.entries(tags).map(([key, value]) => ({
|
|
112
|
+
Key: key,
|
|
113
|
+
Value: value
|
|
114
|
+
}))
|
|
115
|
+
: [];
|
|
116
|
+
return {
|
|
117
|
+
TagList: tagList
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
});
|
|
121
|
+
//# sourceMappingURL=AwsConfigOpenSearchClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigOpenSearchClient.js","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigOpenSearchClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
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 Organizations client implementation
|
|
6
|
+
* Returns empty responses since organization data is not tracked in AWS Config
|
|
7
|
+
*
|
|
8
|
+
* Since policies are not available in AWS Config, this client provides limited functionality
|
|
9
|
+
* and returns empty results for all operations.
|
|
10
|
+
*/
|
|
11
|
+
export declare class AwsConfigOrganizationsClient extends AbstractClient<AwsConfigClientContext> {
|
|
12
|
+
static readonly clientName: string;
|
|
13
|
+
constructor(options: {
|
|
14
|
+
credentials: AwsCredentialIdentityWithMetaData;
|
|
15
|
+
region: string | undefined;
|
|
16
|
+
}, customContext: AwsConfigClientContext);
|
|
17
|
+
/**
|
|
18
|
+
* Register all Organizations command implementations
|
|
19
|
+
*/
|
|
20
|
+
protected registerCommands(): void;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=AwsConfigOrganizationsClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsConfigOrganizationsClient.d.ts","sourceRoot":"","sources":["../../../../src/awsConfigClients/clients/AwsConfigOrganizationsClient.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;;;;;;GAMG;AACH,qBAAa,4BAA6B,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IACtF,MAAM,CAAC,QAAQ,CAAC,UAAU,SAA2B;gBAGnD,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;CAanC"}
|