aws-sdk-workspaces 1.40.0 → 1.45.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: aa859e852c652711eb645458bed4ab030034ac1faa23083c777dfbc1e6768ab0
4
- data.tar.gz: 2a527e967670b451e635877a36a69bb7cab216c4a34d712954d01896d1c541ff
3
+ metadata.gz: 01a36cdced3b1651804df88a7742535394b50d96ae58a404f13f4eca8f1d5698
4
+ data.tar.gz: e30a892c2b627d2aef368c3c096a973ecb10c344e0b6a624407883a6008429b7
5
5
  SHA512:
6
- metadata.gz: c6b34d87068a7d04e265e8e56f2ddcac9d71c829fad89d4e8e19d2400d43f32dd4cbf9772358ac80958fdd685ddfea4e9d9cfaa74bcf0e28cdc2fae937488459
7
- data.tar.gz: 706cdf080cac173feb40a1fa97fb02141782efcb3061a5d9c4ad76df710a827449afd90278264b3c21e130deb03641bf906edffcdef2760346f39e8f0ab91645
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
  #
@@ -44,9 +44,9 @@ require_relative 'aws-sdk-workspaces/customizations'
44
44
  #
45
45
  # See {Errors} for more information.
46
46
  #
47
- # @service
47
+ # @!group service
48
48
  module Aws::WorkSpaces
49
49
 
50
- GEM_VERSION = '1.40.0'
50
+ GEM_VERSION = '1.45.0'
51
51
 
52
52
  end
@@ -85,13 +85,28 @@ module Aws::WorkSpaces
85
85
  # * `Aws::Credentials` - Used for configuring static, non-refreshing
86
86
  # credentials.
87
87
  #
88
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
89
+ # shared file, such as `~/.aws/config`.
90
+ #
91
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
92
+ #
93
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
94
+ # assume a role after providing credentials via the web.
95
+ #
96
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
97
+ # access token generated from `aws login`.
98
+ #
99
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
100
+ # process that outputs to stdout.
101
+ #
88
102
  # * `Aws::InstanceProfileCredentials` - Used for loading credentials
89
103
  # from an EC2 IMDS on an EC2 instance.
90
104
  #
91
- # * `Aws::SharedCredentials` - Used for loading credentials from a
92
- # shared file, such as `~/.aws/config`.
105
+ # * `Aws::ECSCredentials` - Used for loading credentials from
106
+ # instances running in ECS.
93
107
  #
94
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
108
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
109
+ # from the Cognito Identity service.
95
110
  #
96
111
  # When `:credentials` are not configured directly, the following
97
112
  # locations will be searched for credentials:
@@ -101,10 +116,10 @@ module Aws::WorkSpaces
101
116
  # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
102
117
  # * `~/.aws/credentials`
103
118
  # * `~/.aws/config`
104
- # * EC2 IMDS instance profile - When used by default, the timeouts are
105
- # very aggressive. Construct and pass an instance of
106
- # `Aws::InstanceProfileCredentails` to enable retries and extended
107
- # timeouts.
119
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
+ # are very aggressive. Construct and pass an instance of
121
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
+ # enable retries and extended timeouts.
108
123
  #
109
124
  # @option options [required, String] :region
110
125
  # The AWS region to connect to. The configured `:region` is
@@ -322,6 +337,52 @@ module Aws::WorkSpaces
322
337
 
323
338
  # @!group API Operations
324
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
+
325
386
  # Associates the specified IP access control group with the specified
326
387
  # directory.
327
388
  #
@@ -433,6 +494,56 @@ module Aws::WorkSpaces
433
494
  req.send_request(options)
434
495
  end
435
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
+
436
547
  # Creates an IP access control group.
437
548
  #
438
549
  # An IP access control group provides you with the ability to control
@@ -502,7 +613,7 @@ module Aws::WorkSpaces
502
613
  # @option params [required, String] :resource_id
503
614
  # The identifier of the WorkSpaces resource. The supported resource
504
615
  # types are WorkSpaces, registered directories, images, custom bundles,
505
- # and IP access control groups.
616
+ # IP access control groups, and connection aliases.
506
617
  #
507
618
  # @option params [required, Array<Types::Tag>] :tags
508
619
  # The tags. Each WorkSpaces resource can have a maximum of 50 tags. If
@@ -624,6 +735,49 @@ module Aws::WorkSpaces
624
735
  req.send_request(options)
625
736
  end
