aws-sdk-workspaces 1.44.0 → 1.45.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5fac17d0b167c49bec19e531e40e6a2ab085810a9d35b830cc4ecab3aa837c79
4
- data.tar.gz: f4308faae963abb54234b0c9f8cad2313df2ce59fed271219a17998b6cb92330
3
+ metadata.gz: 01a36cdced3b1651804df88a7742535394b50d96ae58a404f13f4eca8f1d5698
4
+ data.tar.gz: e30a892c2b627d2aef368c3c096a973ecb10c344e0b6a624407883a6008429b7
5
5
  SHA512:
6
- metadata.gz: c1e9ce90af4494d7de57dbc2f85db5a22d4935d565f1c1bf97fae146e2946c0202ce4405735e9398e6fbcf80ae8ac453e66ce012d5f33fd4b3bcc4a73a96b973
7
- data.tar.gz: 9283bc500645f5198d9136ea7a15b3f3c8df9e9e433a0f56751b2c05d8ed2ad55281466f199b83c14a622b6ce5e0581f5e60ebcafd7c7c99036505a19fac5d31
6
+ metadata.gz: edf61f4ae0ec37860dcde375e0c42e0b08a7aec561767fc85e94aa14231de52ea34156cb62d417f12abde3a6978e64281bd6161dead80823759405c44c943a2d
7
+ data.tar.gz: 0a628e7a28a115e28c115de319054faf3c4362893e6da4cc027e8741dd0904a1b30a917a6d4b7e88f90bf5169c7b8d62a016842a8d526d34f02cb44a8cbdb8af
@@ -27,7 +27,7 @@ require_relative 'aws-sdk-workspaces/customizations'
27
27
  # structure.
28
28
  #
29
29
  # work_spaces = Aws::WorkSpaces::Client.new
30
- # resp = work_spaces.associate_ip_groups(params)
30
+ # resp = work_spaces.associate_connection_alias(params)
31
31
  #
32
32
  # See {Client} for more information.
33
33
  #
@@ -47,6 +47,6 @@ require_relative 'aws-sdk-workspaces/customizations'
47
47
  # @!group service
48
48
  module Aws::WorkSpaces
49
49
 
50
- GEM_VERSION = '1.44.0'
50
+ GEM_VERSION = '1.45.0'
51
51
 
52
52
  end
@@ -337,6 +337,52 @@ module Aws::WorkSpaces
337
337
 
338
338
  # @!group API Operations
339
339
 
340
+ # Associates the specified connection alias with the specified directory
341
+ # to enable cross-Region redirection. For more information, see [
342
+ # Cross-Region Redirection for Amazon WorkSpaces][1].
343
+ #
344
+ # <note markdown="1"> Before performing this operation, call [ DescribeConnectionAliases][2]
345
+ # to make sure that the current state of the connection alias is
346
+ # `CREATED`.
347
+ #
348
+ # </note>
349
+ #
350
+ #
351
+ #
352
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html
353
+ # [2]: https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeConnectionAliases.html
354
+ #
355
+ # @option params [required, String] :alias_id
356
+ # The identifier of the connection alias.
357
+ #
358
+ # @option params [required, String] :resource_id
359
+ # The identifier of the directory to associate the connection alias
360
+ # with.
361
+ #
362
+ # @return [Types::AssociateConnectionAliasResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
363
+ #
364
+ # * {Types::AssociateConnectionAliasResult#connection_identifier #connection_identifier} => String
365
+ #
366
+ # @example Request syntax with placeholder values
367
+ #
368
+ # resp = client.associate_connection_alias({
369
+ # alias_id: "ConnectionAliasId", # required
370
+ # resource_id: "NonEmptyString", # required
371
+ # })
372
+ #
373
+ # @example Response structure
374
+ #
375
+ # resp.connection_identifier #=> String
376
+ #
377
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AssociateConnectionAlias AWS API Documentation
378
+ #
379
+ # @overload associate_connection_alias(params = {})
380
+ # @param [Hash] params ({})
381
+ def associate_connection_alias(params = {}, options = {})
382
+ req = build_request(:associate_connection_alias, params)
383
+ req.send_request(options)
384
+ end
385
+
340
386
  # Associates the specified IP access control group with the specified
341
387
  # directory.
342
388
  #
@@ -448,6 +494,56 @@ module Aws::WorkSpaces
448
494
  req.send_request(options)
449
495
  end
450
496
 
497
+ # Creates the specified connection alias for use with cross-Region
498
+ # redirection. For more information, see [ Cross-Region Redirection for
499
+ # Amazon WorkSpaces][1].
500
+ #
501
+ #
502
+ #
503
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html
504
+ #
505
+ # @option params [required, String] :connection_string
506
+ # A connection string in the form of a fully qualified domain name
507
+ # (FQDN), such as `www.example.com`.
508
+ #
509
+ # After you create a connection string, it is always associated to your
510
+ # AWS account. You cannot recreate the same connection string with a
511
+ # different account, even if you delete all instances of it from the
512
+ # original account. The connection string is globally reserved for your
513
+ # account.
514
+ #
515
+ # @option params [Array<Types::Tag>] :tags
516
+ # The tags to associate with the connection alias.
517
+ #
518
+ # @return [Types::CreateConnectionAliasResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
519
+ #
520
+ # * {Types::CreateConnectionAliasResult#alias_id #alias_id} => String
521
+ #
522
+ # @example Request syntax with placeholder values
523
+ #
524
+ # resp = client.create_connection_alias({
525
+ # connection_string: "ConnectionString", # required
526
+ # tags: [
527
+ # {
528
+ # key: "TagKey", # required
529
+ # value: "TagValue",
530
+ # },
531
+ # ],
532
+ # })
533
+ #
534
+ # @example Response structure
535
+ #
536
+ # resp.alias_id #=> String
537
+ #
538
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateConnectionAlias AWS API Documentation
539
+ #
540
+ # @overload create_connection_alias(params = {})
541
+ # @param [Hash] params ({})
542
+ def create_connection_alias(params = {}, options = {})
543
+ req = build_request(:create_connection_alias, params)
544
+ req.send_request(options)
545
+ end
546
+
451
547
  # Creates an IP access control group.
