aws-sdk-workspaces 1.43.0 → 1.48.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -19,8 +19,13 @@ module Aws::WorkSpaces
19
19
  AccountModification = Shapes::StructureShape.new(name: 'AccountModification')
20
20
  AccountModificationList = Shapes::ListShape.new(name: 'AccountModificationList')
21
21
  Alias = Shapes::StringShape.new(name: 'Alias')
22
+ Application = Shapes::StringShape.new(name: 'Application')
23
+ ApplicationList = Shapes::ListShape.new(name: 'ApplicationList')
24
+ AssociateConnectionAliasRequest = Shapes::StructureShape.new(name: 'AssociateConnectionAliasRequest')
25
+ AssociateConnectionAliasResult = Shapes::StructureShape.new(name: 'AssociateConnectionAliasResult')
22
26
  AssociateIpGroupsRequest = Shapes::StructureShape.new(name: 'AssociateIpGroupsRequest')
23
27
  AssociateIpGroupsResult = Shapes::StructureShape.new(name: 'AssociateIpGroupsResult')
28
+ AssociationStatus = Shapes::StringShape.new(name: 'AssociationStatus')
24
29
  AuthorizeIpRulesRequest = Shapes::StructureShape.new(name: 'AuthorizeIpRulesRequest')
25
30
  AuthorizeIpRulesResult = Shapes::StructureShape.new(name: 'AuthorizeIpRulesResult')
26
31
  AwsAccount = Shapes::StringShape.new(name: 'AwsAccount')
@@ -35,9 +40,22 @@ module Aws::WorkSpaces
35
40
  Compute = Shapes::StringShape.new(name: 'Compute')
36
41
  ComputeType = Shapes::StructureShape.new(name: 'ComputeType')
37
42
  ComputerName = Shapes::StringShape.new(name: 'ComputerName')
43
+ ConnectionAlias = Shapes::StructureShape.new(name: 'ConnectionAlias')
44
+ ConnectionAliasAssociation = Shapes::StructureShape.new(name: 'ConnectionAliasAssociation')
45
+ ConnectionAliasAssociationList = Shapes::ListShape.new(name: 'ConnectionAliasAssociationList')
46
+ ConnectionAliasId = Shapes::StringShape.new(name: 'ConnectionAliasId')
47
+ ConnectionAliasIdList = Shapes::ListShape.new(name: 'ConnectionAliasIdList')
48
+ ConnectionAliasList = Shapes::ListShape.new(name: 'ConnectionAliasList')
49
+ ConnectionAliasPermission = Shapes::StructureShape.new(name: 'ConnectionAliasPermission')
50
+ ConnectionAliasPermissions = Shapes::ListShape.new(name: 'ConnectionAliasPermissions')
51
+ ConnectionAliasState = Shapes::StringShape.new(name: 'ConnectionAliasState')
52
+ ConnectionIdentifier = Shapes::StringShape.new(name: 'ConnectionIdentifier')
38
53
  ConnectionState = Shapes::StringShape.new(name: 'ConnectionState')
54
+ ConnectionString = Shapes::StringShape.new(name: 'ConnectionString')
39
55
  CopyWorkspaceImageRequest = Shapes::StructureShape.new(name: 'CopyWorkspaceImageRequest')
40
56
  CopyWorkspaceImageResult = Shapes::StructureShape.new(name: 'CopyWorkspaceImageResult')
57
+ CreateConnectionAliasRequest = Shapes::StructureShape.new(name: 'CreateConnectionAliasRequest')
58
+ CreateConnectionAliasResult = Shapes::StructureShape.new(name: 'CreateConnectionAliasResult')
41
59
  CreateIpGroupRequest = Shapes::StructureShape.new(name: 'CreateIpGroupRequest')
42
60
  CreateIpGroupResult = Shapes::StructureShape.new(name: 'CreateIpGroupResult')
43
61
  CreateTagsRequest = Shapes::StructureShape.new(name: 'CreateTagsRequest')
@@ -51,6 +69,8 @@ module Aws::WorkSpaces
51
69
  DedicatedTenancySupportResultEnum = Shapes::StringShape.new(name: 'DedicatedTenancySupportResultEnum')
52
70
  DefaultOu = Shapes::StringShape.new(name: 'DefaultOu')
53
71
  DefaultWorkspaceCreationProperties = Shapes::StructureShape.new(name: 'DefaultWorkspaceCreationProperties')
72
+ DeleteConnectionAliasRequest = Shapes::StructureShape.new(name: 'DeleteConnectionAliasRequest')
73
+ DeleteConnectionAliasResult = Shapes::StructureShape.new(name: 'DeleteConnectionAliasResult')
54
74
  DeleteIpGroupRequest = Shapes::StructureShape.new(name: 'DeleteIpGroupRequest')
55
75
  DeleteIpGroupResult = Shapes::StructureShape.new(name: 'DeleteIpGroupResult')
56
76
  DeleteTagsRequest = Shapes::StructureShape.new(name: 'DeleteTagsRequest')
@@ -65,6 +85,10 @@ module Aws::WorkSpaces
65
85
  DescribeAccountResult = Shapes::StructureShape.new(name: 'DescribeAccountResult')
66
86
  DescribeClientPropertiesRequest = Shapes::StructureShape.new(name: 'DescribeClientPropertiesRequest')
67
87
  DescribeClientPropertiesResult = Shapes::StructureShape.new(name: 'DescribeClientPropertiesResult')
88
+ DescribeConnectionAliasPermissionsRequest = Shapes::StructureShape.new(name: 'DescribeConnectionAliasPermissionsRequest')
89
+ DescribeConnectionAliasPermissionsResult = Shapes::StructureShape.new(name: 'DescribeConnectionAliasPermissionsResult')
90
+ DescribeConnectionAliasesRequest = Shapes::StructureShape.new(name: 'DescribeConnectionAliasesRequest')
91
+ DescribeConnectionAliasesResult = Shapes::StructureShape.new(name: 'DescribeConnectionAliasesResult')
68
92
  DescribeIpGroupsRequest = Shapes::StructureShape.new(name: 'DescribeIpGroupsRequest')
69
93
  DescribeIpGroupsResult = Shapes::StructureShape.new(name: 'DescribeIpGroupsResult')
70
94
  DescribeTagsRequest = Shapes::StructureShape.new(name: 'DescribeTagsRequest')
@@ -88,6 +112,8 @@ module Aws::WorkSpaces
88
112
  DirectoryIdList = Shapes::ListShape.new(name: 'DirectoryIdList')
89
113
  DirectoryList = Shapes::ListShape.new(name: 'DirectoryList')
90
114
  DirectoryName = Shapes::StringShape.new(name: 'DirectoryName')