626
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
+
627
781
  # Deletes the specified IP access control group.
628
782
  #
629
783
  # You cannot delete an IP access control group that is associated with a
@@ -654,7 +808,7 @@ module Aws::WorkSpaces
654
808
  # @option params [required, String] :resource_id
655
809
  # The identifier of the WorkSpaces resource. The supported resource
656
810
  # types are WorkSpaces, registered directories, images, custom bundles,
657
- # and IP access control groups.
811
+ # IP access control groups, and connection aliases.
658
812
  #
659
813
  # @option params [required, Array<String>] :tag_keys
660
814
  # The tag keys.
@@ -679,7 +833,7 @@ module Aws::WorkSpaces
679
833
 
680
834
  # Deletes the specified image from your account. To delete an image, you
681
835
  # must first delete any bundles that are associated with the image and
682
- # un-share the image if it is shared with other accounts.
836
+ # unshare the image if it is shared with other accounts.
683
837
  #
684
838
  # @option params [required, String] :image_id
685
839
  # The identifier of the image.
@@ -820,6 +974,114 @@ module Aws::WorkSpaces
820
974
  req.send_request(options)
821
975
  end
822
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
+
823
1085
  # Describes one or more of your IP access control groups.
824
1086
  #
825
1087
  # @option params [Array<String>] :group_ids
@@ -870,7 +1132,7 @@ module Aws::WorkSpaces
870
1132
  # @option params [required, String] :resource_id
871
1133
  # The identifier of the WorkSpaces resource. The supported resource
872
1134
  # types are WorkSpaces, registered directories, images, custom bundles,
873
- # and IP access control groups.
1135
+ # IP access control groups, and connection aliases.
874
1136
  #
875
1137
  # @return [Types::DescribeTagsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
876
1138
  #
@@ -1032,6 +1294,49 @@ module Aws::WorkSpaces
1032
1294
  req.send_request(options)
1033
1295
  end
1034
1296
 
1297
+ # Describes the permissions that the owner of an image has granted to
1298
+ # other AWS accounts for an image.
1299
+ #
1300
+ # @option params [required, String] :image_id
1301
+ # The identifier of the image.
1302
+ #
1303
+ # @option params [String] :next_token
1304
+ # If you received a `NextToken` from a previous call that was paginated,
1305
+ # provide this token to receive the next set of results.
1306
+ #
1307
+ # @option params [Integer] :max_results
1308
+ # The maximum number of items to return.
1309
+ #
1310
+ # @return [Types::DescribeWorkspaceImagePermissionsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1311
+ #
1312
+ # * {Types::DescribeWorkspaceImagePermissionsResult#image_id #image_id} => String
1313
+ # * {Types::DescribeWorkspaceImagePermissionsResult#image_permissions #image_permissions} => Array&lt;Types::ImagePermission&gt;
1314
+ # * {Types::DescribeWorkspaceImagePermissionsResult#next_token #next_token} => String
1315
+ #
1316
+ # @example Request syntax with placeholder values
1317
+ #
1318
+ # resp = client.describe_workspace_image_permissions({
1319
+ # image_id: "WorkspaceImageId", # required
1320
+ # next_token: "PaginationToken",
1321
+ # max_results: 1,
1322
+ # })
1323
+ #
1324
+ # @example Response structure
1325
+ #
1326
+ # resp.image_id #=> String
1327
+ # resp.image_permissions #=> Array
1328
+ # resp.image_permissions[0].shared_account_id #=> String
1329
+ # resp.next_token #=> String
1330
+ #
1331
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceImagePermissions AWS API Documentation
1332
+ #
1333
+ # @overload describe_workspace_image_permissions(params = {})
1334
+ # @param [Hash] params ({})
1335
+ def describe_workspace_image_permissions(params = {}, options = {})
1336
+ req = build_request(:describe_workspace_image_permissions, params)
1337
+ req.send_request(options)
1338
+ end
1339
+
1035
1340
  # Retrieves a list that describes one or more specified images, if the
1036
1341
  # image identifiers are provided. Otherwise, all images in the account
1037
1342
  # are described.
@@ -1039,6 +1344,9 @@ module Aws::WorkSpaces
1039
1344
  # @option params [Array<String>] :image_ids
1040
1345
  # The identifier of the image.
1041
1346
  #
1347
+ # @option params [String] :image_type
1348
+ # The type (owned or shared) of the image.
1349
+ #
1042
1350
  # @option params [String] :next_token
