@cloud-copilot/iam-collect
Version:
Collect IAM information from AWS Accounts
44 lines • 1.94 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.AwsConfigGlueClient = void 0;
const client_glue_1 = require("@aws-sdk/client-glue");
const AbstractClient_js_1 = require("../../customClients/AbstractClient.js");
const AwsConfigClientContext_js_1 = require("../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.
*/
class AwsConfigGlueClient extends AbstractClient_js_1.AbstractClient {
static clientName = client_glue_1.GlueClient.name;
constructor(options, customContext) {
super(options, customContext);
}
/**
* Register all Glue command implementations
*/
registerCommands() {
this.registerCommand(AwsConfigGetResourcePolicyCommand);
}
}
exports.AwsConfigGlueClient = AwsConfigGlueClient;
/**
* 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 = (0, AwsConfigClientContext_js_1.awsConfigCommand)({
command: client_glue_1.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