115
+ DisassociateConnectionAliasRequest = Shapes::StructureShape.new(name: 'DisassociateConnectionAliasRequest')
116
+ DisassociateConnectionAliasResult = Shapes::StructureShape.new(name: 'DisassociateConnectionAliasResult')
91
117
  DisassociateIpGroupsRequest = Shapes::StructureShape.new(name: 'DisassociateIpGroupsRequest')
92
118
  DisassociateIpGroupsResult = Shapes::StructureShape.new(name: 'DisassociateIpGroupsResult')
93
119
  DnsIpAddresses = Shapes::ListShape.new(name: 'DnsIpAddresses')
@@ -206,6 +232,8 @@ module Aws::WorkSpaces
206
232
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
207
233
  UnsupportedNetworkConfigurationException = Shapes::StructureShape.new(name: 'UnsupportedNetworkConfigurationException')
208
234
  UnsupportedWorkspaceConfigurationException = Shapes::StructureShape.new(name: 'UnsupportedWorkspaceConfigurationException')
235
+ UpdateConnectionAliasPermissionRequest = Shapes::StructureShape.new(name: 'UpdateConnectionAliasPermissionRequest')
236
+ UpdateConnectionAliasPermissionResult = Shapes::StructureShape.new(name: 'UpdateConnectionAliasPermissionResult')
209
237
  UpdateRulesOfIpGroupRequest = Shapes::StructureShape.new(name: 'UpdateRulesOfIpGroupRequest')
210
238
  UpdateRulesOfIpGroupResult = Shapes::StructureShape.new(name: 'UpdateRulesOfIpGroupResult')
211
239
  UpdateWorkspaceImagePermissionRequest = Shapes::StructureShape.new(name: 'UpdateWorkspaceImagePermissionRequest')
@@ -258,6 +286,15 @@ module Aws::WorkSpaces
258
286
 
259
287
  AccountModificationList.member = Shapes::ShapeRef.new(shape: AccountModification)
260
288
 
289
+ ApplicationList.member = Shapes::ShapeRef.new(shape: Application)
290
+
291
+ AssociateConnectionAliasRequest.add_member(:alias_id, Shapes::ShapeRef.new(shape: ConnectionAliasId, required: true, location_name: "AliasId"))
292
+ AssociateConnectionAliasRequest.add_member(:resource_id, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "ResourceId"))
293
+ AssociateConnectionAliasRequest.struct_class = Types::AssociateConnectionAliasRequest
294
+
295
+ AssociateConnectionAliasResult.add_member(:connection_identifier, Shapes::ShapeRef.new(shape: ConnectionIdentifier, location_name: "ConnectionIdentifier"))
296
+ AssociateConnectionAliasResult.struct_class = Types::AssociateConnectionAliasResult
297
+
261
298
  AssociateIpGroupsRequest.add_member(:directory_id, Shapes::ShapeRef.new(shape: DirectoryId, required: true, location_name: "DirectoryId"))
262
299
  AssociateIpGroupsRequest.add_member(:group_ids, Shapes::ShapeRef.new(shape: IpGroupIdList, required: true, location_name: "GroupIds"))
263
300
  AssociateIpGroupsRequest.struct_class = Types::AssociateIpGroupsRequest
@@ -286,6 +323,31 @@ module Aws::WorkSpaces
286
323
  ComputeType.add_member(:name, Shapes::ShapeRef.new(shape: Compute, location_name: "Name"))
287
324
  ComputeType.struct_class = Types::ComputeType
288
325
 
326
+ ConnectionAlias.add_member(:connection_string, Shapes::ShapeRef.new(shape: ConnectionString, location_name: "ConnectionString"))
327
+ ConnectionAlias.add_member(:alias_id, Shapes::ShapeRef.new(shape: ConnectionAliasId, location_name: "AliasId"))
328
+ ConnectionAlias.add_member(:state, Shapes::ShapeRef.new(shape: ConnectionAliasState, location_name: "State"))
329
+ ConnectionAlias.add_member(:owner_account_id, Shapes::ShapeRef.new(shape: AwsAccount, location_name: "OwnerAccountId"))
330
+ ConnectionAlias.add_member(:associations, Shapes::ShapeRef.new(shape: ConnectionAliasAssociationList, location_name: "Associations"))
331
+ ConnectionAlias.struct_class = Types::ConnectionAlias
332
+
333
+ ConnectionAliasAssociation.add_member(:association_status, Shapes::ShapeRef.new(shape: AssociationStatus, location_name: "AssociationStatus"))
334
+ ConnectionAliasAssociation.add_member(:associated_account_id, Shapes::ShapeRef.new(shape: AwsAccount, location_name: "AssociatedAccountId"))
335
+ ConnectionAliasAssociation.add_member(:resource_id, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "ResourceId"))
336
+ ConnectionAliasAssociation.add_member(:connection_identifier, Shapes::ShapeRef.new(shape: ConnectionIdentifier, location_name: "ConnectionIdentifier"))
337
+ ConnectionAliasAssociation.struct_class = Types::ConnectionAliasAssociation
338
+
339
+ ConnectionAliasAssociationList.member = Shapes::ShapeRef.new(shape: ConnectionAliasAssociation)
340
+
341
+ ConnectionAliasIdList.member = Shapes::ShapeRef.new(shape: ConnectionAliasId)
342
+
343
+ ConnectionAliasList.member = Shapes::ShapeRef.new(shape: ConnectionAlias)
344
+
345
+ ConnectionAliasPermission.add_member(:shared_account_id, Shapes::ShapeRef.new(shape: AwsAccount, required: true, location_name: "SharedAccountId"))
346
+ ConnectionAliasPermission.add_member(:allow_association, Shapes::ShapeRef.new(shape: BooleanObject, required: true, location_name: "AllowAssociation"))
347
+ ConnectionAliasPermission.struct_class = Types::ConnectionAliasPermission
348
+
349
+ ConnectionAliasPermissions.member = Shapes::ShapeRef.new(shape: ConnectionAliasPermission)
350
+
289
351
  CopyWorkspaceImageRequest.add_member(:name, Shapes::ShapeRef.new(shape: WorkspaceImageName, required: true, location_name: "Name"))
290
352
  CopyWorkspaceImageRequest.add_member(:description, Shapes::ShapeRef.new(shape: WorkspaceImageDescription, location_name: "Description"))
291
353
  CopyWorkspaceImageRequest.add_member(:source_image_id, Shapes::ShapeRef.new(shape: WorkspaceImageId, required: true, location_name: "SourceImageId"))
@@ -296,6 +358,13 @@ module Aws::WorkSpaces
296
358
  CopyWorkspaceImageResult.add_member(:image_id, Shapes::ShapeRef.new(shape: WorkspaceImageId, location_name: "ImageId"))
297
359
  CopyWorkspaceImageResult.struct_class = Types::CopyWorkspaceImageResult