1043
1351
  # If you received a `NextToken` from a previous call that was paginated,
1044
1352
  # provide this token to receive the next set of results.
@@ -1055,6 +1363,7 @@ module Aws::WorkSpaces
1055
1363
  #
1056
1364
  # resp = client.describe_workspace_images({
1057
1365
  # image_ids: ["WorkspaceImageId"],
1366
+ # image_type: "OWNED", # accepts OWNED, SHARED
1058
1367
  # next_token: "PaginationToken",
1059
1368
  # max_results: 1,
1060
1369
  # })
@@ -1070,6 +1379,8 @@ module Aws::WorkSpaces
1070
1379
  # resp.images[0].required_tenancy #=> String, one of "DEFAULT", "DEDICATED"
1071
1380
  # resp.images[0].error_code #=> String
1072
1381
  # resp.images[0].error_message #=> String
1382
+ # resp.images[0].created #=> Time
1383
+ # resp.images[0].owner_account_id #=> String
1073
1384
  # resp.next_token #=> String
1074
1385
  #
1075
1386
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceImages AWS API Documentation
@@ -1240,6 +1551,42 @@ module Aws::WorkSpaces
1240
1551
  req.send_request(options)
1241
1552
  end
1242
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
+
1243
1590
  # Disassociates the specified IP access control group from the specified
1244
1591
  # directory.
1245
1592
  #
@@ -1267,16 +1614,23 @@ module Aws::WorkSpaces
1267
1614
  req.send_request(options)
1268
1615
  end
1269
1616
 
1270
- # Imports the specified Windows 7 or Windows 10 Bring Your Own License
1271
- # (BYOL) image into Amazon WorkSpaces. The image must be an already
1272
- # licensed EC2 image that is in your AWS account, and you must own the
1273
- # image.
1617
+ # Imports the specified Windows 10 Bring Your Own License (BYOL) image
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
1620
+ # more information about creating BYOL images, see [ Bring Your Own
1621
+ # Windows Desktop Licenses][1].
1622
+ #
1623
+ #
1624
+ #
1625
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/adminguide/byol-windows-images.html
1274
1626
  #
1275
1627
  # @option params [required, String] :ec2_image_id
1276
1628
  # The identifier of the EC2 image.
1277
1629
  #
1278
1630
  # @option params [required, String] :ingestion_process
1279
- # The ingestion process to be used when importing the image.
1631
+ # The ingestion process to be used when importing the image. For
1632
+ # non-GPU-enabled bundles (bundles other than Graphics or GraphicsPro),
1633
+ # specify `BYOL_REGULAR`.
1280
1634
  #
1281
1635
  # @option params [required, String] :image_name
1282
1636
  # The name of the WorkSpace image.
@@ -1287,6 +1641,21 @@ module Aws::WorkSpaces
1287
1641
  # @option params [Array<Types::Tag>] :tags
1288
1642
  # The tags. Each WorkSpaces resource can have a maximum of 50 tags.
1289
1643
  #
1644
+ # @option params [Array<String>] :applications
1645
+ # If specified, the version of Microsoft Office to subscribe to. Valid
1646
+ # only for Windows 10 BYOL images. For more information about
1647
+ # subscribing to Office for BYOL images, see [ Bring Your Own Windows
1648
+ # Desktop Licenses][1].
1649
+ #
1650
+ # <note markdown="1"> Although this parameter is an array, only one item is allowed at this
1651
+ # time.
1652
+ #
1653
+ # </note>
1654
+ #
1655
+ #
1656
+ #
1657
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/adminguide/byol-windows-images.html
1658
+ #
1290
1659
  # @return [Types::ImportWorkspaceImageResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1291
1660
  #
1292
1661
  # * {Types::ImportWorkspaceImageResult#image_id #image_id} => String
@@ -1304,6 +1673,7 @@ module Aws::WorkSpaces
1304
1673
  # value: "TagValue",
1305
1674
  # },
1306
1675
  # ],
1676
+ # applications: ["Microsoft_Office_2016"], # accepts Microsoft_Office_2016, Microsoft_Office_2019
1307
1677
  # })
1308
1678
  #
1309
1679
  # @example Response structure
@@ -1572,6 +1942,7 @@ module Aws::WorkSpaces
1572
1942
  # resp = client.modify_workspace_creation_properties({
1573
1943
  # resource_id: "DirectoryId", # required
1574
1944
  # workspace_creation_properties: { # required
