UNPKG

iam-floyd

Version:

AWS IAM policy statement generator with fluent interface

1,077 lines 104 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.WorkspacesWeb = void 0; const shared_1 = require("../../shared"); /** * Statement provider for service [workspaces-web](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonworkspacessecurebrowser.html). * * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement */ class WorkspacesWeb extends shared_1.PolicyStatement { /** * Statement provider for service [workspaces-web](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonworkspacessecurebrowser.html). * * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement */ constructor(sid) { super(sid); this.servicePrefix = 'workspaces-web'; this.accessLevelList = { Write: [ 'AssociateBrowserSettings', 'AssociateDataProtectionSettings', 'AssociateIpAccessSettings', 'AssociateNetworkSettings', 'AssociateTrustStore', 'AssociateUserAccessLoggingSettings', 'AssociateUserSettings', 'CreateBrowserSettings', 'CreateDataProtectionSettings', 'CreateIdentityProvider', 'CreateIpAccessSettings', 'CreateNetworkSettings', 'CreatePortal', 'CreateTrustStore', 'CreateUserAccessLoggingSettings', 'CreateUserSettings', 'DeleteBrowserSettings', 'DeleteDataProtectionSettings', 'DeleteIdentityProvider', 'DeleteIpAccessSettings', 'DeleteNetworkSettings', 'DeletePortal', 'DeleteTrustStore', 'DeleteUserAccessLoggingSettings', 'DeleteUserSettings', 'DisassociateBrowserSettings', 'DisassociateDataProtectionSettings', 'DisassociateIpAccessSettings', 'DisassociateNetworkSettings', 'DisassociateTrustStore', 'DisassociateUserAccessLoggingSettings', 'DisassociateUserSettings', 'ExpireSession', 'UpdateBrowserSettings', 'UpdateDataProtectionSettings', 'UpdateIdentityProvider', 'UpdateIpAccessSettings', 'UpdateNetworkSettings', 'UpdatePortal', 'UpdateTrustStore', 'UpdateUserAccessLoggingSettings', 'UpdateUserSettings' ], Read: [ 'GetBrowserSettings', 'GetDataProtectionSettings', 'GetIdentityProvider', 'GetIpAccessSettings', 'GetNetworkSettings', 'GetPortal', 'GetPortalServiceProviderMetadata', 'GetSession', 'GetTrustStore', 'GetTrustStoreCertificate', 'GetUserAccessLoggingSettings', 'GetUserSettings', 'ListBrowserSettings', 'ListDataProtectionSettings', 'ListIdentityProviders', 'ListIpAccessSettings', 'ListNetworkSettings', 'ListPortals', 'ListSessions', 'ListTagsForResource', 'ListTrustStoreCertificates', 'ListTrustStores', 'ListUserAccessLoggingSettings', 'ListUserSettings' ], Tagging: [ 'TagResource', 'UntagResource' ] }; } /** * Grants permission to associate browser settings to web portals * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_AssociateBrowserSettings.html */ toAssociateBrowserSettings() { return this.to('AssociateBrowserSettings'); } /** * Grants permission to associate data protection settings with web portals * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_AssociateDataProtectionSettings.html */ toAssociateDataProtectionSettings() { return this.to('AssociateDataProtectionSettings'); } /** * Grants permission to associate ip access settings with web portals * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_AssociateIpAccessSettings.html */ toAssociateIpAccessSettings() { return this.to('AssociateIpAccessSettings'); } /** * Grants permission to associate network settings to web portals * * Access Level: Write * * Dependent actions: * - ec2:CreateNetworkInterface * - ec2:CreateNetworkInterfacePermission * - ec2:CreateTags * - ec2:DeleteNetworkInterface * - ec2:DeleteNetworkInterfacePermission * - ec2:ModifyNetworkInterfaceAttribute * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_AssociateNetworkSettings.html */ toAssociateNetworkSettings() { return this.to('AssociateNetworkSettings'); } /** * Grants permission to associate trust stores with web portals * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_AssociateTrustStore.html */ toAssociateTrustStore() { return this.to('AssociateTrustStore'); } /** * Grants permission to associate user access logging settings with web portals * * Access Level: Write * * Dependent actions: * - kinesis:PutRecord * - kinesis:PutRecords * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_AssociateUserAccessLoggingSettings.html */ toAssociateUserAccessLoggingSettings() { return this.to('AssociateUserAccessLoggingSettings'); } /** * Grants permission to associate user settings with web portals * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_AssociateUserSettings.html */ toAssociateUserSettings() { return this.to('AssociateUserSettings'); } /** * Grants permission to create browser settings * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * Dependent actions: * - kms:CreateGrant * - kms:Decrypt * - kms:DescribeKey * - kms:GenerateDataKey * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_CreateBrowserSettings.html */ toCreateBrowserSettings() { return this.to('CreateBrowserSettings'); } /** * Grants permission to create data protection settings * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_CreateDataProtectionSettings.html */ toCreateDataProtectionSettings() { return this.to('CreateDataProtectionSettings'); } /** * Grants permission to create identity providers * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_CreateIdentityProvider.html */ toCreateIdentityProvider() { return this.to('CreateIdentityProvider'); } /** * Grants permission to create ip access settings * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_CreateIpAccessSettings.html */ toCreateIpAccessSettings() { return this.to('CreateIpAccessSettings'); } /** * Grants permission to create network settings * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * Dependent actions: * - iam:CreateServiceLinkedRole * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_CreateNetworkSettings.html */ toCreateNetworkSettings() { return this.to('CreateNetworkSettings'); } /** * Grants permission to create web portals * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * Dependent actions: * - iam:CreateServiceLinkedRole * - kms:CreateGrant * - kms:Decrypt * - kms:DescribeKey * - kms:GenerateDataKey * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_CreatePortal.html */ toCreatePortal() { return this.to('CreatePortal'); } /** * Grants permission to create trust stores * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_CreateTrustStore.html */ toCreateTrustStore() { return this.to('CreateTrustStore'); } /** * Grants permission to create user access logging settings * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_CreateUserAccessLoggingSettings.html */ toCreateUserAccessLoggingSettings() { return this.to('CreateUserAccessLoggingSettings'); } /** * Grants permission to create user settings * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_CreateUserSettings.html */ toCreateUserSettings() { return this.to('CreateUserSettings'); } /** * Grants permission to delete browser settings * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_DeleteBrowserSettings.html */ toDeleteBrowserSettings() { return this.to('DeleteBrowserSettings'); } /** * Grants permission to delete data protection settings * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_DeleteDataProtectionSettings.html */ toDeleteDataProtectionSettings() { return this.to('DeleteDataProtectionSettings'); } /** * Grants permission to delete identity providers * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_DeleteIdentityProvider.html */ toDeleteIdentityProvider() { return this.to('DeleteIdentityProvider'); } /** * Grants permission to delete ip access settings * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_DeleteIpAccessSettings.html */ toDeleteIpAccessSettings() { return this.to('DeleteIpAccessSettings'); } /** * Grants permission to delete network settings * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_DeleteNetworkSettings.html */ toDeleteNetworkSettings() { return this.to('DeleteNetworkSettings'); } /** * Grants permission to delete web portals * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_DeletePortal.html */ toDeletePortal() { return this.to('DeletePortal'); } /** * Grants permission to delete trust stores * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_DeleteTrustStore.html */ toDeleteTrustStore() { return this.to('DeleteTrustStore'); } /** * Grants permission to delete user access logging settings * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_DeleteUserAccessLoggingSettings.html */ toDeleteUserAccessLoggingSettings() { return this.to('DeleteUserAccessLoggingSettings'); } /** * Grants permission to delete user settings * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_DeleteUserSettings.html */ toDeleteUserSettings() { return this.to('DeleteUserSettings'); } /** * Grants permission to disassociate browser settings from web portals * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_DisassociateBrowserSettings.html */ toDisassociateBrowserSettings() { return this.to('DisassociateBrowserSettings'); } /** * Grants permission to disassociate data protection logging from web portals * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_DisassociateDataProtectionSettings.html */ toDisassociateDataProtectionSettings() { return this.to('DisassociateDataProtectionSettings'); } /** * Grants permission to disassociate ip access logging from web portals * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_DisassociateIpAccessSettings.html */ toDisassociateIpAccessSettings() { return this.to('DisassociateIpAccessSettings'); } /** * Grants permission to disassociate network settings from web portals * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_DisassociateNetworkSettings.html */ toDisassociateNetworkSettings() { return this.to('DisassociateNetworkSettings'); } /** * Grants permission to disassociate trust stores from web portals * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_DisassociateTrustStore.html */ toDisassociateTrustStore() { return this.to('DisassociateTrustStore'); } /** * Grants permission to disassociate user access logging settings from web portals * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_DisassociateUserAccessLoggingSettings.html */ toDisassociateUserAccessLoggingSettings() { return this.to('DisassociateUserAccessLoggingSettings'); } /** * Grants permission to disassociate user settings from web portals * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_DisassociateUserSettings.html */ toDisassociateUserSettings() { return this.to('DisassociateUserSettings'); } /** * Grants permission to expire a session from a specific portal * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_ExpireSession.html */ toExpireSession() { return this.to('ExpireSession'); } /** * Grants permission to get details on browser settings * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_GetBrowserSettings.html */ toGetBrowserSettings() { return this.to('GetBrowserSettings'); } /** * Grants permission to get details on data protection settings * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_GetDataProtectionSettings.html */ toGetDataProtectionSettings() { return this.to('GetDataProtectionSettings'); } /** * Grants permission to get details on identity providers * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_GetIdentityProvider.html */ toGetIdentityProvider() { return this.to('GetIdentityProvider'); } /** * Grants permission to get details on ip access settings * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_GetIpAccessSettings.html */ toGetIpAccessSettings() { return this.to('GetIpAccessSettings'); } /** * Grants permission to get details on network settings * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_GetNetworkSettings.html */ toGetNetworkSettings() { return this.to('GetNetworkSettings'); } /** * Grants permission to get details on web portals * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_GetPortal.html */ toGetPortal() { return this.to('GetPortal'); } /** * Grants permission to get service provider metadata information for web portals * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_GetPortalServiceProviderMetadata.html */ toGetPortalServiceProviderMetadata() { return this.to('GetPortalServiceProviderMetadata'); } /** * Grants permission to get information about a particular session for a portal * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_GetSession.html */ toGetSession() { return this.to('GetSession'); } /** * Grants permission to get details on trust stores * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_GetTrustStore.html */ toGetTrustStore() { return this.to('GetTrustStore'); } /** * Grants permission to get certificates from trust stores * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_GetTrustStoreCertificate.html */ toGetTrustStoreCertificate() { return this.to('GetTrustStoreCertificate'); } /** * Grants permission to get details on user access logging settings * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_GetUserAccessLoggingSettings.html */ toGetUserAccessLoggingSettings() { return this.to('GetUserAccessLoggingSettings'); } /** * Grants permission to get details on user settings * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_GetUserSettings.html */ toGetUserSettings() { return this.to('GetUserSettings'); } /** * Grants permission to list browser settings * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_ListBrowserSettings.html */ toListBrowserSettings() { return this.to('ListBrowserSettings'); } /** * Grants permission to list data protection settings * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_ListDataProtectionSettings.html */ toListDataProtectionSettings() { return this.to('ListDataProtectionSettings'); } /** * Grants permission to list identity providers * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_ListIdentityProviders.html */ toListIdentityProviders() { return this.to('ListIdentityProviders'); } /** * Grants permission to list ip access settings * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_ListIpAccessSettings.html */ toListIpAccessSettings() { return this.to('ListIpAccessSettings'); } /** * Grants permission to list network settings * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_ListNetworkSettings.html */ toListNetworkSettings() { return this.to('ListNetworkSettings'); } /** * Grants permission to list web portals * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_ListPortals.html */ toListPortals() { return this.to('ListPortals'); } /** * Grants permission to list sessions for a Portal using optional filters * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_ListSessions.html */ toListSessions() { return this.to('ListSessions'); } /** * Grants permission to list tags for a resource * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_ListTagsForResource.html */ toListTagsForResource() { return this.to('ListTagsForResource'); } /** * Grants permission to list certificates in a trust store * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_ListTrustStoreCertificates.html */ toListTrustStoreCertificates() { return this.to('ListTrustStoreCertificates'); } /** * Grants permission to list trust stores * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_ListTrustStores.html */ toListTrustStores() { return this.to('ListTrustStores'); } /** * Grants permission to list user access logging settings * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_ListUserAccessLoggingSettings.html */ toListUserAccessLoggingSettings() { return this.to('ListUserAccessLoggingSettings'); } /** * Grants permission to list user settings * * Access Level: Read * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_ListUserSettings.html */ toListUserSettings() { return this.to('ListUserSettings'); } /** * Grants permission to add one or more tags to a resource * * Access Level: Tagging * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_TagResource.html */ toTagResource() { return this.to('TagResource'); } /** * Grants permission to remove one or more tags from a resource * * Access Level: Tagging * * Possible conditions: * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_UntagResource.html */ toUntagResource() { return this.to('UntagResource'); } /** * Grants permission to update browser settings * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_UpdateBrowserSettings.html */ toUpdateBrowserSettings() { return this.to('UpdateBrowserSettings'); } /** * Grants permission to update data protection settings * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_UpdateDataProtectionSettings.html */ toUpdateDataProtectionSettings() { return this.to('UpdateDataProtectionSettings'); } /** * Grants permission to update identity provider * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_UpdateIdentityProvider.html */ toUpdateIdentityProvider() { return this.to('UpdateIdentityProvider'); } /** * Grants permission to update ip access settings * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_UpdateIpAccessSettings.html */ toUpdateIpAccessSettings() { return this.to('UpdateIpAccessSettings'); } /** * Grants permission to update network settings * * Access Level: Write * * Dependent actions: * - ec2:CreateNetworkInterface * - ec2:CreateNetworkInterfacePermission * - ec2:CreateTags * - ec2:DeleteNetworkInterface * - ec2:DeleteNetworkInterfacePermission * - ec2:ModifyNetworkInterfaceAttribute * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_UpdateNetworkSettings.html */ toUpdateNetworkSettings() { return this.to('UpdateNetworkSettings'); } /** * Grants permission to update web portals * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_UpdatePortal.html */ toUpdatePortal() { return this.to('UpdatePortal'); } /** * Grants permission to update trust stores * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_UpdateTrustStore.html */ toUpdateTrustStore() { return this.to('UpdateTrustStore'); } /** * Grants permission to update user access logging settings * * Access Level: Write * * Dependent actions: * - kinesis:PutRecord * - kinesis:PutRecords * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_UpdateUserAccessLoggingSettings.html */ toUpdateUserAccessLoggingSettings() { return this.to('UpdateUserAccessLoggingSettings'); } /** * Grants permission to update user settings * * Access Level: Write * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_UpdateUserSettings.html */ toUpdateUserSettings() { return this.to('UpdateUserSettings'); } /** * Adds a resource of type browserSettings to the statement * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_CreateBrowserSettings.html * * @param browserSettingsId - Identifier for the browserSettingsId. * @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() */ onBrowserSettings(browserSettingsId, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:workspaces-web:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:browserSettings/${browserSettingsId}`); } /** * Adds a resource of type identityProvider to the statement * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_CreateIdentityProvider.html * * @param portalId - Identifier for the portalId. * @param identityProviderId - Identifier for the identityProviderId. * @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() */ onIdentityProvider(portalId, identityProviderId, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:workspaces-web:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:identityProvider/${portalId}/${identityProviderId}`); } /** * Adds a resource of type networkSettings to the statement * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_CreateNetworkSettings.html * * @param networkSettingsId - Identifier for the networkSettingsId. * @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() */ onNetworkSettings(networkSettingsId, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:workspaces-web:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:networkSettings/${networkSettingsId}`); } /** * Adds a resource of type portal to the statement * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_CreatePortal.html * * @param portalId - Identifier for the portalId. * @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() */ onPortal(portalId, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:workspaces-web:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:portal/${portalId}`); } /** * Adds a resource of type trustStore to the statement * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_CreateTrustStore.html * * @param trustStoreId - Identifier for the trustStoreId. * @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() */ onTrustStore(trustStoreId, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:workspaces-web:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:trustStore/${trustStoreId}`); } /** * Adds a resource of type userSettings to the statement * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_CreateUserSettings.html * * @param userSettingsId - Identifier for the userSettingsId. * @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() */ onUserSettings(userSettingsId, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:workspaces-web:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:userSettings/${userSettingsId}`); } /** * Adds a resource of type userAccessLoggingSettings to the statement * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_CreateUserAccessLoggingSettings.html * * @param userAccessLoggingSettingsId - Identifier for the userAccessLoggingSettingsId. * @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() */ onUserAccessLoggingSettings(userAccessLoggingSettingsId, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:workspaces-web:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:userAccessLoggingSettings/${userAccessLoggingSettingsId}`); } /** * Adds a resource of type ipAccessSettings to the statement * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_CreateIpAccessSettings.html * * @param ipAccessSettingsId - Identifier for the ipAccessSettingsId. * @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() */ onIpAccessSettings(ipAccessSettingsId, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:workspaces-web:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:ipAccessSettings/${ipAccessSettingsId}`); } /** * Adds a resource of type dataProtectionSettings to the statement * * https://docs.aws.amazon.com/workspaces-web/latest/APIReference/API_CreateDataProtectionSettings.html * * @param dataProtectionSettingsId - Identifier for the dataProtectionSettingsId. * @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() */ onDataProtectionSettings(dataProtectionSettingsId, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:workspaces-web:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:dataProtectionSettings/${dataProtectionSettingsId}`); } /** * 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: * - .toCreateBrowserSettings() * - .toCreateDataProtectionSettings() * - .toCreateIdentityProvider() * - .toCreateIpAccessSettings() * - .toCreateNetworkSettings() * - .toCreatePortal() * - .toCreateTrustStore() * - .toCreateUserAccessLoggingSettings() * - .toCreateUserSettings() * - .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, value, operator) { return this.if(`aws:RequestTag/${tagKey}`, value, operator ?? 'StringLike'); } /** * 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: * - browserSettings * - identityProvider * - networkSettings * - portal * - trustStore * - userSettings * - userAccessLoggingSettings * - ipAccessSettings * - dataProtectionSettings * * @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, value, operator) { return this.if(`aws:ResourceTag/${tagKey}`, value, operator ?? 'StringLike'); } /** * 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: * - .toCreateBrowserSettings() * - .toCreateDataProtectionSettings() * - .toCreateIdentityProvider() * - .toCreateIpAccessSettings() * - .toCreateNetworkSettings() * - .toCreatePortal() * - .toCreateTrustStore() * - .toCreateUserAccessLoggingSettings() * - .toCreateUserSettings() * - .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, operator) { return this.if(`aws:TagKeys`, value, operator ?? 'StringLike'); } } exports.WorkspacesWeb = WorkspacesWeb; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya3NwYWNlc3NlY3VyZWJyb3dzZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ3b3Jrc3BhY2Vzc2VjdXJlYnJvd3Nlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSx5Q0FBeUQ7QUFFekQ7Ozs7R0FJRztBQUNILE1BQWEsYUFBYyxTQUFRLHdCQUFlO0lBR2hEOzs7O09BSUc7SUFDSCxZQUFZLEdBQVk7UUFDdEIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBUk4sa0JBQWEsR0FBRyxnQkFBZ0IsQ0FBQztRQTAwQjlCLG9CQUFlLEdBQW9CO1lBQzNDLEtBQUssRUFBRTtnQkFDTCwwQkFBMEI7Z0JBQzFCLGlDQUFpQztnQkFDakMsMkJBQTJCO2dCQUMzQiwwQkFBMEI7Z0JBQzFCLHFCQUFxQjtnQkFDckIsb0NBQW9DO2dCQUNwQyx1QkFBdUI7Z0JBQ3ZCLHVCQUF1QjtnQkFDdkIsOEJBQThCO2dCQUM5Qix3QkFBd0I7Z0JBQ3hCLHdCQUF3QjtnQkFDeEIsdUJBQXVCO2dCQUN2QixjQUFjO2dCQUNkLGtCQUFrQjtnQkFDbEIsaUNBQWlDO2dCQUNqQyxvQkFBb0I7Z0JBQ3BCLHVCQUF1QjtnQkFDdkIsOEJBQThCO2dCQUM5Qix3QkFBd0I7Z0JBQ3hCLHdCQUF3QjtnQkFDeEIsdUJBQXVCO2dCQUN2QixjQUFjO2dCQUNkLGtCQUFrQjtnQkFDbEIsaUNBQWlDO2dCQUNqQyxvQkFBb0I7Z0JBQ3BCLDZCQUE2QjtnQkFDN0Isb0NBQW9DO2dCQUNwQyw4QkFBOEI7Z0JBQzlCLDZCQUE2QjtnQkFDN0Isd0JBQXdCO2dCQUN4Qix1Q0FBdUM7Z0JBQ3ZDLDBCQUEwQjtnQkFDMUIsZUFBZTtnQkFDZix1QkFBdUI7Z0JBQ3ZCLDhCQUE4QjtnQkFDOUIsd0JBQXdCO2dCQUN4Qix3QkFBd0I7Z0JBQ3hCLHVCQUF1QjtnQkFDdkIsY0FBYztnQkFDZCxrQkFBa0I7Z0JBQ2xCLGlDQUFpQztnQkFDakMsb0JBQW9CO2FBQ3JCO1lBQ0QsSUFBSSxF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