UNPKG

cdk-iam-floyd

Version:

AWS IAM policy statement generator with fluent interface for AWS CDK

204 lines (203 loc) 8.16 kB
import { AccessLevelList } from '../../shared/access-level'; import { PolicyStatement, Operator } from '../../shared'; import { aws_iam as iam } from "aws-cdk-lib"; /** * Statement provider for service [health](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awshealthapisandnotifications.html). * * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement */ export declare class Health extends PolicyStatement { servicePrefix: string; /** * Grants permission to retrieve a list of accounts that have been affected by the specified events in organization * * Access Level: Read * * Dependent actions: * - organizations:ListAccounts * * https://docs.aws.amazon.com/health/latest/APIReference/API_DescribeAffectedAccountsForOrganization.html */ toDescribeAffectedAccountsForOrganization(): this; /** * Grants permission to retrieve a list of entities that have been affected by the specified events * * Access Level: Read * * Possible conditions: * - .ifEventTypeCode() * - .ifService() * * https://docs.aws.amazon.com/health/latest/APIReference/API_DescribeAffectedEntities.html */ toDescribeAffectedEntities(): this; /** * Grants permission to retrieve a list of entities that have been affected by the specified events and accounts in organization * * Access Level: Read * * Dependent actions: * - organizations:ListAccounts * * https://docs.aws.amazon.com/health/latest/APIReference/API_DescribeAffectedEntitiesForOrganization.html */ toDescribeAffectedEntitiesForOrganization(): this; /** * Grants permission to retrieve the number of entities that are affected by each of the specified events * * Access Level: Read * * https://docs.aws.amazon.com/health/latest/APIReference/API_DescribeEntityAggregates.html */ toDescribeEntityAggregates(): this; /** * Grants permission to retrieve the number of entities that are affected by each of the specified events in an organization * * Access Level: Read * * Dependent actions: * - organizations:ListAccounts * * https://docs.aws.amazon.com/health/latest/APIReference/API_DescribeEntityAggregatesForOrganization.html */ toDescribeEntityAggregatesForOrganization(): this; /** * Grants permission to retrieve the number of events of each event type (issue, scheduled change, and account notification) * * Access Level: Read * * https://docs.aws.amazon.com/health/latest/APIReference/API_DescribeEventAggregates.html */ toDescribeEventAggregates(): this; /** * Grants permission to retrieve detailed information about one or more specified events * * Access Level: Read * * Possible conditions: * - .ifEventTypeCode() * - .ifService() * * https://docs.aws.amazon.com/health/latest/APIReference/API_DescribeEventDetails.html */ toDescribeEventDetails(): this; /** * Grants permission to retrieve detailed information about one or more specified events for provided accounts in organization * * Access Level: Read * * Dependent actions: * - organizations:ListAccounts * * https://docs.aws.amazon.com/health/latest/APIReference/API_DescribeEventDetailsForOrganization.html */ toDescribeEventDetailsForOrganization(): this; /** * Grants permission to retrieve the event types that meet the specified filter criteria * * Access Level: Read * * https://docs.aws.amazon.com/health/latest/APIReference/API_DescribeEventTypes.html */ toDescribeEventTypes(): this; /** * Grants permission to retrieve information about events that meet the specified filter criteria * * Access Level: Read * * https://docs.aws.amazon.com/health/latest/APIReference/API_DescribeEvents.html */ toDescribeEvents(): this; /** * Grants permission to retrieve information about events that meet the specified filter criteria in organization * * Access Level: Read * * Dependent actions: * - organizations:ListAccounts * * https://docs.aws.amazon.com/health/latest/APIReference/API_DescribeEventsForOrganization.html */ toDescribeEventsForOrganization(): this; /** * Grants permission to retrieve the status of enabling or disabling the Organizational View feature * * Access Level: Read * * Dependent actions: * - organizations:ListAccounts * * https://docs.aws.amazon.com/health/latest/APIReference/API_DescribeHealthServiceStatusForOrganization.html */ toDescribeHealthServiceStatusForOrganization(): this; /** * Grants permission to disable the Organizational View feature * * Access Level: Permissions management * * Dependent actions: * - organizations:DisableAWSServiceAccess * - organizations:ListAccounts * * https://docs.aws.amazon.com/health/latest/APIReference/API_DisableHealthServiceAccessForOrganization.html */ toDisableHealthServiceAccessForOrganization(): this; /** * Grants permission to enable the Organizational View feature * * Access Level: Permissions management * * Dependent actions: * - iam:CreateServiceLinkedRole * - organizations:EnableAWSServiceAccess * - organizations:ListAccounts * * https://docs.aws.amazon.com/health/latest/APIReference/API_EnableHealthServiceAccessForOrganization.html */ toEnableHealthServiceAccessForOrganization(): this; protected accessLevelList: AccessLevelList; /** * Adds a resource of type event to the statement * * https://docs.aws.amazon.com/health/latest/ug/supported-operations.html * * @param service - Identifier for the service. * @param eventTypeCode - Identifier for the eventTypeCode. * @param eventTypePlusId - Identifier for the eventTypePlusId. * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account. * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region. * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition. */ onEvent(service: string, eventTypeCode: string, eventTypePlusId: string, account?: string, region?: string, partition?: string): this; /** * Filters access by event type * * https://docs.aws.amazon.com/health/latest/ug/controlling-access.html * * Applies to actions: * - .toDescribeAffectedEntities() * - .toDescribeEventDetails() * * @param value The value(s) to check * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike` */ ifEventTypeCode(value: string | string[], operator?: Operator | string): this; /** * Filters access by impacted service * * https://docs.aws.amazon.com/health/latest/ug/controlling-access.html * * Applies to actions: * - .toDescribeAffectedEntities() * - .toDescribeEventDetails() * * @param value The value(s) to check * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike` */ ifService(value: string | string[], operator?: Operator | string): this; /** * Statement provider for service [health](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awshealthapisandnotifications.html). * */ constructor(props?: iam.PolicyStatementProps); }