1945
+ # enable_work_docs: false,
1575
1946
  # enable_internet_access: false,
1576
1947
  # default_ou: "DefaultOu",
1577
1948
  # custom_security_group_id: "SecurityGroupId",
@@ -1589,7 +1960,13 @@ module Aws::WorkSpaces
1589
1960
  req.send_request(options)
1590
1961
  end
1591
1962
 
1592
- # Modifies the specified WorkSpace properties.
1963
+ # Modifies the specified WorkSpace properties. For important information
1964
+ # about how to modify the size of the root and user volumes, see [
1965
+ # Modify a WorkSpace][1].
1966
+ #
1967
+ #
1968
+ #
1969
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/adminguide/modify-workspaces.html
1593
1970
  #
1594
1971
  # @option params [required, String] :workspace_id
1595
1972
  # The identifier of the WorkSpace.
@@ -1697,7 +2074,7 @@ module Aws::WorkSpaces
1697
2074
  # Rebuilds the specified WorkSpace.
1698
2075
  #
1699
2076
  # You cannot rebuild a WorkSpace unless its state is `AVAILABLE`,
1700
- # `ERROR`, `UNHEALTHY`, or `STOPPED`.
2077
+ # `ERROR`, `UNHEALTHY`, `STOPPED`, or `REBOOTING`.
1701
2078
  #
1702
2079
  # Rebuilding a WorkSpace is a potentially destructive action that can
1703
2080
  # result in the loss of data. For more information, see [Rebuild a
@@ -2003,6 +2380,61 @@ module Aws::WorkSpaces
2003
2380
  req.send_request(options)
2004
2381
  end
2005
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
+
2006
2438
  # Replaces the current rules of the specified IP access control group
2007
2439
  # with the specified rules.
2008
2440
  #
@@ -2035,6 +2467,51 @@ module Aws::WorkSpaces
2035
2467
  req.send_request(options)
2036
2468
  end
2037
2469
 
2470
+ # Shares or unshares an image with one account by specifying whether
2471
+ # that account has permission to copy the image. If the copy image
2472
+ # permission is granted, the image is shared with that account. If the
2473
+ # copy image permission is revoked, the image is unshared with the
2474
+ # account.
2475
+ #
2476
+ # <note markdown="1"> * To delete an image that has been shared, you must unshare the image
2477
+ # before you delete it.
2478
+ #
2479
+ # * Sharing Bring Your Own License (BYOL) images across AWS accounts
2480
+ # isn't supported at this time in the AWS GovCloud (US-West) Region.
2481
+ # To share BYOL images across accounts in the AWS GovCloud (US-West)
2482
+ # Region, contact AWS Support.
2483
+ #
2484
+ # </note>
2485
+ #
2486
+ # @option params [required, String] :image_id
2487
+ # The identifier of the image.
2488
+ #
2489
+ # @option params [required, Boolean] :allow_copy_image
2490
+ # The permission to copy the image. This permission can be revoked only
2491
+ # after an image has been shared.
2492
+ #
2493
+ # @option params [required, String] :shared_account_id
2494
+ # The identifier of the AWS account to share or unshare the image with.
2495
+ #
2496
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2497
+ #
2498
+ # @example Request syntax with placeholder values
2499
+ #
2500
+ # resp = client.update_workspace_image_permission({
2501
+ # image_id: "WorkspaceImageId", # required
2502
+ # allow_copy_image: false, # required
2503
+ # shared_account_id: "AwsAccount", # required
2504
+ # })
2505
+ #
2506
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateWorkspaceImagePermission AWS API Documentation
2507
+ #
2508
+ # @overload update_workspace_image_permission(params = {})
2509
+ # @param [Hash] params ({})
2510
+ def update_workspace_image_permission(params = {}, options = {})
2511
+ req = build_request(:update_workspace_image_permission, params)
2512
+ req.send_request(options)
2513
+ end
2514
+
2038
2515
  # @!endgroup
2039
2516
 
2040
2517
  # @param params ({})
@@ -2048,7 +2525,7 @@ module Aws::WorkSpaces
2048
2525
  params: params,
2049
2526
  config: config)
2050
2527
  context[:gem_name] = 'aws-sdk-workspaces'
2051
- context[:gem_version] = '1.40.0'
2528
+ context[:gem_version] = '1.45.0'
2052
2529
  Seahorse::Client::Request.new(handlers, context)
2053
2530
  end
2054
2531