298
360
 
361
+ CreateConnectionAliasRequest.add_member(:connection_string, Shapes::ShapeRef.new(shape: ConnectionString, required: true, location_name: "ConnectionString"))
362
+ CreateConnectionAliasRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
363
+ CreateConnectionAliasRequest.struct_class = Types::CreateConnectionAliasRequest
364
+
365
+ CreateConnectionAliasResult.add_member(:alias_id, Shapes::ShapeRef.new(shape: ConnectionAliasId, location_name: "AliasId"))
366
+ CreateConnectionAliasResult.struct_class = Types::CreateConnectionAliasResult
367
+
299
368
  CreateIpGroupRequest.add_member(:group_name, Shapes::ShapeRef.new(shape: IpGroupName, required: true, location_name: "GroupName"))
300
369
  CreateIpGroupRequest.add_member(:group_desc, Shapes::ShapeRef.new(shape: IpGroupDesc, location_name: "GroupDesc"))
301
370
  CreateIpGroupRequest.add_member(:user_rules, Shapes::ShapeRef.new(shape: IpRuleList, location_name: "UserRules"))
@@ -328,6 +397,11 @@ module Aws::WorkSpaces
328
397
  DefaultWorkspaceCreationProperties.add_member(:enable_maintenance_mode, Shapes::ShapeRef.new(shape: BooleanObject, location_name: "EnableMaintenanceMode"))
329
398
  DefaultWorkspaceCreationProperties.struct_class = Types::DefaultWorkspaceCreationProperties
330
399
 
400
+ DeleteConnectionAliasRequest.add_member(:alias_id, Shapes::ShapeRef.new(shape: ConnectionAliasId, required: true, location_name: "AliasId"))
401
+ DeleteConnectionAliasRequest.struct_class = Types::DeleteConnectionAliasRequest
402
+
403
+ DeleteConnectionAliasResult.struct_class = Types::DeleteConnectionAliasResult
404
+
331
405
  DeleteIpGroupRequest.add_member(:group_id, Shapes::ShapeRef.new(shape: IpGroupId, required: true, location_name: "GroupId"))
332
406
  DeleteIpGroupRequest.struct_class = Types::DeleteIpGroupRequest
333
407
 
@@ -368,6 +442,26 @@ module Aws::WorkSpaces
368
442
  DescribeClientPropertiesResult.add_member(:client_properties_list, Shapes::ShapeRef.new(shape: ClientPropertiesList, location_name: "ClientPropertiesList"))
369
443
  DescribeClientPropertiesResult.struct_class = Types::DescribeClientPropertiesResult
370
444
 
445
+ DescribeConnectionAliasPermissionsRequest.add_member(:alias_id, Shapes::ShapeRef.new(shape: ConnectionAliasId, required: true, location_name: "AliasId"))
446
+ DescribeConnectionAliasPermissionsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
447
+ DescribeConnectionAliasPermissionsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: Limit, location_name: "MaxResults"))
448
+ DescribeConnectionAliasPermissionsRequest.struct_class = Types::DescribeConnectionAliasPermissionsRequest
449
+
450
+ DescribeConnectionAliasPermissionsResult.add_member(:alias_id, Shapes::ShapeRef.new(shape: ConnectionAliasId, location_name: "AliasId"))
451
+ DescribeConnectionAliasPermissionsResult.add_member(:connection_alias_permissions, Shapes::ShapeRef.new(shape: ConnectionAliasPermissions, location_name: "ConnectionAliasPermissions"))
452
+ DescribeConnectionAliasPermissionsResult.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
453
+ DescribeConnectionAliasPermissionsResult.struct_class = Types::DescribeConnectionAliasPermissionsResult
454
+
455
+ DescribeConnectionAliasesRequest.add_member(:alias_ids, Shapes::ShapeRef.new(shape: ConnectionAliasIdList, location_name: "AliasIds"))
456
+ DescribeConnectionAliasesRequest.add_member(:resource_id, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "ResourceId"))
457
+ DescribeConnectionAliasesRequest.add_member(:limit, Shapes::ShapeRef.new(shape: Limit, location_name: "Limit"))
458
+ DescribeConnectionAliasesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
459
+ DescribeConnectionAliasesRequest.struct_class = Types::DescribeConnectionAliasesRequest
460
+
461
+ DescribeConnectionAliasesResult.add_member(:connection_aliases, Shapes::ShapeRef.new(shape: ConnectionAliasList, location_name: "ConnectionAliases"))
462
+ DescribeConnectionAliasesResult.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
463
+ DescribeConnectionAliasesResult.struct_class = Types::DescribeConnectionAliasesResult
464
+
371
465
  DescribeIpGroupsRequest.add_member(:group_ids, Shapes::ShapeRef.new(shape: IpGroupIdList, location_name: "GroupIds"))
372
466
  DescribeIpGroupsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
373
467
  DescribeIpGroupsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: Limit, location_name: "MaxResults"))
@@ -452,6 +546,11 @@ module Aws::WorkSpaces
452
546
 
453
547
  DirectoryList.member = Shapes::ShapeRef.new(shape: WorkspaceDirectory)
454
548
 
549
+ DisassociateConnectionAliasRequest.add_member(:alias_id, Shapes::ShapeRef.new(shape: ConnectionAliasId, required: true, location_name: "AliasId"))
550
+ DisassociateConnectionAliasRequest.struct_class = Types::DisassociateConnectionAliasRequest
551
+
552
+ DisassociateConnectionAliasResult.struct_class = Types::DisassociateConnectionAliasResult
553
+
455
554
  DisassociateIpGroupsRequest.add_member(:directory_id, Shapes::ShapeRef.new(shape: DirectoryId, required: true, location_name: "DirectoryId"))
456
555
  DisassociateIpGroupsRequest.add_member(:group_ids, Shapes::ShapeRef.new(shape: IpGroupIdList, required: true, location_name: "GroupIds"))
457
556
  DisassociateIpGroupsRequest.struct_class = Types::DisassociateIpGroupsRequest
@@ -492,6 +591,7 @@ module Aws::WorkSpaces
492
591
  ImportWorkspaceImageRequest.add_member(:image_name, Shapes::ShapeRef.new(shape: WorkspaceImageName, required: true, location_name: "ImageName"))
493
592
  ImportWorkspaceImageRequest.add_member(:image_description, Shapes::ShapeRef.new(shape: WorkspaceImageDescription, required: true, location_name: "ImageDescription"))
494
593
  ImportWorkspaceImageRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
594
+ ImportWorkspaceImageRequest.add_member(:applications, Shapes::ShapeRef.new(shape: ApplicationList, location_name: "Applications"))
495
595
  ImportWorkspaceImageRequest.struct_class = Types::ImportWorkspaceImageRequest
496
596
 