452
548
  #
453
549
  # An IP access control group provides you with the ability to control
@@ -517,7 +613,7 @@ module Aws::WorkSpaces
517
613
  # @option params [required, String] :resource_id
518
614
  # The identifier of the WorkSpaces resource. The supported resource
519
615
  # types are WorkSpaces, registered directories, images, custom bundles,
520
- # and IP access control groups.
616
+ # IP access control groups, and connection aliases.
521
617
  #
522
618
  # @option params [required, Array<Types::Tag>] :tags
523
619
  # The tags. Each WorkSpaces resource can have a maximum of 50 tags. If
@@ -639,6 +735,49 @@ module Aws::WorkSpaces
639
735
  req.send_request(options)
640
736
  end
641
737
 
738
+ # Deletes the specified connection alias. For more information, see [
739
+ # Cross-Region Redirection for Amazon WorkSpaces][1].
740
+ #
741
+ # **If you will no longer be using a fully qualified domain name (FQDN)
742
+ # as the registration code for your WorkSpaces users, you must take
743
+ # certain precautions to prevent potential security issues.** For more
744
+ # information, see [ Security Considerations if You Stop Using
745
+ # Cross-Region Redirection][2].
746
+ #
747
+ # <note markdown="1"> To delete a connection alias that has been shared, the shared account
748
+ # must first disassociate the connection alias from any directories it
749
+ # has been associated with. Then you must unshare the connection alias
750
+ # from the account it has been shared with. You can delete a connection
751
+ # alias only after it is no longer shared with any accounts or
752
+ # associated with any directories.
753
+ #
754
+ # </note>
755
+ #
756
+ #
757
+ #
758
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html
759
+ # [2]: https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html#cross-region-redirection-security-considerations
760
+ #
761
+ # @option params [required, String] :alias_id
762
+ # The identifier of the connection alias to delete.
763
+ #
764
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
765
+ #
766
+ # @example Request syntax with placeholder values
767
+ #
768
+ # resp = client.delete_connection_alias({
769
+ # alias_id: "ConnectionAliasId", # required
770
+ # })
771
+ #
772
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteConnectionAlias AWS API Documentation
773
+ #
774
+ # @overload delete_connection_alias(params = {})
775
+ # @param [Hash] params ({})
776
+ def delete_connection_alias(params = {}, options = {})
777
+ req = build_request(:delete_connection_alias, params)
778
+ req.send_request(options)
779
+ end
780
+
642
781
  # Deletes the specified IP access control group.
643
782
  #
644
783
  # You cannot delete an IP access control group that is associated with a
@@ -669,7 +808,7 @@ module Aws::WorkSpaces
669
808
  # @option params [required, String] :resource_id
670
809
  # The identifier of the WorkSpaces resource. The supported resource
671
810
  # types are WorkSpaces, registered directories, images, custom bundles,
672
- # and IP access control groups.
811
+ # IP access control groups, and connection aliases.
673
812
  #
674
813
  # @option params [required, Array<String>] :tag_keys
675
814
  # The tag keys.
@@ -835,6 +974,114 @@ module Aws::WorkSpaces
835
974
  req.send_request(options)
836
975
  end
837
976
 
