cdk-iam-floyd
Version:
AWS IAM policy statement generator with fluent interface for AWS CDK
589 lines (588 loc) • 24.3 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 [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);
}