497
597
  ImportWorkspaceImageResult.add_member(:image_id, Shapes::ShapeRef.new(shape: WorkspaceImageId, location_name: "ImageId"))
@@ -716,6 +816,12 @@ module Aws::WorkSpaces
716
816
  UnsupportedWorkspaceConfigurationException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "message"))
717
817
  UnsupportedWorkspaceConfigurationException.struct_class = Types::UnsupportedWorkspaceConfigurationException
718
818
 
819
+ UpdateConnectionAliasPermissionRequest.add_member(:alias_id, Shapes::ShapeRef.new(shape: ConnectionAliasId, required: true, location_name: "AliasId"))
820
+ UpdateConnectionAliasPermissionRequest.add_member(:connection_alias_permission, Shapes::ShapeRef.new(shape: ConnectionAliasPermission, required: true, location_name: "ConnectionAliasPermission"))
821
+ UpdateConnectionAliasPermissionRequest.struct_class = Types::UpdateConnectionAliasPermissionRequest
822
+
823
+ UpdateConnectionAliasPermissionResult.struct_class = Types::UpdateConnectionAliasPermissionResult
824
+
719
825
  UpdateRulesOfIpGroupRequest.add_member(:group_id, Shapes::ShapeRef.new(shape: IpGroupId, required: true, location_name: "GroupId"))
720
826
  UpdateRulesOfIpGroupRequest.add_member(:user_rules, Shapes::ShapeRef.new(shape: IpRuleList, required: true, location_name: "UserRules"))
721
827
  UpdateRulesOfIpGroupRequest.struct_class = Types::UpdateRulesOfIpGroupRequest
@@ -871,6 +977,20 @@ module Aws::WorkSpaces
871
977
  "uid" => "workspaces-2015-04-08",
872
978
  }
873
979
 
980
+ api.add_operation(:associate_connection_alias, Seahorse::Model::Operation.new.tap do |o|
981
+ o.name = "AssociateConnectionAlias"
982
+ o.http_method = "POST"
983
+ o.http_request_uri = "/"
984
+ o.input = Shapes::ShapeRef.new(shape: AssociateConnectionAliasRequest)
985
+ o.output = Shapes::ShapeRef.new(shape: AssociateConnectionAliasResult)
986
+ o.errors << Shapes::ShapeRef.new(shape: ResourceAssociatedException)
987
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
988
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
989
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValuesException)
990
+ o.errors << Shapes::ShapeRef.new(shape: InvalidResourceStateException)
991
+ o.errors << Shapes::ShapeRef.new(shape: OperationNotSupportedException)
992
+ end)
993
+
874
994
  api.add_operation(:associate_ip_groups, Seahorse::Model::Operation.new.tap do |o|
875
995
  o.name = "AssociateIpGroups"
876
996
  o.http_method = "POST"
@@ -913,6 +1033,20 @@ module Aws::WorkSpaces
913
1033
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValuesException)
914
1034
  end)
915
1035
 
1036
+ api.add_operation(:create_connection_alias, Seahorse::Model::Operation.new.tap do |o|
1037
+ o.name = "CreateConnectionAlias"
1038
+ o.http_method = "POST"
1039
+ o.http_request_uri = "/"
1040
+ o.input = Shapes::ShapeRef.new(shape: CreateConnectionAliasRequest)
1041
+ o.output = Shapes::ShapeRef.new(shape: CreateConnectionAliasResult)
1042
+ o.errors << Shapes::ShapeRef.new(shape: ResourceAlreadyExistsException)
1043
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1044
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValuesException)
1045
+ o.errors << Shapes::ShapeRef.new(shape: ResourceLimitExceededException)
1046
+ o.errors << Shapes::ShapeRef.new(shape: InvalidResourceStateException)
1047
+ o.errors << Shapes::ShapeRef.new(shape: OperationNotSupportedException)
1048
+ end)
1049
+
916
1050
  api.add_operation(:create_ip_group, Seahorse::Model::Operation.new.tap do |o|
917
1051
  o.name = "CreateIpGroup"
918
1052
  o.http_method = "POST"
@@ -947,6 +1081,20 @@ module Aws::WorkSpaces
947
1081
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValuesException)
948
1082
  end)
949
1083
 
1084
+ api.add_operation(:delete_connection_alias, Seahorse::Model::Operation.new.tap do |o|
1085
+ o.name = "DeleteConnectionAlias"
1086
+ o.http_method = "POST"
1087
+ o.http_request_uri = "/"
1088
+ o.input = Shapes::ShapeRef.new(shape: DeleteConnectionAliasRequest)
1089
+ o.output = Shapes::ShapeRef.new(shape: DeleteConnectionAliasResult)
1090
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1091
+ o.errors << Shapes::ShapeRef.new(shape: ResourceAssociatedException)
1092
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1093
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValuesException)
1094
+ o.errors << Shapes::ShapeRef.new(shape: InvalidResourceStateException)
1095
+ o.errors << Shapes::ShapeRef.new(shape: OperationNotSupportedException)
1096
+ end)
1097
+
950
1098
  api.add_operation(:delete_ip_group, Seahorse::Model::Operation.new.tap do |o|
951
1099
  o.name = "DeleteIpGroup"
952
1100
  o.http_method = "POST"
@@ -1022,6 +1170,29 @@ module Aws::WorkSpaces
1022
1170
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1023
1171
  end)
1024
1172
 
1173
+ api.add_operation(:describe_connection_alias_permissions, Seahorse::Model::Operation.new.tap do |o|
1174
+ o.name = "DescribeConnectionAliasPermissions"
1175
+ o.http_method = "POST"
1176
+ o.http_request_uri = "/"
1177
+ o.input = Shapes::ShapeRef.new(shape: DescribeConnectionAliasPermissionsRequest)
1178
+ o.output = Shapes::ShapeRef.new(shape: DescribeConnectionAliasPermissionsResult)
1179
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1180
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValuesException)
1181
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1182
+ o.errors << Shapes::ShapeRef.new(shape: OperationNotSupportedException)
1183
+ end)
1184
+
1185
+ api.add_operation(:describe_connection_aliases, Seahorse::Model::Operation.new.tap do |o|
1186
+ o.name = "DescribeConnectionAliases"
1187
+ o.http_method = "POST"
1188
+ o.http_request_uri = "/"
1189
+ o.input = Shapes::ShapeRef.new(shape: DescribeConnectionAliasesRequest)
1190
+ o.output = Shapes::ShapeRef.new(shape: DescribeConnectionAliasesResult)
1191
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1192
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValuesException)
1193
+ o.errors << Shapes::ShapeRef.new(shape: OperationNotSupportedException)
1194
+ end)
1195
+
1025
1196
  api.add_operation(:describe_ip_groups, Seahorse::Model::Operation.new.tap do |o|
1026
1197
  o.name = "DescribeIpGroups"
1027
1198
  o.http_method = "POST"
@@ -1125,6 +1296,19 @@ module Aws::WorkSpaces
1125
1296
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValuesException)
1126
1297
  end)
