UNPKG

iam-floyd

Version:

AWS IAM policy statement generator with fluent interface

385 lines (384 loc) 13.2 kB
import { AccessLevelList } from '../../shared/access-level'; import { PolicyStatement, Operator } from '../../shared'; /** * Statement provider for service [outposts](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsoutposts.html). * * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement */ export declare class Outposts extends PolicyStatement { servicePrefix: string; /** * Statement provider for service [outposts](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsoutposts.html). * * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement */ constructor(sid?: string); /** * Grants permission to cancel a capacity task * * Access Level: Write * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_CancelCapacityTask.html */ toCancelCapacityTask(): this; /** * Grants permission to cancel an order * * Access Level: Write * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_CancelOrder.html */ toCancelOrder(): this; /** * Grants permission to create an order * * Access Level: Write * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_CreateOrder.html */ toCreateOrder(): this; /** * Grants permission to create an Outpost * * Access Level: Write * * Possible conditions: * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_CreateOutpost.html */ toCreateOutpost(): this; /** * Grants permission to create a private connectivity configuration * * Access Level: Write * * https://docs.aws.amazon.com/outposts/latest/userguide/how-outposts-works.html#private-connectivity */ toCreatePrivateConnectivityConfig(): this; /** * Grants permission to create a site * * Access Level: Write * * Possible conditions: * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_CreateSite.html */ toCreateSite(): this; /** * Grants permission to delete an Outpost * * Access Level: Write * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_DeleteOutpost.html */ toDeleteOutpost(): this; /** * Grants permission to delete a site * * Access Level: Write * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_DeleteSite.html */ toDeleteSite(): this; /** * Grants permission to get information about the specified capacity task * * Access Level: Read * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_GetCapacityTask.html */ toGetCapacityTask(): this; /** * Grants permission to get a catalog item * * Access Level: Read * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_GetCatalogItem.html */ toGetCatalogItem(): this; /** * Grants permission to get information about the connection for your Outpost server * * Access Level: Read * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_GetConnection.html */ toGetConnection(): this; /** * Grants permission to get information about an order * * Access Level: Read * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_GetOrder.html */ toGetOrder(): this; /** * Grants permission to get information about the specified Outpost * * Access Level: Read * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_GetOutpost.html */ toGetOutpost(): this; /** * Grants permission to get the instance types for the specified Outpost * * Access Level: Read * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_GetOutpostInstanceTypes.html */ toGetOutpostInstanceTypes(): this; /** * Grants permission to get the supported instance types for the specified Outpost * * Access Level: Read * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_GetOutpostSupportedInstanceTypes.html */ toGetOutpostSupportedInstanceTypes(): this; /** * Grants permission to get a private connectivity configuration * * Access Level: Read * * https://docs.aws.amazon.com/outposts/latest/userguide/how-outposts-works.html#private-connectivity */ toGetPrivateConnectivityConfig(): this; /** * Grants permission to get a site * * Access Level: Read * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_GetSite.html */ toGetSite(): this; /** * Grants permission to get a site address * * Access Level: Read * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_GetSiteAddress.html */ toGetSiteAddress(): this; /** * Grants permission to list all running instances for the specified Outpost * * Access Level: List * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_ListAssetInstances.html */ toListAssetInstances(): this; /** * Grants permission to list the assets for your Outpost * * Access Level: List * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_ListAssets.html */ toListAssets(): this; /** * Grants permission to list all running instances that are blocking the capacity task from running for the specified Outpost * * Access Level: List * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_ListBlockingInstancesForCapacityTask.html */ toListBlockingInstancesForCapacityTask(): this; /** * Grants permission to list the capacity tasks for your AWS account * * Access Level: List * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_ListCapacityTasks.html */ toListCapacityTasks(): this; /** * Grants permission to list all catalog items * * Access Level: List * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_ListCatalogItems.html */ toListCatalogItems(): this; /** * Grants permission to list the orders for your AWS account * * Access Level: List * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_ListOrders.html */ toListOrders(): this; /** * Grants permission to list the Outposts for your AWS account * * Access Level: List * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_ListOutposts.html */ toListOutposts(): this; /** * Grants permission to list the sites for your AWS account * * Access Level: List * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_ListSites.html */ toListSites(): this; /** * Grants permission to list tags for a resource * * Access Level: Read * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_ListTagsForResource.html */ toListTagsForResource(): this; /** * Grants permission to create a capacity task * * Access Level: Write * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_StartCapacityTask.html */ toStartCapacityTask(): this; /** * Grants permission to start a connection for your Outpost server * * Access Level: Write * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_StartConnection.html */ toStartConnection(): this; /** * Grants permission to tag a resource * * Access Level: Tagging * * Possible conditions: * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_TagResource.html */ toTagResource(): this; /** * Grants permission to untag a resource * * Access Level: Tagging * * Possible conditions: * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_UntagResource.html */ toUntagResource(): this; /** * Grants permission to update an Outpost * * Access Level: Write * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_UpdateOutpost.html */ toUpdateOutpost(): this; /** * Grants permission to update a site * * Access Level: Write * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_UpdateSite.html */ toUpdateSite(): this; /** * Grants permission to update the site address * * Access Level: Write * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_UpdateSiteAddress.html */ toUpdateSiteAddress(): this; /** * Grants permission to update the physical properties of a rack at a site * * Access Level: Write * * https://docs.aws.amazon.com/outposts/latest/APIReference/API_UpdateSiteRackPhysicalProperties.html */ toUpdateSiteRackPhysicalProperties(): this; protected accessLevelList: AccessLevelList; /** * Adds a resource of type outpost to the statement * * https://docs.aws.amazon.com/outposts/latest/userguide/what-is-outposts.html * * @param outpostId - Identifier for the outpostId. * @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() */ onOutpost(outpostId: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type site to the statement * * https://docs.aws.amazon.com/outposts/latest/userguide/what-is-outposts.html * * @param siteId - Identifier for the siteId. * @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() */ onSite(siteId: string, account?: string, region?: string, partition?: string): this; /** * Filters access by the tags that are passed in the request * * https://docs.aws.amazon.com/outposts/latest/userguide/identity-access-management.html * * Applies to actions: * - .toCreateOutpost() * - .toCreateSite() * - .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/outposts/latest/userguide/identity-access-management.html * * Applies to resource types: * - outpost * - site * * @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/outposts/latest/userguide/identity-access-management.html * * Applies to actions: * - .toCreateOutpost() * - .toCreateSite() * - .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; }