977
+ # Describes the permissions that the owner of a connection alias has
978
+ # granted to another AWS account for the specified connection alias. For
979
+ # more information, see [ Cross-Region Redirection for Amazon
980
+ # WorkSpaces][1].
981
+ #
982
+ #
983
+ #
984
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html
985
+ #
986
+ # @option params [required, String] :alias_id
987
+ # The identifier of the connection alias.
988
+ #
989
+ # @option params [String] :next_token
990
+ # If you received a `NextToken` from a previous call that was paginated,
991
+ # provide this token to receive the next set of results.
992
+ #
993
+ # @option params [Integer] :max_results
994
+ # The maximum number of results to return.
995
+ #
996
+ # @return [Types::DescribeConnectionAliasPermissionsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
997
+ #
998
+ # * {Types::DescribeConnectionAliasPermissionsResult#alias_id #alias_id} => String
999
+ # * {Types::DescribeConnectionAliasPermissionsResult#connection_alias_permissions #connection_alias_permissions} => Array&lt;Types::ConnectionAliasPermission&gt;
1000
+ # * {Types::DescribeConnectionAliasPermissionsResult#next_token #next_token} => String
1001
+ #
1002
+ # @example Request syntax with placeholder values
1003
+ #
1004
+ # resp = client.describe_connection_alias_permissions({
1005
+ # alias_id: "ConnectionAliasId", # required
1006
+ # next_token: "PaginationToken",
1007
+ # max_results: 1,
1008
+ # })
1009
+ #
1010
+ # @example Response structure
1011
+ #
1012
+ # resp.alias_id #=> String
1013
+ # resp.connection_alias_permissions #=> Array
1014
+ # resp.connection_alias_permissions[0].shared_account_id #=> String
1015
+ # resp.connection_alias_permissions[0].allow_association #=> Boolean
1016
+ # resp.next_token #=> String
1017
+ #
1018
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeConnectionAliasPermissions AWS API Documentation
1019
+ #
1020
+ # @overload describe_connection_alias_permissions(params = {})
1021
+ # @param [Hash] params ({})
1022
+ def describe_connection_alias_permissions(params = {}, options = {})
1023
+ req = build_request(:describe_connection_alias_permissions, params)
1024
+ req.send_request(options)
1025
+ end
1026
+
1027
+ # Retrieves a list that describes the connection aliases used for
1028
+ # cross-Region redirection. For more information, see [ Cross-Region
1029
+ # Redirection for Amazon WorkSpaces][1].
1030
+ #
1031
+ #
1032
+ #
1033
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html
1034
+ #
1035
+ # @option params [Array<String>] :alias_ids
1036
+ # The identifiers of the connection aliases to describe.
1037
+ #
1038
+ # @option params [String] :resource_id
1039
+ # The identifier of the directory associated with the connection alias.
1040
+ #
1041
+ # @option params [Integer] :limit
1042
+ # The maximum number of connection aliases to return.
1043
+ #
1044
+ # @option params [String] :next_token
1045
+ # If you received a `NextToken` from a previous call that was paginated,
1046
+ # provide this token to receive the next set of results.
1047
+ #
1048
+ # @return [Types::DescribeConnectionAliasesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1049
+ #
1050
+ # * {Types::DescribeConnectionAliasesResult#connection_aliases #connection_aliases} => Array&lt;Types::ConnectionAlias&gt;
1051
+ # * {Types::DescribeConnectionAliasesResult#next_token #next_token} => String
1052
+ #
1053
+ # @example Request syntax with placeholder values
1054
+ #
1055
+ # resp = client.describe_connection_aliases({
1056
+ # alias_ids: ["ConnectionAliasId"],
1057
+ # resource_id: "NonEmptyString",
1058
+ # limit: 1,
1059
+ # next_token: "PaginationToken",
1060
+ # })
1061
+ #
1062
+ # @example Response structure
1063
+ #
1064
+ # resp.connection_aliases #=> Array
1065
+ # resp.connection_aliases[0].connection_string #=> String
1066
+ # resp.connection_aliases[0].alias_id #=> String
1067
+ # resp.connection_aliases[0].state #=> String, one of "CREATING", "CREATED", "DELETING"
1068
+ # resp.connection_aliases[0].owner_account_id #=> String
1069
+ # resp.connection_aliases[0].associations #=> Array
1070
+ # resp.connection_aliases[0].associations[0].association_status #=> String, one of "NOT_ASSOCIATED", "ASSOCIATED_WITH_OWNER_ACCOUNT", "ASSOCIATED_WITH_SHARED_ACCOUNT", "PENDING_ASSOCIATION", "PENDING_DISASSOCIATION"
1071
+ # resp.connection_aliases[0].associations[0].associated_account_id #=> String
1072
+ # resp.connection_aliases[0].associations[0].resource_id #=> String
1073
+ # resp.connection_aliases[0].associations[0].connection_identifier #=> String
1074
+ # resp.next_token #=> String
1075
+ #
1076
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeConnectionAliases AWS API Documentation
1077
+ #
1078
+ # @overload describe_connection_aliases(params = {})
1079
+ # @param [Hash] params ({})
1080
+ def describe_connection_aliases(params = {}, options = {})
1081
+ req = build_request(:describe_connection_aliases, params)
1082
+ req.send_request(options)
1083
+ end
1084
+
838
1085
  # Describes one or more of your IP access control groups.
839
1086
  #
840
1087
  # @option params [Array<String>] :group_ids
@@ -885,7 +1132,7 @@ module Aws::WorkSpaces
885
1132
  # @option params [required, String] :resource_id
886
1133
  # The identifier of the WorkSpaces resource. The supported resource
887
1134
  # types are WorkSpaces, registered directories, images, custom bundles,
888
- # and IP access control groups.
1135
+ # IP access control groups, and connection aliases.
889
1136
  #
890
1137
  # @return [Types::DescribeTagsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
891
1138
  #
@@ -1304,6 +1551,42 @@ module Aws::WorkSpaces
1304
1551
  req.send_request(options)
1305
1552
  end
1306
1553
 
1554
+ # Disassociates a connection alias from a directory. Disassociating a
1555
+ # connection alias disables cross-Region redirection between two
1556
+ # directories in different AWS Regions. For more information, see [
1557
+ # Cross-Region Redirection for Amazon WorkSpaces][1].
1558
+ #
1559
+ # <note markdown="1"> Before performing this operation, call [ DescribeConnectionAliases][2]
1560
+ # to make sure that the current state of the connection alias is
1561
+ # `CREATED`.
1562
+ #
1563
+ # </note>
1564
+ #
1565
+ #
1566
+ #
1567
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html
1568
+ # [2]: https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeConnectionAliases.html
1569
+ #
1570
+ # @option params [required, String] :alias_id
1571
+ # The identifier of the connection alias to disassociate.
1572
+ #
1573
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1574
+ #
1575
+ # @example Request syntax with placeholder values
1576
+ #
1577
+ # resp = client.disassociate_connection_alias({
1578
+ # alias_id: "ConnectionAliasId", # required
1579
+ # })
1580
+ #
1581
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DisassociateConnectionAlias AWS API Documentation
1582
+ #
1583
+ # @overload disassociate_connection_alias(params = {})
1584
+ # @param [Hash] params ({})
1585
+ def disassociate_connection_alias(params = {}, options = {})
1586
+ req = build_request(:disassociate_connection_alias, params)
1587
+ req.send_request(options)
1588
+ end
1589
+
1307
1590
  # Disassociates the specified IP access control group from the specified
1308
1591
  # directory.