1127
1298
 
1299
+ api.add_operation(:disassociate_connection_alias, Seahorse::Model::Operation.new.tap do |o|
1300
+ o.name = "DisassociateConnectionAlias"
1301
+ o.http_method = "POST"
1302
+ o.http_request_uri = "/"
1303
+ o.input = Shapes::ShapeRef.new(shape: DisassociateConnectionAliasRequest)
1304
+ o.output = Shapes::ShapeRef.new(shape: DisassociateConnectionAliasResult)
1305
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1306
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1307
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValuesException)
1308
+ o.errors << Shapes::ShapeRef.new(shape: InvalidResourceStateException)
1309
+ o.errors << Shapes::ShapeRef.new(shape: OperationNotSupportedException)
1310
+ end)
1311
+
1128
1312
  api.add_operation(:disassociate_ip_groups, Seahorse::Model::Operation.new.tap do |o|
1129
1313
  o.name = "DisassociateIpGroups"
1130
1314
  o.http_method = "POST"
@@ -1337,6 +1521,21 @@ module Aws::WorkSpaces
1337
1521
  o.output = Shapes::ShapeRef.new(shape: TerminateWorkspacesResult)
1338
1522
  end)
1339
1523
 
1524
+ api.add_operation(:update_connection_alias_permission, Seahorse::Model::Operation.new.tap do |o|
1525
+ o.name = "UpdateConnectionAliasPermission"
1526
+ o.http_method = "POST"
1527
+ o.http_request_uri = "/"
1528
+ o.input = Shapes::ShapeRef.new(shape: UpdateConnectionAliasPermissionRequest)
1529
+ o.output = Shapes::ShapeRef.new(shape: UpdateConnectionAliasPermissionResult)
1530
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1531
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValuesException)
1532
+ o.errors << Shapes::ShapeRef.new(shape: ResourceLimitExceededException)
1533
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1534
+ o.errors << Shapes::ShapeRef.new(shape: ResourceAssociatedException)
1535
+ o.errors << Shapes::ShapeRef.new(shape: InvalidResourceStateException)
1536
+ o.errors << Shapes::ShapeRef.new(shape: OperationNotSupportedException)
1537
+ end)
1538
+
1340
1539
  api.add_operation(:update_rules_of_ip_group, Seahorse::Model::Operation.new.tap do |o|
1341
1540
  o.name = "UpdateRulesOfIpGroup"
1342
1541
  o.http_method = "POST"
@@ -67,6 +67,46 @@ module Aws::WorkSpaces
67
67
  include Aws::Structure
68
68
  end
69
69
 
70
+ # @note When making an API call, you may pass AssociateConnectionAliasRequest
71
+ # data as a hash:
72
+ #
73
+ # {
74
+ # alias_id: "ConnectionAliasId", # required
75
+ # resource_id: "NonEmptyString", # required
76
+ # }
77
+ #
78
+ # @!attribute [rw] alias_id
79
+ # The identifier of the connection alias.
80
+ # @return [String]
81
+ #
82
+ # @!attribute [rw] resource_id
83
+ # The identifier of the directory to associate the connection alias
84
+ # with.
85
+ # @return [String]
86
+ #
87
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AssociateConnectionAliasRequest AWS API Documentation
88
+ #
89
+ class AssociateConnectionAliasRequest < Struct.new(
90
+ :alias_id,
91
+ :resource_id)
92
+ SENSITIVE = []
93
+ include Aws::Structure
94
+ end
95
+
96
+ # @!attribute [rw] connection_identifier
97
+ # The identifier of the connection alias association. You use the
98
+ # connection identifier in the DNS TXT record when you're configuring
99
+ # your DNS routing policies.
100
+ # @return [String]
101
+ #
102
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AssociateConnectionAliasResult AWS API Documentation
103
+ #
104
+ class AssociateConnectionAliasResult < Struct.new(
105
+ :connection_identifier)
106
+ SENSITIVE = []
107
+ include Aws::Structure
108
+ end
109
+
70
110
  # @note When making an API call, you may pass AssociateIpGroupsRequest
71
111
  # data as a hash:
72
112
  #
@@ -186,6 +226,121 @@ module Aws::WorkSpaces
186
226
  include Aws::Structure
187
227
  end
188
228
 
229
+ # Describes a connection alias. Connection aliases are used for
230
+ # cross-Region redirection. For more information, see [ Cross-Region
231
+ # Redirection for Amazon WorkSpaces][1].
232
+ #
233
+ #
234
+ #
235
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html
236
+ #
237
+ # @!attribute [rw] connection_string
238
+ # The connection string specified for the connection alias. The
239
+ # connection string must be in the form of a fully qualified domain
240
+ # name (FQDN), such as `www.example.com`.
241
+ # @return [String]
242
+ #
243
+ # @!attribute [rw] alias_id
244
+ # The identifier of the connection alias.
245
+ # @return [String]
246
+ #
247
+ # @!attribute [rw] state
248
+ # The current state of the connection alias.
249
+ # @return [String]
250
+ #
251
+ # @!attribute [rw] owner_account_id
252
+ # The identifier of the AWS account that owns the connection alias.
253
+ # @return [String]
254
+ #
255
+ # @!attribute [rw] associations
256
+ # The association status of the connection alias.
257
+ # @return [Array<Types::ConnectionAliasAssociation>]
258
+ #
259
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ConnectionAlias AWS API Documentation
260
+ #
261
+ class ConnectionAlias < Struct.new(
262
+ :connection_string,
263
+ :alias_id,
264
+ :state,
265
+ :owner_account_id,
266
+ :associations)
267
+ SENSITIVE = []
268
+ include Aws::Structure
269
+ end
270
+
271
+ # Describes a connection alias association that is used for cross-Region
272
+ # redirection. For more information, see [ Cross-Region Redirection for
273
+ # Amazon WorkSpaces][1].
274
+ #
275
+ #
276
+ #
277
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html
278
+ #
279
+ # @!attribute [rw] association_status
280
+ # The association status of the connection alias.
281
+ # @return [String]
282
+ #
283
+ # @!attribute [rw] associated_account_id
284
+ # The identifier of the AWS account that associated the connection
285
+ # alias with a directory.
286
+ # @return [String]
287
+ #
288
+ # @!attribute [rw] resource_id
289
+ # The identifier of the directory associated with a connection alias.
290
+ # @return [String]
291
+ #
292
+ # @!attribute [rw] connection_identifier
293
+ # The identifier of the connection alias association. You use the
294
+ # connection identifier in the DNS TXT record when you're configuring
295
+ # your DNS routing policies.
296
+ # @return [String]
297
+ #
298
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ConnectionAliasAssociation AWS API Documentation
299
+ #
300
+ class ConnectionAliasAssociation < Struct.new(
301
+ :association_status,
302
+ :associated_account_id,
303
+ :resource_id,
304
+ :connection_identifier)
305
+ SENSITIVE = []
306
+ include Aws::Structure
307
+ end
308
+
309
+ # Describes the permissions for a connection alias. Connection aliases
310
+ # are used for cross-Region redirection. For more information, see [
311
+ # Cross-Region Redirection for Amazon WorkSpaces][1].
312
+ #
313
+ #
314
+ #
315
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html
316
+ #
317
+ # @note When making an API call, you may pass ConnectionAliasPermission
318
+ # data as a hash:
319
+ #
320
+ # {
321
+ # shared_account_id: "AwsAccount", # required
322
+ # allow_association: false, # required
323
+ # }
324
+ #
325
+ # @!attribute [rw] shared_account_id
326
+ # The identifier of the AWS account that the connection alias is
327
+ # shared with.
328
+ # @return [String]
329
+ #
330
+ # @!attribute [rw] allow_association
331
+ # Indicates whether the specified AWS account is allowed to associate
332
+ # the connection alias with a directory.
333
+ # @return [Boolean]
334
+ #
335
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ConnectionAliasPermission AWS API Documentation
336
+ #
337
+ class ConnectionAliasPermission < Struct.new(
338
+ :shared_account_id,
339
+ :allow_association)
340
+ SENSITIVE = []
341
+ include Aws::Structure
342
+ end
343
+
189
344
  # @note When making an API call, you may pass CopyWorkspaceImageRequest
190
345
  # data as a hash:
191
346
  #
@@ -246,6 +401,55 @@ module Aws::WorkSpaces
246
401
  include Aws::Structure
247
402
  end
248
403
 
404
+ # @note When making an API call, you may pass CreateConnectionAliasRequest
405
+ # data as a hash:
406
+ #
407
+ # {
408
+ # connection_string: "ConnectionString", # required
409
+ # tags: [
410
+ # {
411
+ # key: "TagKey", # required
412
+ # value: "TagValue",
413
+ # },
414
+ # ],
415
+ # }
416
+ #
417
+ # @!attribute [rw] connection_string
418
+ # A connection string in the form of a fully qualified domain name
419
+ # (FQDN), such as `www.example.com`.
420
+ #
421
+ # After you create a connection string, it is always associated to
422
+ # your AWS account. You cannot recreate the same connection string
423
+ # with a different account, even if you delete all instances of it
424
+ # from the original account. The connection string is globally
425
+ # reserved for your account.
426
+ # @return [String]
427
+ #
428
+ # @!attribute [rw] tags
429
+ # The tags to associate with the connection alias.
430
+ # @return [Array<Types::Tag>]
431
+ #
432
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateConnectionAliasRequest AWS API Documentation
433
+ #
434
+ class CreateConnectionAliasRequest < Struct.new(
435
+ :connection_string,
436
+ :tags)
437
+ SENSITIVE = []
438
+ include Aws::Structure
439
+ end
440
+
441
+ # @!attribute [rw] alias_id
442
+ # The identifier of the connection alias.
443
+ # @return [String]
444
+ #
445
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateConnectionAliasResult AWS API Documentation
446
+ #
447
+ class CreateConnectionAliasResult < Struct.new(
448
+ :alias_id)
449
+ SENSITIVE = []
450
+ include Aws::Structure
451
+ end
452
+
249
453
  # @note When making an API call, you may pass CreateIpGroupRequest
250
454
  # data as a hash:
251
455
  #
@@ -321,13 +525,11 @@ module Aws::WorkSpaces
321
525
  # @!attribute [rw] resource_id
322
526
  # The identifier of the WorkSpaces resource. The supported resource
323
527
  # types are WorkSpaces, registered directories, images, custom
324
- # bundles, and IP access control groups.
528
+ # bundles, IP access control groups, and connection aliases.
325
529
  # @return [String]
326
530
  #
327
531
  # @!attribute [rw] tags
328
- # The tags. Each WorkSpaces resource can have a maximum of 50 tags. If
329
- # you want to add new tags to a set of existing tags, you must submit
330
- # all of the existing tags along with the new ones.
532
+ # The tags. Each WorkSpaces resource can have a maximum of 50 tags.
331
533
  # @return [Array<Types::Tag>]
332
534
  #
333
535
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateTagsRequest AWS API Documentation
@@ -478,6 +680,29 @@ module Aws::WorkSpaces
478
680
  include Aws::Structure
479
681
  end
480
682
 
683
+ # @note When making an API call, you may pass DeleteConnectionAliasRequest
684
+ # data as a hash:
685
+ #
686
+ # {
687
+ # alias_id: "ConnectionAliasId", # required
688
+ # }
689
+ #
690
+ # @!attribute [rw] alias_id
691
+ # The identifier of the connection alias to delete.
692
+ # @return [String]
693
+ #
694
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteConnectionAliasRequest AWS API Documentation
695
+ #
696
+ class DeleteConnectionAliasRequest < Struct.new(
697
+ :alias_id)
698
+ SENSITIVE = []
699
+ include Aws::Structure
700
+ end
701
+
702
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteConnectionAliasResult AWS API Documentation
703
+ #
704
+ class DeleteConnectionAliasResult < Aws::EmptyStructure; end
705
+
481
706
  # @note When making an API call, you may pass DeleteIpGroupRequest
482
707
  # data as a hash:
483
708
  #
@@ -512,7 +737,7 @@ module Aws::WorkSpaces
512
737
  # @!attribute [rw] resource_id
513
738
  # The identifier of the WorkSpaces resource. The supported resource
514
739
  # types are WorkSpaces, registered directories, images, custom
515
- # bundles, and IP access control groups.
740
+ # bundles, IP access control groups, and connection aliases.
516
741
  # @return [String]
517
742
  #
518
743
  # @!attribute [rw] tag_keys
@@ -679,6 +904,118 @@ module Aws::WorkSpaces
679
904
  include Aws::Structure
680
905
  end
681
906
 
907
+ # @note When making an API call, you may pass DescribeConnectionAliasPermissionsRequest
908
+ # data as a hash:
909
+ #
910
+ # {
911
+ # alias_id: "ConnectionAliasId", # required
912
+ # next_token: "PaginationToken",
913
+ # max_results: 1,
914
+ # }
915
+ #
916
+ # @!attribute [rw] alias_id
917
+ # The identifier of the connection alias.
918
+ # @return [String]
919
+ #
920
+ # @!attribute [rw] next_token
921
+ # If you received a `NextToken` from a previous call that was
922
+ # paginated, provide this token to receive the next set of results.
923
+ # @return [String]
924
+ #
925
+ # @!attribute [rw] max_results
926
+ # The maximum number of results to return.
927
+ # @return [Integer]
928
+ #
929
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeConnectionAliasPermissionsRequest AWS API Documentation
930
+ #
931
+ class DescribeConnectionAliasPermissionsRequest < Struct.new(
932
+ :alias_id,
933
+ :next_token,
934
+ :max_results)
935
+ SENSITIVE = []
936
+ include Aws::Structure
937
+ end
938
+
939
+ # @!attribute [rw] alias_id
940
+ # The identifier of the connection alias.
941
+ # @return [String]
942
+ #
943
+ # @!attribute [rw] connection_alias_permissions
944
+ # The permissions associated with a connection alias.
945
+ # @return [Array<Types::ConnectionAliasPermission>]
946
+ #
947
+ # @!attribute [rw] next_token
948
+ # The token to use to retrieve the next set of results, or null if no
949
+ # more results are available.
950
+ # @return [String]
951
+ #
952
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeConnectionAliasPermissionsResult AWS API Documentation
953
+ #
954
+ class DescribeConnectionAliasPermissionsResult < Struct.new(
955
+ :alias_id,
956
+ :connection_alias_permissions,
957
+ :next_token)
958
+ SENSITIVE = []
959
+ include Aws::Structure
960
+ end
961
+
962
+ # @note When making an API call, you may pass DescribeConnectionAliasesRequest
963
+ # data as a hash:
964
+ #
965
+ # {
966
+ # alias_ids: ["ConnectionAliasId"],
967
+ # resource_id: "NonEmptyString",
968
+ # limit: 1,
969
+ # next_token: "PaginationToken",
970
+ # }
971
+ #
972
+ # @!attribute [rw] alias_ids
973
+ # The identifiers of the connection aliases to describe.
974
+ # @return [Array<String>]
975
+ #
976
+ # @!attribute [rw] resource_id
977
+ # The identifier of the directory associated with the connection
978
+ # alias.
979
+ # @return [String]
980
+ #
981
+ # @!attribute [rw] limit
982
+ # The maximum number of connection aliases to return.
983
+ # @return [Integer]
984
+ #
985
+ # @!attribute [rw] next_token
986
+ # If you received a `NextToken` from a previous call that was
987
+ # paginated, provide this token to receive the next set of results.
988
+ # @return [String]
989
+ #
990
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeConnectionAliasesRequest AWS API Documentation
991
+ #
992
+ class DescribeConnectionAliasesRequest < Struct.new(
993
+ :alias_ids,
994
+ :resource_id,
995
+ :limit,
996
+ :next_token)
997
+ SENSITIVE = []
998
+ include Aws::Structure
999
+ end
1000
+
1001
+ # @!attribute [rw] connection_aliases
1002
+ # Information about the specified connection aliases.
1003
+ # @return [Array<Types::ConnectionAlias>]
1004
+ #
1005
+ # @!attribute [rw] next_token
1006
+ # The token to use to retrieve the next set of results, or null if no
1007
+ # more results are available.
1008
+ # @return [String]
1009
+ #
1010
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeConnectionAliasesResult AWS API Documentation
1011
+ #
1012
+ class DescribeConnectionAliasesResult < Struct.new(
1013
+ :connection_aliases,
1014
+ :next_token)
1015
+ SENSITIVE = []
1016
+ include Aws::Structure
1017
+ end
1018
+
682
1019
  # @note When making an API call, you may pass DescribeIpGroupsRequest
683
1020
  # data as a hash:
684
1021
  #
@@ -739,7 +1076,7 @@ module Aws::WorkSpaces
739
1076
  # @!attribute [rw] resource_id
740
1077
  # The identifier of the WorkSpaces resource. The supported resource
741
1078
  # types are WorkSpaces, registered directories, images, custom
742
- # bundles, and IP access control groups.
1079
+ # bundles, IP access control groups, and connection aliases.
743
1080
  # @return [String]
744
1081
  #
745
1082
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeTagsRequest AWS API Documentation
@@ -1147,6 +1484,29 @@ module Aws::WorkSpaces
1147
1484
  include Aws::Structure
1148
1485
  end
1149
1486
 
1487
+ # @note When making an API call, you may pass DisassociateConnectionAliasRequest
1488
+ # data as a hash:
1489
+ #
1490
+ # {
1491
+ # alias_id: "ConnectionAliasId", # required
1492
+ # }
1493
+ #
1494
+ # @!attribute [rw] alias_id
1495
+ # The identifier of the connection alias to disassociate.
1496
+ # @return [String]
1497
+ #
1498
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DisassociateConnectionAliasRequest AWS API Documentation
1499
+ #
1500
+ class DisassociateConnectionAliasRequest < Struct.new(
1501
+ :alias_id)
1502
+ SENSITIVE = []
1503
+ include Aws::Structure
1504
+ end
1505
+
1506
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DisassociateConnectionAliasResult AWS API Documentation
1507
+ #
1508
+ class DisassociateConnectionAliasResult < Aws::EmptyStructure; end
1509
+
1150
1510
  # @note When making an API call, you may pass DisassociateIpGroupsRequest
1151
1511
  # data as a hash:
1152
1512
  #
@@ -1230,7 +1590,12 @@ module Aws::WorkSpaces
1230
1590
  end
1231
1591
 
1232
1592
  # Describes the AWS accounts that have been granted permission to use a
1233
- # shared image.
1593
+ # shared image. For more information about sharing images, see [ Share
1594
+ # or Unshare a Custom WorkSpaces Image][1].
1595
+ #
1596
+ #
1597
+ #
1598
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/adminguide/share-custom-image.html
1234
1599
  #
1235
1600
  # @!attribute [rw] shared_account_id
1236
1601
  # The identifier of the AWS account that an image has been shared
@@ -1259,6 +1624,7 @@ module Aws::WorkSpaces
1259
1624
  # value: "TagValue",
1260
1625
  # },
1261
1626
  # ],
1627
+ # applications: ["Microsoft_Office_2016"], # accepts Microsoft_Office_2016, Microsoft_Office_2019
1262
1628
  # }
1263
1629
  #
1264
1630
  # @!attribute [rw] ec2_image_id
@@ -1266,7 +1632,9 @@ module Aws::WorkSpaces
1266
1632
  # @return [String]
1267
1633
  #
1268
1634
  # @!attribute [rw] ingestion_process
1269
- # The ingestion process to be used when importing the image.
1635
+ # The ingestion process to be used when importing the image. For
1636
+ # non-GPU-enabled bundles (bundles other than Graphics or
1637
+ # GraphicsPro), specify `BYOL_REGULAR`.
1270
1638
  # @return [String]
1271
1639
  #
1272
1640
  # @!attribute [rw] image_name
@@ -1281,6 +1649,22 @@ module Aws::WorkSpaces
1281
1649
  # The tags. Each WorkSpaces resource can have a maximum of 50 tags.
1282
1650
  # @return [Array<Types::Tag>]
1283
1651
  #
1652
+ # @!attribute [rw] applications
1653
+ # If specified, the version of Microsoft Office to subscribe to. Valid
1654
+ # only for Windows 10 BYOL images. For more information about
1655
+ # subscribing to Office for BYOL images, see [ Bring Your Own Windows
1656
+ # Desktop Licenses][1].
1657
+ #
1658
+ # <note markdown="1"> Although this parameter is an array, only one item is allowed at
1659
+ # this time.
1660
+ #
1661
+ # </note>
1662
+ #
1663
+ #
1664
+ #
1665
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/adminguide/byol-windows-images.html
1666
+ # @return [Array<String>]
1667
+ #
1284
1668
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ImportWorkspaceImageRequest AWS API Documentation
1285
1669
  #
1286
1670
  class ImportWorkspaceImageRequest < Struct.new(
@@ -1288,7 +1672,8 @@ module Aws::WorkSpaces
1288
1672
  :ingestion_process,
1289
1673
  :image_name,
1290
1674
  :image_description,
1291
- :tags)
1675
+ :tags,
1676
+ :applications)
1292
1677
  SENSITIVE = []
