UNPKG

cdk-iam-floyd

Version:

AWS IAM policy statement generator with fluent interface for AWS CDK

781 lines (780 loc) 27.4 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 [robomaker](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsrobomaker.html). * * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement */ export declare class Robomaker extends PolicyStatement { servicePrefix: string; /** * Delete one or more worlds in a batch operation * * Access Level: Write * * https://docs.aws.amazon.com/robomaker/latest/dg/API_BatchDeleteWorlds.html */ toBatchDeleteWorlds(): this; /** * Describe multiple simulation jobs * * Access Level: Read * * https://docs.aws.amazon.com/robomaker/latest/dg/API_BatchDescribeSimulationJob.html */ toBatchDescribeSimulationJob(): this; /** * Cancel a deployment job * * Access Level: Write * * https://docs.aws.amazon.com/robomaker/latest/dg/API_CancelDeploymentJob.html */ toCancelDeploymentJob(): this; /** * Cancel a simulation job * * Access Level: Write * * https://docs.aws.amazon.com/robomaker/latest/dg/API_CancelSimulationJob.html */ toCancelSimulationJob(): this; /** * Cancel a simulation job batch * * Access Level: Write * * https://docs.aws.amazon.com/robomaker/latest/dg/API_CancelSimulationJobBatch.html */ toCancelSimulationJobBatch(): this; /** * Cancel a world export job * * Access Level: Write * * https://docs.aws.amazon.com/robomaker/latest/dg/API_CancelWorldExportJob.html */ toCancelWorldExportJob(): this; /** * Cancel a world generation job * * Access Level: Write * * https://docs.aws.amazon.com/robomaker/latest/dg/API_CancelWorldGenerationJob.html */ toCancelWorldGenerationJob(): this; /** * Create a deployment job * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * Dependent actions: * - iam:CreateServiceLinkedRole * * https://docs.aws.amazon.com/robomaker/latest/dg/API_CreateDeploymentJob.html */ toCreateDeploymentJob(): this; /** * Create a deployment fleet that represents a logical group of robots running the same robot application * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * https://docs.aws.amazon.com/robomaker/latest/dg/API_CreateFleet.html */ toCreateFleet(): this; /** * Create a robot that can be registered to a fleet * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * Dependent actions: * - iam:CreateServiceLinkedRole * * https://docs.aws.amazon.com/robomaker/latest/dg/API_CreateRobot.html */ toCreateRobot(): this; /** * Create a robot application * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * https://docs.aws.amazon.com/robomaker/latest/dg/API_CreateRobotApplication.html */ toCreateRobotApplication(): this; /** * Create a snapshot of a robot application * * Access Level: Write * * Dependent actions: * - s3:GetObject * * https://docs.aws.amazon.com/robomaker/latest/dg/API_CreateRobotApplicationVersion.html */ toCreateRobotApplicationVersion(): this; /** * Create a simulation application * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * https://docs.aws.amazon.com/robomaker/latest/dg/API_CreateSimulationApplication.html */ toCreateSimulationApplication(): this; /** * Create a snapshot of a simulation application * * Access Level: Write * * Dependent actions: * - s3:GetObject * * https://docs.aws.amazon.com/robomaker/latest/dg/API_CreateSimulationApplicationVersion.html */ toCreateSimulationApplicationVersion(): this; /** * Create a simulation job * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * Dependent actions: * - iam:CreateServiceLinkedRole * * https://docs.aws.amazon.com/robomaker/latest/dg/API_CreateSimulationJob.html */ toCreateSimulationJob(): this; /** * Create a world export job * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * https://docs.aws.amazon.com/robomaker/latest/dg/API_CreateWorldExportJob.html */ toCreateWorldExportJob(): this; /** * Create a world generation job * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * https://docs.aws.amazon.com/robomaker/latest/dg/API_CreateWorldGenerationJob.html */ toCreateWorldGenerationJob(): this; /** * Create a world template * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * https://docs.aws.amazon.com/robomaker/latest/dg/API_CreateWorldTemplate.html */ toCreateWorldTemplate(): this; /** * Delete a deployment fleet * * Access Level: Write * * https://docs.aws.amazon.com/robomaker/latest/dg/API_DeleteFleet.html */ toDeleteFleet(): this; /** * Delete a robot * * Access Level: Write * * https://docs.aws.amazon.com/robomaker/latest/dg/API_DeleteRobot.html */ toDeleteRobot(): this; /** * Delete a robot application * * Access Level: Write * * https://docs.aws.amazon.com/robomaker/latest/dg/API_DeleteRobotApplication.html */ toDeleteRobotApplication(): this; /** * Delete a simulation application * * Access Level: Write * * https://docs.aws.amazon.com/robomaker/latest/dg/API_DeleteSimulationApplication.html */ toDeleteSimulationApplication(): this; /** * Delete a world template * * Access Level: Write * * https://docs.aws.amazon.com/robomaker/latest/dg/API_DeleteWorldTemplate.html */ toDeleteWorldTemplate(): this; /** * Deregister a robot from a fleet * * Access Level: Write * * https://docs.aws.amazon.com/robomaker/latest/dg/API_DeregisterRobot.html */ toDeregisterRobot(): this; /** * Describe a deployment job * * Access Level: Read * * https://docs.aws.amazon.com/robomaker/latest/dg/API_DescribeDeploymentJob.html */ toDescribeDeploymentJob(): this; /** * Describe a deployment fleet * * Access Level: Read * * https://docs.aws.amazon.com/robomaker/latest/dg/API_DescribeFleet.html */ toDescribeFleet(): this; /** * Describe a robot * * Access Level: Read * * https://docs.aws.amazon.com/robomaker/latest/dg/API_DescribeRobot.html */ toDescribeRobot(): this; /** * Describe a robot application * * Access Level: Read * * https://docs.aws.amazon.com/robomaker/latest/dg/API_DescribeRobotApplication.html */ toDescribeRobotApplication(): this; /** * Describe a simulation application * * Access Level: Read * * https://docs.aws.amazon.com/robomaker/latest/dg/API_DescribeSimulationApplication.html */ toDescribeSimulationApplication(): this; /** * Describe a simulation job * * Access Level: Read * * https://docs.aws.amazon.com/robomaker/latest/dg/API_DescribeSimulationJob.html */ toDescribeSimulationJob(): this; /** * Describe a simulation job batch * * Access Level: Read * * https://docs.aws.amazon.com/robomaker/latest/dg/API_DescribeSimulationJobBatch.html */ toDescribeSimulationJobBatch(): this; /** * Describe a world * * Access Level: Read * * https://docs.aws.amazon.com/robomaker/latest/dg/API_DescribeWorld.html */ toDescribeWorld(): this; /** * Describe a world export job * * Access Level: Read * * https://docs.aws.amazon.com/robomaker/latest/dg/API_DescribeWorldExportJob.html */ toDescribeWorldExportJob(): this; /** * Describe a world generation job * * Access Level: Read * * https://docs.aws.amazon.com/robomaker/latest/dg/API_DescribeWorldGenerationJob.html */ toDescribeWorldGenerationJob(): this; /** * Describe a world template * * Access Level: Read * * https://docs.aws.amazon.com/robomaker/latest/dg/API_DescribeWorldTemplate.html */ toDescribeWorldTemplate(): this; /** * Get the body of a world template * * Access Level: Read * * https://docs.aws.amazon.com/robomaker/latest/dg/API_GetWorldTemplateBody.html */ toGetWorldTemplateBody(): this; /** * List deployment jobs * * Access Level: List * * https://docs.aws.amazon.com/robomaker/latest/dg/API_ListDeploymentJobs.html */ toListDeploymentJobs(): this; /** * List fleets * * Access Level: List * * https://docs.aws.amazon.com/robomaker/latest/dg/API_ListFleets.html */ toListFleets(): this; /** * List robot applications * * Access Level: List * * https://docs.aws.amazon.com/robomaker/latest/dg/API_ListRobotApplications.html */ toListRobotApplications(): this; /** * List robots * * Access Level: List * * https://docs.aws.amazon.com/robomaker/latest/dg/API_ListRobots.html */ toListRobots(): this; /** * List simulation applications * * Access Level: List * * https://docs.aws.amazon.com/robomaker/latest/dg/API_ListSimulationApplications.html */ toListSimulationApplications(): this; /** * List simulation job batches * * Access Level: List * * https://docs.aws.amazon.com/robomaker/latest/dg/API_ListSimulationJobBatches.html */ toListSimulationJobBatches(): this; /** * List simulation jobs * * Access Level: List * * https://docs.aws.amazon.com/robomaker/latest/dg/API_ListSimulationJobs.html */ toListSimulationJobs(): this; /** * Lists supported availability zones * * Access Level: List */ toListSupportedAvailabilityZones(): this; /** * List tags for a RoboMaker resource * * Access Level: List * * https://docs.aws.amazon.com/robomaker/latest/dg/API_ListTagsForResource.html */ toListTagsForResource(): this; /** * List world export jobs * * Access Level: List * * https://docs.aws.amazon.com/robomaker/latest/dg/API_ListWorldExportJobs.html */ toListWorldExportJobs(): this; /** * List world generation jobs * * Access Level: List * * https://docs.aws.amazon.com/robomaker/latest/dg/API_ListWorldGenerationJobs.html */ toListWorldGenerationJobs(): this; /** * List world templates * * Access Level: List * * https://docs.aws.amazon.com/robomaker/latest/dg/API_ListWorldTemplates.html */ toListWorldTemplates(): this; /** * List worlds * * Access Level: List * * https://docs.aws.amazon.com/robomaker/latest/dg/API_ListWorlds.html */ toListWorlds(): this; /** * Register a robot to a fleet * * Access Level: Write * * https://docs.aws.amazon.com/robomaker/latest/dg/API_RegisterRobot.html */ toRegisterRobot(): this; /** * Restart a running simulation job * * Access Level: Write * * https://docs.aws.amazon.com/robomaker/latest/dg/API_RestartSimulationJob.html */ toRestartSimulationJob(): this; /** * Create a simulation job batch * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * Dependent actions: * - iam:CreateServiceLinkedRole * * https://docs.aws.amazon.com/robomaker/latest/dg/API_StartSimulationJobBatch.html */ toStartSimulationJobBatch(): this; /** * Ensures the most recently deployed robot application is deployed to all robots in the fleet * * Access Level: Write * * Dependent actions: * - iam:CreateServiceLinkedRole * * https://docs.aws.amazon.com/robomaker/latest/dg/API_SyncDeploymentJob.html */ toSyncDeploymentJob(): this; /** * Add tags to a RoboMaker resource * * Access Level: Tagging * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * https://docs.aws.amazon.com/robomaker/latest/dg/API_TagResource.html */ toTagResource(): this; /** * Remove tags from a RoboMaker resource * * Access Level: Tagging * * Possible conditions: * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/robomaker/latest/dg/API_UntagResource.html */ toUntagResource(): this; /** * Update a robot application * * Access Level: Write * * https://docs.aws.amazon.com/robomaker/latest/dg/API_UpdateRobotApplication.html */ toUpdateRobotApplication(): this; /** * Report the deployment status for an individual robot * * Access Level: Write */ toUpdateRobotDeployment(): this; /** * Update a simulation application * * Access Level: Write * * https://docs.aws.amazon.com/robomaker/latest/dg/API_UpdateSimulationApplication.html */ toUpdateSimulationApplication(): this; /** * Update a world template * * Access Level: Write * * https://docs.aws.amazon.com/robomaker/latest/dg/API_UpdateWorldTemplate.html */ toUpdateWorldTemplate(): this; protected accessLevelList: AccessLevelList; /** * Adds a resource of type robotApplication to the statement * * https://docs.aws.amazon.com/robomaker/latest/dg/managing-robot-applications.html * * @param applicationName - Identifier for the applicationName. * @param createdOnEpoch - Identifier for the createdOnEpoch. * @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() */ onRobotApplication(applicationName: string, createdOnEpoch: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type simulationApplication to the statement * * https://docs.aws.amazon.com/robomaker/latest/dg/managing-simulation-applications.html * * @param applicationName - Identifier for the applicationName. * @param createdOnEpoch - Identifier for the createdOnEpoch. * @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() */ onSimulationApplication(applicationName: string, createdOnEpoch: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type simulationJob to the statement * * https://docs.aws.amazon.com/robomaker/latest/dg/simulation.html * * @param simulationJobId - Identifier for the simulationJobId. * @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() */ onSimulationJob(simulationJobId: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type simulationJobBatch to the statement * * https://docs.aws.amazon.com/robomaker/latest/dg/simulation-job-batch.html * * @param simulationJobBatchId - Identifier for the simulationJobBatchId. * @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() */ onSimulationJobBatch(simulationJobBatchId: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type deploymentJob to the statement * * https://docs.aws.amazon.com/robomaker/latest/dg/deployment.html * * @param deploymentJobId - Identifier for the deploymentJobId. * @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() */ onDeploymentJob(deploymentJobId: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type robot to the statement * * https://docs.aws.amazon.com/robomaker/latest/dg/fleets.html * * @param robotName - Identifier for the robotName. * @param createdOnEpoch - Identifier for the createdOnEpoch. * @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() */ onRobot(robotName: string, createdOnEpoch: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type deploymentFleet to the statement * * https://docs.aws.amazon.com/robomaker/latest/dg/managing-simulation-applications.html * * @param fleetName - Identifier for the fleetName. * @param createdOnEpoch - Identifier for the createdOnEpoch. * @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() */ onDeploymentFleet(fleetName: string, createdOnEpoch: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type worldGenerationJob to the statement * * https://docs.aws.amazon.com/robomaker/latest/dg/worlds-managing-generation-jobs.html * * @param worldGenerationJobId - Identifier for the worldGenerationJobId. * @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() */ onWorldGenerationJob(worldGenerationJobId: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type worldExportJob to the statement * * https://docs.aws.amazon.com/robomaker/latest/dg/worlds-managing-export-jobs.html * * @param worldExportJobId - Identifier for the worldExportJobId. * @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() */ onWorldExportJob(worldExportJobId: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type worldTemplate to the statement * * https://docs.aws.amazon.com/robomaker/latest/dg/worlds-managing-simworld-templates.html * * @param worldTemplateJobId - Identifier for the worldTemplateJobId. * @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() */ onWorldTemplate(worldTemplateJobId: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type world to the statement * * https://docs.aws.amazon.com/robomaker/latest/dg/worlds-managing-generated-worlds.html * * @param worldId - Identifier for the worldId. * @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() */ onWorld(worldId: string, account?: string, region?: string, partition?: string): this; /** * Filters access based on the tags that are passed in the request * * https://docs.aws.amazon.com/robomaker/latest/dg/tagging-resources-iam-policies.html * * Applies to actions: * - .toCreateDeploymentJob() * - .toCreateFleet() * - .toCreateRobot() * - .toCreateRobotApplication() * - .toCreateSimulationApplication() * - .toCreateSimulationJob() * - .toCreateWorldExportJob() * - .toCreateWorldGenerationJob() * - .toCreateWorldTemplate() * - .toStartSimulationJobBatch() * - .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 based on the tags associated with the resource * * https://docs.aws.amazon.com/robomaker/latest/dg/tagging-resources-iam-policies.html * * Applies to resource types: * - robotApplication * - simulationApplication * - simulationJob * - simulationJobBatch * - deploymentJob * - robot * - deploymentFleet * - worldGenerationJob * - worldExportJob * - worldTemplate * - world * * @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 based on the tag keys that are passed in the request * * https://docs.aws.amazon.com/robomaker/latest/dg/tagging-resources-iam-policies.html * * Applies to actions: * - .toCreateDeploymentJob() * - .toCreateFleet() * - .toCreateRobot() * - .toCreateRobotApplication() * - .toCreateSimulationApplication() * - .toCreateSimulationJob() * - .toCreateWorldExportJob() * - .toCreateWorldGenerationJob() * - .toCreateWorldTemplate() * - .toStartSimulationJobBatch() * - .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; /** * Statement provider for service [robomaker](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsrobomaker.html). * */ constructor(props?: iam.PolicyStatementProps); }