@k9securityio/k9-cdk
Version:
Provision strong AWS security policies easily using the AWS CDK.
24 lines (23 loc) • 999 B
TypeScript
import { AddToResourcePolicyResult, PolicyDocument } from 'aws-cdk-lib/aws-iam';
import { EventBus } from 'aws-cdk-lib/aws-events';
import { IAccessSpec } from './k9policy';
export interface K9EventBusResourcePolicyProps {
readonly bus: EventBus;
readonly k9DesiredAccess: Array<IAccessSpec>;
}
export declare const SID_DENY_EVERYONE_ELSE = "DenyEveryoneElse";
/**
* Generate an EventBridge Bus resource policy from the provided props.
*
* @param props specifying desired access
* @return a PolicyDocument that can be attached to an EventBridge event bus
*/
export declare function makeResourcePolicy(props: K9EventBusResourcePolicyProps): PolicyDocument;
/**
* Grant access to an event bus via resource policy using k9 IAccessSpec definitions.
*
* @param props specifying the event bus and desired access
*
* @return the results for adding each statement
*/
export declare function grantAccessViaResourcePolicy(props: K9EventBusResourcePolicyProps): AddToResourcePolicyResult[];