1293
1678
  include Aws::Structure
1294
1679
  end
@@ -2408,6 +2793,40 @@ module Aws::WorkSpaces
2408
2793
  include Aws::Structure
2409
2794
  end
2410
2795
 
2796
+ # @note When making an API call, you may pass UpdateConnectionAliasPermissionRequest
2797
+ # data as a hash:
2798
+ #
2799
+ # {
2800
+ # alias_id: "ConnectionAliasId", # required
2801
+ # connection_alias_permission: { # required
2802
+ # shared_account_id: "AwsAccount", # required
2803
+ # allow_association: false, # required
2804
+ # },
2805
+ # }
2806
+ #
2807
+ # @!attribute [rw] alias_id
2808
+ # The identifier of the connection alias that you want to update
2809
+ # permissions for.
2810
+ # @return [String]
2811
+ #
2812
+ # @!attribute [rw] connection_alias_permission
2813
+ # Indicates whether to share or unshare the connection alias with the
2814
+ # specified AWS account.
2815
+ # @return [Types::ConnectionAliasPermission]
2816
+ #
2817
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateConnectionAliasPermissionRequest AWS API Documentation
2818
+ #
2819
+ class UpdateConnectionAliasPermissionRequest < Struct.new(
2820
+ :alias_id,
2821
+ :connection_alias_permission)
2822
+ SENSITIVE = []
2823
+ include Aws::Structure
2824
+ end
2825
+
2826
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateConnectionAliasPermissionResult AWS API Documentation
2827
+ #
2828
+ class UpdateConnectionAliasPermissionResult < Aws::EmptyStructure; end
2829
+
2411
2830
  # @note When making an API call, you may pass UpdateRulesOfIpGroupRequest
