UNPKG

cdk-iam-floyd

Version:

AWS IAM policy statement generator with fluent interface for AWS CDK

589 lines (588 loc) 24.3 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 [groundstation](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsgroundstation.html). * * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement */ export declare class Groundstation extends PolicyStatement { servicePrefix: string; /** * Grants permission to cancel a contact * * Access Level: Write * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_CancelContact.html */ toCancelContact(): this; /** * Grants permission to create a configuration * * Access Level: Write * * Possible conditions: * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_CreateConfig.html */ toCreateConfig(): this; /** * Grants permission to create a data flow endpoint group * * Access Level: Write * * Possible conditions: * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_CreateDataflowEndpointGroup.html */ toCreateDataflowEndpointGroup(): this; /** * Grants permission to create an ephemeris item * * Access Level: Write * * Possible conditions: * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_CreateEphemeris.html */ toCreateEphemeris(): this; /** * Grants permission to create a mission profile * * Access Level: Write * * Possible conditions: * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_CreateMissionProfile.html */ toCreateMissionProfile(): this; /** * Grants permission to delete a config * * Access Level: Write * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_DeleteConfig.html */ toDeleteConfig(): this; /** * Grants permission to delete a data flow endpoint group * * Access Level: Write * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_DeleteDataflowEndpointGroup.html */ toDeleteDataflowEndpointGroup(): this; /** * Grants permission to delete an ephemeris item * * Access Level: Write * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_DeleteEphemeris.html */ toDeleteEphemeris(): this; /** * Grants permission to delete a mission profile * * Access Level: Write * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_DeleteMissionProfile.html */ toDeleteMissionProfile(): this; /** * Grants permission to describe a contact * * Access Level: Read * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_DescribeContact.html */ toDescribeContact(): this; /** * Grants permission to describe an ephemeris item * * Access Level: Read * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_DescribeEphemeris.html */ toDescribeEphemeris(): this; /** * Grants permission to get the configuration of an agent * * Access Level: Read * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_GetAgentConfiguration.html */ toGetAgentConfiguration(): this; /** * Grants permission to return a configuration * * Access Level: Read * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_GetConfig.html */ toGetConfig(): this; /** * Grants permission to return a data flow endpoint group * * Access Level: Read * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_GetDataflowEndpointGroup.html */ toGetDataflowEndpointGroup(): this; /** * Grants permission to return minutes usage * * Access Level: Read * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_GetMinuteUsage.html */ toGetMinuteUsage(): this; /** * Grants permission to retrieve a mission profile * * Access Level: Read * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_GetMissionProfile.html */ toGetMissionProfile(): this; /** * Grants permission to return information about a satellite * * Access Level: Read * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_GetSatellite.html */ toGetSatellite(): this; /** * Grants permission to return a list of past configurations * * Access Level: List * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_ListConfigs.html */ toListConfigs(): this; /** * Grants permission to return a list of contacts * * Access Level: List * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_ListContacts.html */ toListContacts(): this; /** * Grants permission to list data flow endpoint groups * * Access Level: List * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_ListDataflowEndpointGroups.html */ toListDataflowEndpointGroups(): this; /** * Grants permission to list ephemerides * * Access Level: List * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_ListEphemerides.html */ toListEphemerides(): this; /** * Grants permission to list ground stations * * Access Level: List * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_ListGroundStations.html */ toListGroundStations(): this; /** * Grants permission to return a list of mission profiles * * Access Level: List * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_ListMissionProfiles.html */ toListMissionProfiles(): this; /** * Grants permission to list satellites * * Access Level: List * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_ListSatellites.html */ toListSatellites(): this; /** * Grants permission to list tags for a resource * * Access Level: Read * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_ListTagsForResource.html */ toListTagsForResource(): this; /** * Grants permission to register an agent * * Access Level: Write * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_RegisterAgent.html */ toRegisterAgent(): this; /** * Grants permission to reserve a contact * * Access Level: Write * * Possible conditions: * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_ReserveContact.html */ toReserveContact(): this; /** * Grants permission to assign a resource tag * * Access Level: Tagging * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_TagResource.html */ toTagResource(): this; /** * Grants permission to unassign a resource tag * * Access Level: Tagging * * Possible conditions: * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_UntagResource.html */ toUntagResource(): this; /** * Grants permission to update the status of an agent * * Access Level: Write * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_UpdateAgentStatus.html */ toUpdateAgentStatus(): this; /** * Grants permission to update a configuration * * Access Level: Write * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_UpdateConfig.html */ toUpdateConfig(): this; /** * Grants permission to update an ephemeris item * * Access Level: Write * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_UpdateEphemeris.html */ toUpdateEphemeris(): this; /** * Grants permission to update a mission profile * * Access Level: Write * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_UpdateMissionProfile.html */ toUpdateMissionProfile(): this; protected accessLevelList: AccessLevelList; /** * Adds a resource of type Config to the statement * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_ConfigListItem.html * * @param configType - Identifier for the configType. * @param configId - Identifier for the configId. * @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. * * Possible conditions: * - .ifAwsResourceTag() * - .ifConfigId() * - .ifConfigType() */ onConfig(configType: string, configId: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type Contact to the statement * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_ContactData.html * * @param contactId - Identifier for the contactId. * @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. * * Possible conditions: * - .ifAwsResourceTag() * - .ifContactId() */ onContact(contactId: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type DataflowEndpointGroup to the statement * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_DataflowEndpoint.html * * @param dataflowEndpointGroupId - Identifier for the dataflowEndpointGroupId. * @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. * * Possible conditions: * - .ifAwsResourceTag() * - .ifDataflowEndpointGroupId() */ onDataflowEndpointGroup(dataflowEndpointGroupId: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type EphemerisItem to the statement * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_EphemerisItem.html * * @param ephemerisId - Identifier for the ephemerisId. * @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. * * Possible conditions: * - .ifAwsResourceTag() * - .ifEphemerisId() */ onEphemerisItem(ephemerisId: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type GroundStationResource to the statement * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_GroundStationData.html * * @param groundStationId - Identifier for the groundStationId. * @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. * * Possible conditions: * - .ifGroundStationId() */ onGroundStationResource(groundStationId: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type MissionProfile to the statement * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_MissionProfileListItem.html * * @param missionProfileId - Identifier for the missionProfileId. * @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. * * Possible conditions: * - .ifAwsResourceTag() * - .ifMissionProfileId() */ onMissionProfile(missionProfileId: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type Satellite to the statement * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_SatelliteListItem.html * * @param satelliteId - Identifier for the satelliteId. * @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. * * Possible conditions: * - .ifSatelliteId() */ onSatellite(satelliteId: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type Agent to the statement * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_AgentDetails.html * * @param agentId - Identifier for the agentId. * @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. * * Possible conditions: * - .ifAgentId() */ onAgent(agentId: string, account?: string, region?: string, partition?: string): this; /** * Filters access by the tags that are passed in the request * * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-requesttag * * Applies to actions: * - .toCreateConfig() * - .toCreateDataflowEndpointGroup() * - .toCreateEphemeris() * - .toCreateMissionProfile() * - .toReserveContact() * - .toTagResource() * * @param tagKey The tag key to check * @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` */ ifAwsRequestTag(tagKey: string, value: string | string[], operator?: Operator | string): this; /** * Filters access by the tags associated with the resource * * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-resourcetag * * Applies to resource types: * - Config * - Contact * - DataflowEndpointGroup * - EphemerisItem * - MissionProfile * * @param tagKey The tag key to check * @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` */ ifAwsResourceTag(tagKey: string, value: string | string[], operator?: Operator | string): this; /** * Filters access by the tag keys that are passed in the request * * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-tagkeys * * Applies to actions: * - .toCreateConfig() * - .toCreateDataflowEndpointGroup() * - .toCreateEphemeris() * - .toCreateMissionProfile() * - .toReserveContact() * - .toTagResource() * - .toUntagResource() * * @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` */ ifAwsTagKeys(value: string | string[], operator?: Operator | string): this; /** * Filters access by the ID of an agent * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_RegisterAgent.html#groundstation-RegisterAgent-response-agentId * * Applies to resource types: * - Agent * * @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` */ ifAgentId(value: string | string[], operator?: Operator | string): this; /** * Filters access by the ID of a config * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_CreateConfig.html#groundstation-CreateConfig-response-configId * * Applies to resource types: * - Config * * @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` */ ifConfigId(value: string | string[], operator?: Operator | string): this; /** * Filters access by the type of a config * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_CreateConfig.html#groundstation-CreateConfig-response-configType * * Applies to resource types: * - Config * * @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` */ ifConfigType(value: string | string[], operator?: Operator | string): this; /** * Filters access by the ID of a contact * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_ReserveContact.html#groundstation-ReserveContact-response-contactId * * Applies to resource types: * - Contact * * @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` */ ifContactId(value: string | string[], operator?: Operator | string): this; /** * Filters access by the ID of a dataflow endpoint group * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_CreateDataflowEndpointGroup.html#groundstation-CreateDataflowEndpointGroup-response-dataflowEndpointGroupId * * Applies to resource types: * - DataflowEndpointGroup * * @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` */ ifDataflowEndpointGroupId(value: string | string[], operator?: Operator | string): this; /** * Filters access by the ID of an ephemeris * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_CreateEphemeris.html#groundstation-CreateEphemeris-response-ephemerisId * * Applies to resource types: * - EphemerisItem * * @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` */ ifEphemerisId(value: string | string[], operator?: Operator | string): this; /** * Filters access by the ID of a ground station * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_GroundStationData.html#groundstation-Type-GroundStationData-groundStationId * * Applies to resource types: * - GroundStationResource * * @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` */ ifGroundStationId(value: string | string[], operator?: Operator | string): this; /** * Filters access by the ID of a mission profile * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_CreateMissionProfile.html#groundstation-CreateMissionProfile-response-missionProfileId * * Applies to resource types: * - MissionProfile * * @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` */ ifMissionProfileId(value: string | string[], operator?: Operator | string): this; /** * Filters access by the ID of a satellite * * https://docs.aws.amazon.com/ground-station/latest/APIReference/API_SatelliteListItem.html#groundstation-Type-SatelliteListItem-satelliteId * * Applies to resource types: * - Satellite * * @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` */ ifSatelliteId(value: string | string[], operator?: Operator | string): this; /** * Statement provider for service [groundstation](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsgroundstation.html). * */ constructor(props?: iam.PolicyStatementProps); }