@cloud-copilot/iam-collect
Version:
Collect IAM information from AWS Accounts
41 lines • 1.75 kB
JavaScript
import { GetResourcePolicyCommand, GlueClient } from '@aws-sdk/client-glue';
import {} from '../../aws/coreAuth.js';
import { AbstractClient } from '../../customClients/AbstractClient.js';
import { awsConfigCommand } from '../AwsConfigClientContext.js';
/**
* AWS Config-based Glue client implementation
*
* Since policies are not available in AWS Config, this client provides limited functionality
* and returns empty results for all operations.
*/
export class AwsConfigGlueClient extends AbstractClient {
constructor(options, customContext) {
super(options, customContext);
}
/**
* Register all Glue command implementations
*/
registerCommands() {
this.registerCommand(AwsConfigGetResourcePolicyCommand);
}
}
AwsConfigGlueClient.clientName = GlueClient.name;
/**
* Config-based implementation of Glue GetResourcePolicyCommand
*
* Note: The Glue data catalog resource and its policies are not tracked by AWS Config.
* AWS Config only tracks individual Glue jobs, transforms, and classifiers - not the catalog itself.
* Therefore, no catalog policy analysis is possible from Config data.
*/
const AwsConfigGetResourcePolicyCommand = awsConfigCommand({
command: GetResourcePolicyCommand,
execute: async (input, context) => {
// Note: The Glue data catalog resource and its policies are not tracked by AWS Config.
// AWS Config only tracks individual Glue jobs, transforms, and classifiers - not the catalog itself.
// Therefore, no catalog policy analysis is possible from Config data.
return {
PolicyInJson: undefined // Empty - no catalog policy data available in Config
};
}
});
//# sourceMappingURL=AwsConfigGlueClient.js.map