2412
2831
  # data as a hash:
2413
2832
  #
@@ -2463,6 +2882,9 @@ module Aws::WorkSpaces
2463
2882
  # @!attribute [rw] shared_account_id
2464
2883
  # The identifier of the AWS account to share or unshare the image
2465
2884
  # with.
2885
+ #
2886
+ # Before sharing the image, confirm that you are sharing to the
2887
+ # correct AWS account ID.
2466
2888
  # @return [String]
2467
2889
  #
2468
2890
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateWorkspaceImagePermissionRequest AWS API Documentation
@@ -2514,6 +2936,19 @@ module Aws::WorkSpaces
2514
2936
  #
2515
2937
  # @!attribute [rw] state
2516
2938
  # The operational state of the WorkSpace.
2939
+ #
2940
+ # <note markdown="1"> After a WorkSpace is terminated, the `TERMINATED` state is returned
2941
+ # only briefly before the WorkSpace directory metadata is cleaned up,
2942
+ # so this state is rarely returned. To confirm that a WorkSpace is
2943
+ # terminated, check for the WorkSpace ID by using [
2944
+ # DescribeWorkSpaces][1]. If the WorkSpace ID isn't returned, then
2945
+ # the WorkSpace has been successfully terminated.
2946
+ #
2947
+ # </note>
2948
+ #
2949
+ #
2950
+ #
2951
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeWorkspaces.html
2517
2952
  # @return [String]