1309
1592
  #
@@ -1332,8 +1615,8 @@ module Aws::WorkSpaces
1332
1615
  end
1333
1616
 
1334
1617
  # Imports the specified Windows 10 Bring Your Own License (BYOL) image
1335
- # into Amazon WorkSpaces. The image must be an already licensed EC2
1336
- # image that is in your AWS account, and you must own the image. For
1618
+ # into Amazon WorkSpaces. The image must be an already licensed Amazon
1619
+ # EC2 image that is in your AWS account, and you must own the image. For
1337
1620
  # more information about creating BYOL images, see [ Bring Your Own
1338
1621
  # Windows Desktop Licenses][1].
1339
1622
  #
@@ -2097,6 +2380,61 @@ module Aws::WorkSpaces
2097
2380
  req.send_request(options)
2098
2381
  end
2099
2382
 
2383
+ # Shares or unshares a connection alias with one account by specifying
2384
+ # whether that account has permission to associate the connection alias
2385
+ # with a directory. If the association permission is granted, the
2386
+ # connection alias is shared with that account. If the association
2387
+ # permission is revoked, the connection alias is unshared with the
2388
+ # account. For more information, see [ Cross-Region Redirection for
2389
+ # Amazon WorkSpaces][1].
2390
+ #
2391
+ # <note markdown="1"> * Before performing this operation, call [
2392
+ # DescribeConnectionAliases][2] to make sure that the current state of
2393
+ # the connection alias is `CREATED`.
2394
+ #
2395
+ # * To delete a connection alias that has been shared, the shared
2396
+ # account must first disassociate the connection alias from any
2397
+ # directories it has been associated with. Then you must unshare the
2398
+ # connection alias from the account it has been shared with. You can
2399
+ # delete a connection alias only after it is no longer shared with any
2400
+ # accounts or associated with any directories.
2401
+ #
2402
+ # </note>
2403
+ #
2404
+ #
2405
+ #
2406
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html
2407
+ # [2]: https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeConnectionAliases.html
2408
+ #
2409
+ # @option params [required, String] :alias_id
2410
+ # The identifier of the connection alias that you want to update
2411
+ # permissions for.
2412
+ #
2413
+ # @option params [required, Types::ConnectionAliasPermission] :connection_alias_permission
2414
+ # Indicates whether to share or unshare the connection alias with the
2415
+ # specified AWS account.
2416
+ #
2417
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2418
+ #
2419
+ # @example Request syntax with placeholder values
2420
+ #
2421
+ # resp = client.update_connection_alias_permission({
2422
+ # alias_id: "ConnectionAliasId", # required
2423
+ # connection_alias_permission: { # required
2424
+ # shared_account_id: "AwsAccount", # required
2425
+ # allow_association: false, # required
2426
+ # },
2427
+ # })
2428
+ #
2429
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateConnectionAliasPermission AWS API Documentation
2430
+ #
2431
+ # @overload update_connection_alias_permission(params = {})
2432
+ # @param [Hash] params ({})
2433
+ def update_connection_alias_permission(params = {}, options = {})
2434
+ req = build_request(:update_connection_alias_permission, params)
2435
+ req.send_request(options)
2436
+ end
2437
+
2100
2438
  # Replaces the current rules of the specified IP access control group
2101
2439
  # with the specified rules.
2102
2440
  #
@@ -2187,7 +2525,7 @@ module Aws::WorkSpaces
2187
2525
  params: params,
2188
2526
  config: config)
2189
2527
  context[:gem_name] = 'aws-sdk-workspaces'
2190
- context[:gem_version] = '1.44.0'
2528
+ context[:gem_version] = '1.45.0'
2191
2529
  Seahorse::Client::Request.new(handlers, context)
2192
2530
  end
2193
2531
 
@@ -21,8 +21,11 @@ module Aws::WorkSpaces
21
21
  Alias = Shapes::StringShape.new(name: 'Alias')
22
22
  Application = Shapes::StringShape.new(name: 'Application')
23
23
  ApplicationList = Shapes::ListShape.new(name: 'ApplicationList')
24
+ AssociateConnectionAliasRequest = Shapes::StructureShape.new(name: 'AssociateConnectionAliasRequest')
25
+ AssociateConnectionAliasResult = Shapes::StructureShape.new(name: 'AssociateConnectionAliasResult')
24
26
  AssociateIpGroupsRequest = Shapes::StructureShape.new(name: 'AssociateIpGroupsRequest')
25
27
  AssociateIpGroupsResult = Shapes::StructureShape.new(name: 'AssociateIpGroupsResult')
28
+ AssociationStatus = Shapes::StringShape.new(name: 'AssociationStatus')
26
29
  AuthorizeIpRulesRequest = Shapes::StructureShape.new(name: 'AuthorizeIpRulesRequest')
27
30
  AuthorizeIpRulesResult = Shapes::StructureShape.new(name: 'AuthorizeIpRulesResult')
28
31
  AwsAccount = Shapes::StringShape.new(name: 'AwsAccount')
@@ -37,9 +40,22 @@ module Aws::WorkSpaces
37
40
  Compute = Shapes::StringShape.new(name: 'Compute')
38
41
  ComputeType = Shapes::StructureShape.new(name: 'ComputeType')
39
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')
40
53
  ConnectionState = Shapes::StringShape.new(name: 'ConnectionState')
54
+ ConnectionString = Shapes::StringShape.new(name: 'ConnectionString')
41
55
  CopyWorkspaceImageRequest = Shapes::StructureShape.new(name: 'CopyWorkspaceImageRequest')
42
56
  CopyWorkspaceImageResult = Shapes::StructureShape.new(name: 'CopyWorkspaceImageResult')
