cdk-iam-floyd
Version:
AWS IAM policy statement generator with fluent interface for AWS CDK
204 lines (203 loc) • 8.16 kB
TypeScript
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);
}