2518
2953
  #
2519
2954
  # @!attribute [rw] bundle_id
@@ -2810,7 +3245,23 @@ module Aws::WorkSpaces
2810
3245
  # @return [Boolean]
2811
3246
  #
2812
3247
  # @!attribute [rw] default_ou
2813
- # The default organizational unit (OU) for your WorkSpace directories.
3248
+ # The default organizational unit (OU) for your WorkSpaces
3249
+ # directories. This string must be the full Lightweight Directory
3250
+ # Access Protocol (LDAP) distinguished name for the target domain and
3251
+ # OU. It must be in the form `"OU=value,DC=value,DC=value"`, where
3252
+ # *value* is any string of characters, and the number of domain
3253
+ # components (DCs) is two or more. For example,
3254
+ # `OU=WorkSpaces_machines,DC=machines,DC=example,DC=com`.
3255
+ #
3256
+ # * To avoid errors, certain characters in the distinguished name must
3257
+ # be escaped. For more information, see [ Distinguished Names][1] in
3258
+ # the Microsoft documentation.
3259
+ #
3260
+ # * The API doesn't validate whether the OU exists.
3261
+ #
3262
+ #
3263
+ #
3264
+ # [1]: https://docs.microsoft.com/previous-versions/windows/desktop/ldap/distinguished-names
2814
3265
  # @return [String]
2815
3266
  #
2816
3267
  # @!attribute [rw] custom_security_group_id
@@ -2893,6 +3344,16 @@ module Aws::WorkSpaces
2893
3344
  #
2894
3345
  # @!attribute [rw] state
2895
3346
  # The state of the directory's registration with Amazon WorkSpaces.
3347
+ # After a directory is deregistered, the `DEREGISTERED` state is
3348
+ # returned very briefly before the directory metadata is cleaned up,
3349
+ # so this state is rarely returned. To confirm that a directory is
3350
+ # deregistered, check for the directory ID by using [
3351
+ # DescribeWorkspaceDirectories][1]. If the directory ID isn't
3352
+ # returned, then the directory has been successfully deregistered.
3353
+ #
3354
+ #
3355
+ #
3356
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeWorkspaceDirectories.html
2896
3357
  # @return [String]
2897
3358
  #
2898
3359
  # @!attribute [rw] workspace_creation_properties