57
+ CreateConnectionAliasRequest = Shapes::StructureShape.new(name: 'CreateConnectionAliasRequest')
58
+ CreateConnectionAliasResult = Shapes::StructureShape.new(name: 'CreateConnectionAliasResult')
43
59
  CreateIpGroupRequest = Shapes::StructureShape.new(name: 'CreateIpGroupRequest')
44
60
  CreateIpGroupResult = Shapes::StructureShape.new(name: 'CreateIpGroupResult')
45
61
  CreateTagsRequest = Shapes::StructureShape.new(name: 'CreateTagsRequest')
@@ -53,6 +69,8 @@ module Aws::WorkSpaces
53
69
  DedicatedTenancySupportResultEnum = Shapes::StringShape.new(name: 'DedicatedTenancySupportResultEnum')
54
70
  DefaultOu = Shapes::StringShape.new(name: 'DefaultOu')
55
71
  DefaultWorkspaceCreationProperties = Shapes::StructureShape.new(name: 'DefaultWorkspaceCreationProperties')
72
+ DeleteConnectionAliasRequest = Shapes::StructureShape.new(name: 'DeleteConnectionAliasRequest')
73
+ DeleteConnectionAliasResult = Shapes::StructureShape.new(name: 'DeleteConnectionAliasResult')
56
74
  DeleteIpGroupRequest = Shapes::StructureShape.new(name: 'DeleteIpGroupRequest')
57
75
  DeleteIpGroupResult = Shapes::StructureShape.new(name: 'DeleteIpGroupResult')
58
76
  DeleteTagsRequest = Shapes::StructureShape.new(name: 'DeleteTagsRequest')
@@ -67,6 +85,10 @@ module Aws::WorkSpaces
67
85
  DescribeAccountResult = Shapes::StructureShape.new(name: 'DescribeAccountResult')
68
86
  DescribeClientPropertiesRequest = Shapes::StructureShape.new(name: 'DescribeClientPropertiesRequest')
69
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')
70
92
  DescribeIpGroupsRequest = Shapes::StructureShape.new(name: 'DescribeIpGroupsRequest')
71
93
  DescribeIpGroupsResult = Shapes::StructureShape.new(name: 'DescribeIpGroupsResult')
72
94
  DescribeTagsRequest = Shapes::StructureShape.new(name: 'DescribeTagsRequest')
@@ -90,6 +112,8 @@ module Aws::WorkSpaces
90
112
  DirectoryIdList = Shapes::ListShape.new(name: 'DirectoryIdList')
91
113
  DirectoryList = Shapes::ListShape.new(name: 'DirectoryList')
92
114
  DirectoryName = Shapes::StringShape.new(name: 'DirectoryName')
115
+ DisassociateConnectionAliasRequest = Shapes::StructureShape.new(name: 'DisassociateConnectionAliasRequest')
116
+ DisassociateConnectionAliasResult = Shapes::StructureShape.new(name: 'DisassociateConnectionAliasResult')
93
117
  DisassociateIpGroupsRequest = Shapes::StructureShape.new(name: 'DisassociateIpGroupsRequest')
94
118
  DisassociateIpGroupsResult = Shapes::StructureShape.new(name: 'DisassociateIpGroupsResult')
95
119
  DnsIpAddresses = Shapes::ListShape.new(name: 'DnsIpAddresses')
@@ -208,6 +232,8 @@ module Aws::WorkSpaces
208
232
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
209
233
  UnsupportedNetworkConfigurationException = Shapes::StructureShape.new(name: 'UnsupportedNetworkConfigurationException')
210
234
  UnsupportedWorkspaceConfigurationException = Shapes::StructureShape.new(name: 'UnsupportedWorkspaceConfigurationException')
235
+ UpdateConnectionAliasPermissionRequest = Shapes::StructureShape.new(name: 'UpdateConnectionAliasPermissionRequest')
236
+ UpdateConnectionAliasPermissionResult = Shapes::StructureShape.new(name: 'UpdateConnectionAliasPermissionResult')
211
237
  UpdateRulesOfIpGroupRequest = Shapes::StructureShape.new(name: 'UpdateRulesOfIpGroupRequest')
212
238
  UpdateRulesOfIpGroupResult = Shapes::StructureShape.new(name: 'UpdateRulesOfIpGroupResult')
213
239
  UpdateWorkspaceImagePermissionRequest = Shapes::StructureShape.new(name: 'UpdateWorkspaceImagePermissionRequest')
@@ -262,6 +288,13 @@ module Aws::WorkSpaces
262
288
 
263
289
  ApplicationList.member = Shapes::ShapeRef.new(shape: Application)
264
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
+
265
298
  AssociateIpGroupsRequest.add_member(:directory_id, Shapes::ShapeRef.new(shape: DirectoryId, required: true, location_name: "DirectoryId"))
266
299
  AssociateIpGroupsRequest.add_member(:group_ids, Shapes::ShapeRef.new(shape: IpGroupIdList, required: true, location_name: "GroupIds"))
267
300
  AssociateIpGroupsRequest.struct_class = Types::AssociateIpGroupsRequest
@@ -290,6 +323,31 @@ module Aws::WorkSpaces
290
323
  ComputeType.add_member(:name, Shapes::ShapeRef.new(shape: Compute, location_name: "Name"))
291
324
  ComputeType.struct_class = Types::ComputeType
292
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
+
293
351
  CopyWorkspaceImageRequest.add_member(:name, Shapes::ShapeRef.new(shape: WorkspaceImageName, required: true, location_name: "Name"))
294
352
  CopyWorkspaceImageRequest.add_member(:description, Shapes::ShapeRef.new(shape: WorkspaceImageDescription, location_name: "Description"))
295
353
  CopyWorkspaceImageRequest.add_member(:source_image_id, Shapes::ShapeRef.new(shape: WorkspaceImageId, required: true, location_name: "SourceImageId"))
@@ -300,6 +358,13 @@ module Aws::WorkSpaces
300
358
  CopyWorkspaceImageResult.add_member(:image_id, Shapes::ShapeRef.new(shape: WorkspaceImageId, location_name: "ImageId"))
301
359
  CopyWorkspaceImageResult.struct_class = Types::CopyWorkspaceImageResult
302
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
+
303
368
  CreateIpGroupRequest.add_member(:group_name, Shapes::ShapeRef.new(shape: IpGroupName, required: true, location_name: "GroupName"))
304
369
  CreateIpGroupRequest.add_member(:group_desc, Shapes::ShapeRef.new(shape: IpGroupDesc, location_name: "GroupDesc"))
305
370
  CreateIpGroupRequest.add_member(:user_rules, Shapes::ShapeRef.new(shape: IpRuleList, location_name: "UserRules"))
@@ -332,6 +397,11 @@ module Aws::WorkSpaces
332
397
  DefaultWorkspaceCreationProperties.add_member(:enable_maintenance_mode, Shapes::ShapeRef.new(shape: BooleanObject, location_name: "EnableMaintenanceMode"))
333
398
  DefaultWorkspaceCreationProperties.struct_class = Types::DefaultWorkspaceCreationProperties
334
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
+
335
405
  DeleteIpGroupRequest.add_member(:group_id, Shapes::ShapeRef.new(shape: IpGroupId, required: true, location_name: "GroupId"))
336
406
  DeleteIpGroupRequest.struct_class = Types::DeleteIpGroupRequest
337
407
 
@@ -372,6 +442,26 @@ module Aws::WorkSpaces
372
442
  DescribeClientPropertiesResult.add_member(:client_properties_list, Shapes::ShapeRef.new(shape: ClientPropertiesList, location_name: "ClientPropertiesList"))
373
443
  DescribeClientPropertiesResult.struct_class = Types::DescribeClientPropertiesResult
374
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
+
375
465
  DescribeIpGroupsRequest.add_member(:group_ids, Shapes::ShapeRef.new(shape: IpGroupIdList, location_name: "GroupIds"))
376
466
  DescribeIpGroupsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
377
467
  DescribeIpGroupsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: Limit, location_name: "MaxResults"))
@@ -456,6 +546,11 @@ module Aws::WorkSpaces
456
546
 
457
547
  DirectoryList.member = Shapes::ShapeRef.new(shape: WorkspaceDirectory)
458
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
+
459
554
  DisassociateIpGroupsRequest.add_member(:directory_id, Shapes::ShapeRef.new(shape: DirectoryId, required: true, location_name: "DirectoryId"))
460
555
  DisassociateIpGroupsRequest.add_member(:group_ids, Shapes::ShapeRef.new(shape: IpGroupIdList, required: true, location_name: "GroupIds"))
461
556
  DisassociateIpGroupsRequest.struct_class = Types::DisassociateIpGroupsRequest
@@ -721,6 +816,12 @@ module Aws::WorkSpaces
721
816
  UnsupportedWorkspaceConfigurationException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "message"))
722
817
  UnsupportedWorkspaceConfigurationException.struct_class = Types::UnsupportedWorkspaceConfigurationException
723
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
+
724
825
  UpdateRulesOfIpGroupRequest.add_member(:group_id, Shapes::ShapeRef.new(shape: IpGroupId, required: true, location_name: "GroupId"))
725
826
  UpdateRulesOfIpGroupRequest.add_member(:user_rules, Shapes::ShapeRef.new(shape: IpRuleList, required: true, location_name: "UserRules"))
726
827
  UpdateRulesOfIpGroupRequest.struct_class = Types::UpdateRulesOfIpGroupRequest
@@ -876,6 +977,20 @@ module Aws::WorkSpaces
876
977
  "uid" => "workspaces-2015-04-08",
877
978
  }
878
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
+
879
994
  api.add_operation(:associate_ip_groups, Seahorse::Model::Operation.new.tap do |o|
880
995
  o.name = "AssociateIpGroups"
881
996
  o.http_method = "POST"
@@ -918,6 +1033,20 @@ module Aws::WorkSpaces
918
1033
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValuesException)
919
1034
  end)
920
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
+
921
1050
  api.add_operation(:create_ip_group, Seahorse::Model::Operation.new.tap do |o|
922
1051
  o.name = "CreateIpGroup"
923
1052
  o.http_method = "POST"
@@ -952,6 +1081,20 @@ module Aws::WorkSpaces
952
1081
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValuesException)
953
1082
  end)
954
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
+
955
1098
  api.add_operation(:delete_ip_group, Seahorse::Model::Operation.new.tap do |o|
956
1099
  o.name = "DeleteIpGroup"
957
1100
  o.http_method = "POST"
@@ -1027,6 +1170,29 @@ module Aws::WorkSpaces
1027
1170
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1028
1171
  end)
1029
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
+
1030
1196
  api.add_operation(:describe_ip_groups, Seahorse::Model::Operation.new.tap do |o|
1031
1197
  o.name = "DescribeIpGroups"
1032
1198
  o.http_method = "POST"
@@ -1130,6 +1296,19 @@ module Aws::WorkSpaces
1130
1296
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValuesException)
1131
1297
  end)
1132
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
+
1133
1312
  api.add_operation(:disassociate_ip_groups, Seahorse::Model::Operation.new.tap do |o|
1134
1313
  o.name = "DisassociateIpGroups"
1135
1314
  o.http_method = "POST"
@@ -1342,6 +1521,21 @@ module Aws::WorkSpaces
1342
1521
  o.output = Shapes::ShapeRef.new(shape: TerminateWorkspacesResult)
1343
1522
  end)
1344
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
+
1345
1539
  api.add_operation(:update_rules_of_ip_group, Seahorse::Model::Operation.new.tap do |o|
1346
1540
  o.name = "UpdateRulesOfIpGroup"
1347
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,7 +525,7 @@ 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
@@ -478,6 +682,29 @@ module Aws::WorkSpaces
478
682
  include Aws::Structure
479
683
  end
480
684
 
685
+ # @note When making an API call, you may pass DeleteConnectionAliasRequest
686
+ # data as a hash:
687
+ #
688
+ # {
689
+ # alias_id: "ConnectionAliasId", # required
690
+ # }
691
+ #
692
+ # @!attribute [rw] alias_id
693
+ # The identifier of the connection alias to delete.
694
+ # @return [String]
695
+ #
696
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteConnectionAliasRequest AWS API Documentation
697
+ #
698
+ class DeleteConnectionAliasRequest < Struct.new(
699
+ :alias_id)
700
+ SENSITIVE = []
701
+ include Aws::Structure
702
+ end
703
+
704
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteConnectionAliasResult AWS API Documentation
705
+ #
706
+ class DeleteConnectionAliasResult < Aws::EmptyStructure; end
707
+
481
708
  # @note When making an API call, you may pass DeleteIpGroupRequest
482
709
  # data as a hash:
483
710
  #
@@ -512,7 +739,7 @@ module Aws::WorkSpaces
512
739
  # @!attribute [rw] resource_id
513
740
  # The identifier of the WorkSpaces resource. The supported resource
514
741
  # types are WorkSpaces, registered directories, images, custom
515
- # bundles, and IP access control groups.
742
+ # bundles, IP access control groups, and connection aliases.
516
743
  # @return [String]
517
744
  #
518
745
  # @!attribute [rw] tag_keys
@@ -679,6 +906,118 @@ module Aws::WorkSpaces
679
906
  include Aws::Structure
680
907
  end
681
908
 
909
+ # @note When making an API call, you may pass DescribeConnectionAliasPermissionsRequest
910
+ # data as a hash:
911
+ #
912
+ # {
913
+ # alias_id: "ConnectionAliasId", # required
914
+ # next_token: "PaginationToken",
915
+ # max_results: 1,
916
+ # }
917
+ #
918
+ # @!attribute [rw] alias_id
919
+ # The identifier of the connection alias.
920
+ # @return [String]
921
+ #
922
+ # @!attribute [rw] next_token
923
+ # If you received a `NextToken` from a previous call that was
924
+ # paginated, provide this token to receive the next set of results.
925
+ # @return [String]
926
+ #
927
+ # @!attribute [rw] max_results
928
+ # The maximum number of results to return.
929
+ # @return [Integer]
930
+ #
931
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeConnectionAliasPermissionsRequest AWS API Documentation
932
+ #
933
+ class DescribeConnectionAliasPermissionsRequest < Struct.new(
934
+ :alias_id,
935
+ :next_token,
936
+ :max_results)
937
+ SENSITIVE = []
938
+ include Aws::Structure
939
+ end
940
+
941
+ # @!attribute [rw] alias_id
942
+ # The identifier of the connection alias.
943
+ # @return [String]
944
+ #
945
+ # @!attribute [rw] connection_alias_permissions
946
+ # The permissions associated with a connection alias.
947
+ # @return [Array<Types::ConnectionAliasPermission>]
948
+ #
949
+ # @!attribute [rw] next_token
950
+ # The token to use to retrieve the next set of results, or null if no
951
+ # more results are available.
952
+ # @return [String]
953
+ #
954
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeConnectionAliasPermissionsResult AWS API Documentation
955
+ #
956
+ class DescribeConnectionAliasPermissionsResult < Struct.new(
957
+ :alias_id,
958
+ :connection_alias_permissions,
959
+ :next_token)
960
+ SENSITIVE = []
961
+ include Aws::Structure
962
+ end
963
+
964
+ # @note When making an API call, you may pass DescribeConnectionAliasesRequest
965
+ # data as a hash:
966
+ #
967
+ # {
968
+ # alias_ids: ["ConnectionAliasId"],
969
+ # resource_id: "NonEmptyString",
970
+ # limit: 1,
971
+ # next_token: "PaginationToken",
972
+ # }
973
+ #
974
+ # @!attribute [rw] alias_ids
975
+ # The identifiers of the connection aliases to describe.
976
+ # @return [Array<String>]
977
+ #
978
+ # @!attribute [rw] resource_id
979
+ # The identifier of the directory associated with the connection
980
+ # alias.
981
+ # @return [String]
982
+ #
983
+ # @!attribute [rw] limit
984
+ # The maximum number of connection aliases to return.
985
+ # @return [Integer]
986
+ #
987
+ # @!attribute [rw] next_token
988
+ # If you received a `NextToken` from a previous call that was
989
+ # paginated, provide this token to receive the next set of results.
990
+ # @return [String]
991
+ #
992
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeConnectionAliasesRequest AWS API Documentation
993
+ #
994
+ class DescribeConnectionAliasesRequest < Struct.new(
995
+ :alias_ids,
996
+ :resource_id,
997
+ :limit,
998
+ :next_token)
999
+ SENSITIVE = []
1000
+ include Aws::Structure
1001
+ end
1002
+
1003
+ # @!attribute [rw] connection_aliases
1004
+ # Information about the specified connection aliases.
1005
+ # @return [Array<Types::ConnectionAlias>]
1006
+ #
1007
+ # @!attribute [rw] next_token
1008
+ # The token to use to retrieve the next set of results, or null if no
1009
+ # more results are available.
1010
+ # @return [String]
1011
+ #
1012
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeConnectionAliasesResult AWS API Documentation
1013
+ #
1014
+ class DescribeConnectionAliasesResult < Struct.new(
1015
+ :connection_aliases,
1016
+ :next_token)
1017
+ SENSITIVE = []
1018
+ include Aws::Structure
1019
+ end
1020
+
682
1021
  # @note When making an API call, you may pass DescribeIpGroupsRequest
683
1022
  # data as a hash:
684
1023
  #
@@ -739,7 +1078,7 @@ module Aws::WorkSpaces
739
1078
  # @!attribute [rw] resource_id
740
1079
  # The identifier of the WorkSpaces resource. The supported resource
741
1080
  # types are WorkSpaces, registered directories, images, custom
742
- # bundles, and IP access control groups.
1081
+ # bundles, IP access control groups, and connection aliases.
743
1082
  # @return [String]
744
1083
  #
745
1084
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeTagsRequest AWS API Documentation
@@ -1147,6 +1486,29 @@ module Aws::WorkSpaces
1147
1486
  include Aws::Structure
1148
1487
  end
1149
1488
 
1489
+ # @note When making an API call, you may pass DisassociateConnectionAliasRequest
1490
+ # data as a hash:
1491
+ #
1492
+ # {
1493
+ # alias_id: "ConnectionAliasId", # required
1494
+ # }
1495
+ #
1496
+ # @!attribute [rw] alias_id
1497
+ # The identifier of the connection alias to disassociate.
1498
+ # @return [String]
1499
+ #
1500
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DisassociateConnectionAliasRequest AWS API Documentation
1501
+ #
1502
+ class DisassociateConnectionAliasRequest < Struct.new(
1503
+ :alias_id)
1504
+ SENSITIVE = []
1505
+ include Aws::Structure
1506
+ end
1507
+
1508
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DisassociateConnectionAliasResult AWS API Documentation
1509
+ #
1510
+ class DisassociateConnectionAliasResult < Aws::EmptyStructure; end
1511
+
1150
1512
  # @note When making an API call, you may pass DisassociateIpGroupsRequest
1151
1513
  # data as a hash:
1152
1514
  #
@@ -2428,6 +2790,40 @@ module Aws::WorkSpaces
2428
2790
  include Aws::Structure
2429
2791
  end
2430
2792
 
2793
+ # @note When making an API call, you may pass UpdateConnectionAliasPermissionRequest
2794
+ # data as a hash:
2795
+ #
2796
+ # {
2797
+ # alias_id: "ConnectionAliasId", # required
2798
+ # connection_alias_permission: { # required
2799
+ # shared_account_id: "AwsAccount", # required
2800
+ # allow_association: false, # required
2801
+ # },
2802
+ # }
2803
+ #
2804
+ # @!attribute [rw] alias_id
2805
+ # The identifier of the connection alias that you want to update
2806
+ # permissions for.
2807
+ # @return [String]
2808
+ #
2809
+ # @!attribute [rw] connection_alias_permission
2810
+ # Indicates whether to share or unshare the connection alias with the
2811
+ # specified AWS account.
2812
+ # @return [Types::ConnectionAliasPermission]
2813
+ #
2814
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateConnectionAliasPermissionRequest AWS API Documentation
2815
+ #
2816
+ class UpdateConnectionAliasPermissionRequest < Struct.new(
2817
+ :alias_id,
2818
+ :connection_alias_permission)
2819
+ SENSITIVE = []
2820
+ include Aws::Structure
2821
+ end
2822
+
2823
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateConnectionAliasPermissionResult AWS API Documentation
2824
+ #
2825
+ class UpdateConnectionAliasPermissionResult < Aws::EmptyStructure; end
2826
+
2431
2827
  # @note When making an API call, you may pass UpdateRulesOfIpGroupRequest
2432
2828
  # data as a hash:
2433
2829
  #
@@ -2830,7 +3226,23 @@ module Aws::WorkSpaces
2830
3226
  # @return [Boolean]
2831
3227
  #
2832
3228
  # @!attribute [rw] default_ou
2833
- # The default organizational unit (OU) for your WorkSpace directories.
3229
+ # The default organizational unit (OU) for your WorkSpaces
3230
+ # directories. This string must be the full Lightweight Directory
3231
+ # Access Protocol (LDAP) distinguished name for the target domain and
3232
+ # OU. It must be in the form `"OU=value,DC=value,DC=value"`, where
3233
+ # *value* is any string of characters, and the number of domain
3234
+ # components (DCs) is two or more. For example,
3235
+ # `OU=WorkSpaces_machines,DC=machines,DC=example,DC=com`.
3236
+ #
3237
+ # * To avoid errors, certain characters in the distinguished name must
3238
+ # be escaped. For more information, see [ Distinguished Names][1] in
3239
+ # the Microsoft documentation.
3240
+ #
3241
+ # * The API doesn't validate whether the OU exists.
3242
+ #
3243
+ #
3244
+ #
3245
+ # [1]: https://docs.microsoft.com/previous-versions/windows/desktop/ldap/distinguished-names
2834
3246
  # @return [String]
2835
3247
  #
2836
3248
  # @!attribute [rw] custom_security_group_id
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-workspaces
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.44.0
4
+ version: 1.45.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-09-04 00:00:00.000000000 Z
11
+ date: 2020-09-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core