aws-sdk-appstream 1.67.0 → 1.69.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: 3f7f10f7b03e0c2776ebdd4a67681c9c46b97c45f27afbe10719e2e357007e06
4
- data.tar.gz: 5ee38a75e48978ae2e673a7392edcfe50304cd2b6e61faae9ad070d6a1c1908c
3
+ metadata.gz: ef5324357eed800b99b6e680b6756ab1baf4739bca0d34c3067f2fa09f334651
4
+ data.tar.gz: 4c7782fbc4e0d12aa7016daf0401da0111fcef102ead3cf8f969637a5ba811e4
5
5
  SHA512:
6
- metadata.gz: a84ffe7a90eb821c4bf4c7f79ca88bf08de780a230ff406aff50d8e6b8cb702628315e35f4fc370909b81cf0b48210fe2870dd6dc016a318fdfb1b7140221896
7
- data.tar.gz: 67265670dadde954fc2aa9c28ec64ec88807bc5abd4a1994738cc0efd29b6316bb2881154e325bbe19126f43bc4099c8fc09e150d81e3788e3508e4425ed75ba
6
+ metadata.gz: 9404e36d783ceb34a14e442125eaded47478fdd2d4ce81226917519eb8959c0331f7b4392ad9b52bebb3e75cb96ecb2038286a565a8bbd8e975db232eafc4c68
7
+ data.tar.gz: b87d25bdfe3eb399def7f7a4ec2d72e01ecdab8304d14ca0677c235a63605026df9fdf30db94fa5dff4a1c520b15a958006b8bc3dc011c603949f620c79e7869
data/CHANGELOG.md CHANGED
@@ -1,6 +1,18 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.69.0 (2023-01-18)
5
+ ------------------
6
+
7
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
8
+
9
+ * Issue - Replace runtime endpoint resolution approach with generated ruby code.
10
+
11
+ 1.68.0 (2022-10-28)
12
+ ------------------
13
+
14
+ * Feature - This release includes CertificateBasedAuthProperties in CreateDirectoryConfig and UpdateDirectoryConfig.
15
+
4
16
  1.67.0 (2022-10-25)
5
17
  ------------------
6
18
 
@@ -405,4 +417,4 @@ Unreleased Changes
405
417
  1.0.0.rc2 (2016-12-09)
406
418
  ------------------
407
419
 
408
- * Feature - Initial release of `aws-sdk-appstream`.
420
+ * Feature - Initial release of `aws-sdk-appstream`.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.67.0
1
+ 1.69.0
@@ -486,7 +486,7 @@ module Aws::AppStream
486
486
  # {
487
487
  # stack_name: "String", # required
488
488
  # user_name: "Username", # required
489
- # authentication_type: "API", # required, accepts API, SAML, USERPOOL
489
+ # authentication_type: "API", # required, accepts API, SAML, USERPOOL, AWS_AD
490
490
  # send_email_notification: false,
491
491
  # },
492
492
  # ],
@@ -497,7 +497,7 @@ module Aws::AppStream
497
497
  # resp.errors #=> Array
498
498
  # resp.errors[0].user_stack_association.stack_name #=> String
499
499
  # resp.errors[0].user_stack_association.user_name #=> String
500
- # resp.errors[0].user_stack_association.authentication_type #=> String, one of "API", "SAML", "USERPOOL"
500
+ # resp.errors[0].user_stack_association.authentication_type #=> String, one of "API", "SAML", "USERPOOL", "AWS_AD"
501
501
  # resp.errors[0].user_stack_association.send_email_notification #=> Boolean
502
502
  # resp.errors[0].error_code #=> String, one of "STACK_NOT_FOUND", "USER_NAME_NOT_FOUND", "DIRECTORY_NOT_FOUND", "INTERNAL_ERROR"
503
503
  # resp.errors[0].error_message #=> String
@@ -527,7 +527,7 @@ module Aws::AppStream
527
527
  # {
528
528
  # stack_name: "String", # required
529
529
  # user_name: "Username", # required
530
- # authentication_type: "API", # required, accepts API, SAML, USERPOOL
530
+ # authentication_type: "API", # required, accepts API, SAML, USERPOOL, AWS_AD
531
531
  # send_email_notification: false,
532
532
  # },
533
533
  # ],
@@ -538,7 +538,7 @@ module Aws::AppStream
538
538
  # resp.errors #=> Array
539
539
  # resp.errors[0].user_stack_association.stack_name #=> String
540
540
  # resp.errors[0].user_stack_association.user_name #=> String
541
- # resp.errors[0].user_stack_association.authentication_type #=> String, one of "API", "SAML", "USERPOOL"
541
+ # resp.errors[0].user_stack_association.authentication_type #=> String, one of "API", "SAML", "USERPOOL", "AWS_AD"
542
542
  # resp.errors[0].user_stack_association.send_email_notification #=> Boolean
543
543
  # resp.errors[0].error_code #=> String, one of "STACK_NOT_FOUND", "USER_NAME_NOT_FOUND", "DIRECTORY_NOT_FOUND", "INTERNAL_ERROR"
544
544
  # resp.errors[0].error_message #=> String
@@ -799,6 +799,18 @@ module Aws::AppStream
799
799
  # The credentials for the service account used by the fleet or image
800
800
  # builder to connect to the directory.
801
801
  #
802
+ # @option params [Types::CertificateBasedAuthProperties] :certificate_based_auth_properties
803
+ # The certificate-based authentication properties used to authenticate
804
+ # SAML 2.0 Identity Provider (IdP) user identities to Active Directory
805
+ # domain-joined streaming instances. Fallback is turned on by default
806
+ # when certificate-based authentication is **Enabled** . Fallback allows
807
+ # users to log in using their AD domain password if certificate-based
808
+ # authentication is unsuccessful, or to unlock a desktop lock screen.
809
+ # **Enabled\_no\_directory\_login\_fallback** enables certificate-based
810
+ # authentication, but does not allow users to log in using their AD
811
+ # domain password. Users will be disconnected to re-authenticate using
812
+ # certificates.
813
+ #
802
814
  # @return [Types::CreateDirectoryConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
803
815
  #
804
816
  # * {Types::CreateDirectoryConfigResult#directory_config #directory_config} => Types::DirectoryConfig
@@ -812,6 +824,10 @@ module Aws::AppStream
812
824
  # account_name: "AccountName", # required
813
825
  # account_password: "AccountPassword", # required
814
826
  # },
827
+ # certificate_based_auth_properties: {
828
+ # status: "DISABLED", # accepts DISABLED, ENABLED, ENABLED_NO_DIRECTORY_LOGIN_FALLBACK
829
+ # certificate_authority_arn: "Arn",
830
+ # },
815
831
  # })
816
832
  #
817
833
  # @example Response structure
@@ -822,6 +838,8 @@ module Aws::AppStream
822
838
  # resp.directory_config.service_account_credentials.account_name #=> String
823
839
  # resp.directory_config.service_account_credentials.account_password #=> String
824
840
  # resp.directory_config.created_time #=> Time
841
+ # resp.directory_config.certificate_based_auth_properties.status #=> String, one of "DISABLED", "ENABLED", "ENABLED_NO_DIRECTORY_LOGIN_FALLBACK"
842
+ # resp.directory_config.certificate_based_auth_properties.certificate_authority_arn #=> String
825
843
  #
826
844
  # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/CreateDirectoryConfig AWS API Documentation
827
845
  #
@@ -895,8 +913,8 @@ module Aws::AppStream
895
913
  req.send_request(options)
896
914
  end
897
915
 
898
- # Creates a fleet. A fleet consists of streaming instances that run a
899
- # specified image when using Always-On or On-Demand.
916
+ # Creates a fleet. A fleet consists of streaming instances that your
917
+ # users access for their applications and desktops.
900
918
  #
901
919
  # @option params [required, String] :name
902
920
  # A unique name for the fleet.
@@ -917,6 +935,10 @@ module Aws::AppStream
917
935
  #
918
936
  # * stream.standard.large
919
937
  #
938
+ # * stream.standard.xlarge
939
+ #
940
+ # * stream.standard.2xlarge
941
+ #
920
942
  # * stream.compute.large
921
943
  #
922
944
  # * stream.compute.xlarge
@@ -983,6 +1005,12 @@ module Aws::AppStream
983
1005
  #
984
1006
  # * stream.standard.medium
985
1007
  #
1008
+ # * stream.standard.large
1009
+ #
1010
+ # * stream.standard.xlarge
1011
+ #
1012
+ # * stream.standard.2xlarge
1013
+ #
986
1014
  # @option params [String] :fleet_type
987
1015
  # The fleet type.
988
1016
  #
@@ -1878,7 +1906,7 @@ module Aws::AppStream
1878
1906
  # message_action: "SUPPRESS", # accepts SUPPRESS, RESEND
1879
1907
  # first_name: "UserAttributeValue",
1880
1908
  # last_name: "UserAttributeValue",
1881
- # authentication_type: "API", # required, accepts API, SAML, USERPOOL
1909
+ # authentication_type: "API", # required, accepts API, SAML, USERPOOL, AWS_AD
1882
1910
  # })
1883
1911
  #
1884
1912
  # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/CreateUser AWS API Documentation
@@ -2217,7 +2245,7 @@ module Aws::AppStream
2217
2245
  #
2218
2246
  # resp = client.delete_user({
2219
2247
  # user_name: "Username", # required
2220
- # authentication_type: "API", # required, accepts API, SAML, USERPOOL
2248
+ # authentication_type: "API", # required, accepts API, SAML, USERPOOL, AWS_AD
2221
2249
  # })
2222
2250
  #
2223
2251
  # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/DeleteUser AWS API Documentation
@@ -2426,6 +2454,8 @@ module Aws::AppStream
2426
2454
  # resp.directory_configs[0].service_account_credentials.account_name #=> String
2427
2455
  # resp.directory_configs[0].service_account_credentials.account_password #=> String
2428
2456
  # resp.directory_configs[0].created_time #=> Time
2457
+ # resp.directory_configs[0].certificate_based_auth_properties.status #=> String, one of "DISABLED", "ENABLED", "ENABLED_NO_DIRECTORY_LOGIN_FALLBACK"
2458
+ # resp.directory_configs[0].certificate_based_auth_properties.certificate_authority_arn #=> String
2429
2459
  # resp.next_token #=> String
2430
2460
  #
2431
2461
  # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/DescribeDirectoryConfigs AWS API Documentation
@@ -2824,7 +2854,7 @@ module Aws::AppStream
2824
2854
  # user_id: "UserId",
2825
2855
  # next_token: "String",
2826
2856
  # limit: 1,
2827
- # authentication_type: "API", # accepts API, SAML, USERPOOL
2857
+ # authentication_type: "API", # accepts API, SAML, USERPOOL, AWS_AD
2828
2858
  # })
2829
2859
  #
2830
2860
  # @example Response structure
@@ -2838,7 +2868,7 @@ module Aws::AppStream
2838
2868
  # resp.sessions[0].connection_state #=> String, one of "CONNECTED", "NOT_CONNECTED"
2839
2869
  # resp.sessions[0].start_time #=> Time
2840
2870
  # resp.sessions[0].max_expiration_time #=> Time
2841
- # resp.sessions[0].authentication_type #=> String, one of "API", "SAML", "USERPOOL"
2871
+ # resp.sessions[0].authentication_type #=> String, one of "API", "SAML", "USERPOOL", "AWS_AD"
2842
2872
  # resp.sessions[0].network_access_configuration.eni_private_ip_address #=> String
2843
2873
  # resp.sessions[0].network_access_configuration.eni_id #=> String
2844
2874
  # resp.next_token #=> String
@@ -2997,7 +3027,7 @@ module Aws::AppStream
2997
3027
  # resp = client.describe_user_stack_associations({
2998
3028
  # stack_name: "String",
2999
3029
  # user_name: "Username",
3000
- # authentication_type: "API", # accepts API, SAML, USERPOOL
3030
+ # authentication_type: "API", # accepts API, SAML, USERPOOL, AWS_AD
3001
3031
  # max_results: 1,
3002
3032
  # next_token: "String",
3003
3033
  # })
@@ -3007,7 +3037,7 @@ module Aws::AppStream
3007
3037
  # resp.user_stack_associations #=> Array
3008
3038
  # resp.user_stack_associations[0].stack_name #=> String
3009
3039
  # resp.user_stack_associations[0].user_name #=> String
3010
- # resp.user_stack_associations[0].authentication_type #=> String, one of "API", "SAML", "USERPOOL"
3040
+ # resp.user_stack_associations[0].authentication_type #=> String, one of "API", "SAML", "USERPOOL", "AWS_AD"
3011
3041
  # resp.user_stack_associations[0].send_email_notification #=> Boolean
3012
3042
  # resp.next_token #=> String
3013
3043
  #
@@ -3042,7 +3072,7 @@ module Aws::AppStream
3042
3072
  # @example Request syntax with placeholder values
3043
3073
  #
3044
3074
  # resp = client.describe_users({
3045
- # authentication_type: "API", # required, accepts API, SAML, USERPOOL
3075
+ # authentication_type: "API", # required, accepts API, SAML, USERPOOL, AWS_AD
3046
3076
  # max_results: 1,
3047
3077
  # next_token: "String",
3048
3078
  # })
@@ -3057,7 +3087,7 @@ module Aws::AppStream
3057
3087
  # resp.users[0].first_name #=> String
3058
3088
  # resp.users[0].last_name #=> String
3059
3089
  # resp.users[0].created_time #=> Time
3060
- # resp.users[0].authentication_type #=> String, one of "API", "SAML", "USERPOOL"
3090
+ # resp.users[0].authentication_type #=> String, one of "API", "SAML", "USERPOOL", "AWS_AD"
3061
3091
  # resp.next_token #=> String
3062
3092
  #
3063
3093
  # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/DescribeUsers AWS API Documentation
@@ -3089,7 +3119,7 @@ module Aws::AppStream
3089
3119
  #
3090
3120
  # resp = client.disable_user({
3091
3121
  # user_name: "Username", # required
3092
- # authentication_type: "API", # required, accepts API, SAML, USERPOOL
3122
+ # authentication_type: "API", # required, accepts API, SAML, USERPOOL, AWS_AD
3093
3123
  # })
3094
3124
  #
3095
3125
  # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/DisableUser AWS API Documentation
@@ -3206,7 +3236,7 @@ module Aws::AppStream
3206
3236
  #
3207
3237
  # resp = client.enable_user({
3208
3238
  # user_name: "Username", # required
3209
- # authentication_type: "API", # required, accepts API, SAML, USERPOOL
3239
+ # authentication_type: "API", # required, accepts API, SAML, USERPOOL, AWS_AD
3210
3240
  # })
3211
3241
  #
3212
3242
  # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/EnableUser AWS API Documentation
@@ -3743,6 +3773,18 @@ module Aws::AppStream
3743
3773
  # The credentials for the service account used by the fleet or image
3744
3774
  # builder to connect to the directory.
3745
3775
  #
3776
+ # @option params [Types::CertificateBasedAuthProperties] :certificate_based_auth_properties
3777
+ # The certificate-based authentication properties used to authenticate
3778
+ # SAML 2.0 Identity Provider (IdP) user identities to Active Directory
3779
+ # domain-joined streaming instances. Fallback is turned on by default
3780
+ # when certificate-based authentication is **Enabled** . Fallback allows
3781
+ # users to log in using their AD domain password if certificate-based
3782
+ # authentication is unsuccessful, or to unlock a desktop lock screen.
3783
+ # **Enabled\_no\_directory\_login\_fallback** enables certificate-based
3784
+ # authentication, but does not allow users to log in using their AD
3785
+ # domain password. Users will be disconnected to re-authenticate using
3786
+ # certificates.
3787
+ #
3746
3788
  # @return [Types::UpdateDirectoryConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3747
3789
  #
3748
3790
  # * {Types::UpdateDirectoryConfigResult#directory_config #directory_config} => Types::DirectoryConfig
@@ -3756,6 +3798,10 @@ module Aws::AppStream
3756
3798
  # account_name: "AccountName", # required
3757
3799
  # account_password: "AccountPassword", # required
3758
3800
  # },
3801
+ # certificate_based_auth_properties: {
3802
+ # status: "DISABLED", # accepts DISABLED, ENABLED, ENABLED_NO_DIRECTORY_LOGIN_FALLBACK
3803
+ # certificate_authority_arn: "Arn",
3804
+ # },
3759
3805
  # })
3760
3806
  #
3761
3807
  # @example Response structure
@@ -3766,6 +3812,8 @@ module Aws::AppStream
3766
3812
  # resp.directory_config.service_account_credentials.account_name #=> String
3767
3813
  # resp.directory_config.service_account_credentials.account_password #=> String
3768
3814
  # resp.directory_config.created_time #=> Time
3815
+ # resp.directory_config.certificate_based_auth_properties.status #=> String, one of "DISABLED", "ENABLED", "ENABLED_NO_DIRECTORY_LOGIN_FALLBACK"
3816
+ # resp.directory_config.certificate_based_auth_properties.certificate_authority_arn #=> String
3769
3817
  #
3770
3818
  # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/UpdateDirectoryConfig AWS API Documentation
3771
3819
  #
@@ -3875,6 +3923,10 @@ module Aws::AppStream
3875
3923
  #
3876
3924
  # * stream.standard.large
3877
3925
  #
3926
+ # * stream.standard.xlarge
3927
+ #
3928
+ # * stream.standard.2xlarge
3929
+ #
3878
3930
  # * stream.compute.large
3879
3931
  #
3880
3932
  # * stream.compute.xlarge
@@ -3941,6 +3993,12 @@ module Aws::AppStream
3941
3993
  #
3942
3994
  # * stream.standard.medium
3943
3995
  #
3996
+ # * stream.standard.large
3997
+ #
3998
+ # * stream.standard.xlarge
3999
+ #
4000
+ # * stream.standard.2xlarge
4001
+ #
3944
4002
  # @option params [Types::ComputeCapacity] :compute_capacity
3945
4003
  # The desired capacity for the fleet. This is not allowed for Elastic
3946
4004
  # fleets.
@@ -4326,7 +4384,7 @@ module Aws::AppStream
4326
4384
  params: params,
4327
4385
  config: config)
4328
4386
  context[:gem_name] = 'aws-sdk-appstream'
4329
- context[:gem_version] = '1.67.0'
4387
+ context[:gem_version] = '1.69.0'
4330
4388
  Seahorse::Client::Request.new(handlers, context)
4331
4389
  end
4332
4390
 
@@ -48,6 +48,8 @@ module Aws::AppStream
48
48
  BatchDisassociateUserStackResult = Shapes::StructureShape.new(name: 'BatchDisassociateUserStackResult')
49
49
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
50
50
  BooleanObject = Shapes::BooleanShape.new(name: 'BooleanObject')
51
+ CertificateBasedAuthProperties = Shapes::StructureShape.new(name: 'CertificateBasedAuthProperties')
52
+ CertificateBasedAuthStatus = Shapes::StringShape.new(name: 'CertificateBasedAuthStatus')
51
53
  ComputeCapacity = Shapes::StructureShape.new(name: 'ComputeCapacity')
52
54
  ComputeCapacityStatus = Shapes::StructureShape.new(name: 'ComputeCapacityStatus')
53
55
  ConcurrentModificationException = Shapes::StructureShape.new(name: 'ConcurrentModificationException')
@@ -388,6 +390,10 @@ module Aws::AppStream
388
390
  BatchDisassociateUserStackResult.add_member(:errors, Shapes::ShapeRef.new(shape: UserStackAssociationErrorList, location_name: "errors"))
389
391
  BatchDisassociateUserStackResult.struct_class = Types::BatchDisassociateUserStackResult
390
392
 
393
+ CertificateBasedAuthProperties.add_member(:status, Shapes::ShapeRef.new(shape: CertificateBasedAuthStatus, location_name: "Status"))
394
+ CertificateBasedAuthProperties.add_member(:certificate_authority_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "CertificateAuthorityArn"))
395
+ CertificateBasedAuthProperties.struct_class = Types::CertificateBasedAuthProperties
396
+
391
397
  ComputeCapacity.add_member(:desired_instances, Shapes::ShapeRef.new(shape: Integer, required: true, location_name: "DesiredInstances"))
392
398
  ComputeCapacity.struct_class = Types::ComputeCapacity
393
399
 
@@ -439,6 +445,7 @@ module Aws::AppStream
439
445
  CreateDirectoryConfigRequest.add_member(:directory_name, Shapes::ShapeRef.new(shape: DirectoryName, required: true, location_name: "DirectoryName"))
440
446
  CreateDirectoryConfigRequest.add_member(:organizational_unit_distinguished_names, Shapes::ShapeRef.new(shape: OrganizationalUnitDistinguishedNamesList, required: true, location_name: "OrganizationalUnitDistinguishedNames"))
441
447
  CreateDirectoryConfigRequest.add_member(:service_account_credentials, Shapes::ShapeRef.new(shape: ServiceAccountCredentials, location_name: "ServiceAccountCredentials"))
448
+ CreateDirectoryConfigRequest.add_member(:certificate_based_auth_properties, Shapes::ShapeRef.new(shape: CertificateBasedAuthProperties, location_name: "CertificateBasedAuthProperties"))
442
449
  CreateDirectoryConfigRequest.struct_class = Types::CreateDirectoryConfigRequest
443
450
 
444
451
  CreateDirectoryConfigResult.add_member(:directory_config, Shapes::ShapeRef.new(shape: DirectoryConfig, location_name: "DirectoryConfig"))
@@ -759,6 +766,7 @@ module Aws::AppStream
759
766
  DirectoryConfig.add_member(:organizational_unit_distinguished_names, Shapes::ShapeRef.new(shape: OrganizationalUnitDistinguishedNamesList, location_name: "OrganizationalUnitDistinguishedNames"))
760
767
  DirectoryConfig.add_member(:service_account_credentials, Shapes::ShapeRef.new(shape: ServiceAccountCredentials, location_name: "ServiceAccountCredentials"))
761
768
  DirectoryConfig.add_member(:created_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreatedTime"))
769
+ DirectoryConfig.add_member(:certificate_based_auth_properties, Shapes::ShapeRef.new(shape: CertificateBasedAuthProperties, location_name: "CertificateBasedAuthProperties"))
762
770
  DirectoryConfig.struct_class = Types::DirectoryConfig
763
771
 
764
772
  DirectoryConfigList.member = Shapes::ShapeRef.new(shape: DirectoryConfig)
@@ -1150,6 +1158,7 @@ module Aws::AppStream
1150
1158
  UpdateDirectoryConfigRequest.add_member(:directory_name, Shapes::ShapeRef.new(shape: DirectoryName, required: true, location_name: "DirectoryName"))
1151
1159
  UpdateDirectoryConfigRequest.add_member(:organizational_unit_distinguished_names, Shapes::ShapeRef.new(shape: OrganizationalUnitDistinguishedNamesList, location_name: "OrganizationalUnitDistinguishedNames"))
1152
1160
  UpdateDirectoryConfigRequest.add_member(:service_account_credentials, Shapes::ShapeRef.new(shape: ServiceAccountCredentials, location_name: "ServiceAccountCredentials"))
1161
+ UpdateDirectoryConfigRequest.add_member(:certificate_based_auth_properties, Shapes::ShapeRef.new(shape: CertificateBasedAuthProperties, location_name: "CertificateBasedAuthProperties"))
1153
1162
  UpdateDirectoryConfigRequest.struct_class = Types::UpdateDirectoryConfigRequest
1154
1163
 
1155
1164
  UpdateDirectoryConfigResult.add_member(:directory_config, Shapes::ShapeRef.new(shape: DirectoryConfig, location_name: "DirectoryConfig"))
@@ -9,104 +9,43 @@
9
9
 
10
10
  module Aws::AppStream
11
11
  class EndpointProvider
12
- def initialize(rule_set = nil)
13
- @@rule_set ||= begin
14
- endpoint_rules = Aws::Json.load(Base64.decode64(RULES))
15
- Aws::Endpoints::RuleSet.new(
16
- version: endpoint_rules['version'],
17
- service_id: endpoint_rules['serviceId'],
18
- parameters: endpoint_rules['parameters'],
19
- rules: endpoint_rules['rules']
20
- )
12
+ def resolve_endpoint(parameters)
13
+ region = parameters.region
14
+ use_dual_stack = parameters.use_dual_stack
15
+ use_fips = parameters.use_fips
16
+ endpoint = parameters.endpoint
17
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
18
+ if Aws::Endpoints::Matchers.set?(endpoint) && (url = Aws::Endpoints::Matchers.parse_url(endpoint))
19
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
20
+ raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
21
+ end
22
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
23
+ raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
24
+ end
25
+ return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
26
+ end
27
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
28
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
29
+ return Aws::Endpoints::Endpoint.new(url: "https://appstream2-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
30
+ end
31
+ raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
32
+ end
33
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
34
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
35
+ return Aws::Endpoints::Endpoint.new(url: "https://appstream2-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
36
+ end
37
+ raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
38
+ end
39
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
40
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
41
+ return Aws::Endpoints::Endpoint.new(url: "https://appstream2.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
42
+ end
43
+ raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
44
+ end
45
+ return Aws::Endpoints::Endpoint.new(url: "https://appstream2.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
21
46
  end
22
- @provider = Aws::Endpoints::RulesProvider.new(rule_set || @@rule_set)
23
- end
47
+ raise ArgumentError, 'No endpoint could be resolved'
24
48
 
25
- def resolve_endpoint(parameters)
26
- @provider.resolve_endpoint(parameters)
27
49
  end
28
-
29
- # @api private
30
- RULES = <<-JSON
31
- eyJ2ZXJzaW9uIjoiMS4wIiwicGFyYW1ldGVycyI6eyJSZWdpb24iOnsiYnVp
32
- bHRJbiI6IkFXUzo6UmVnaW9uIiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1bWVu
33
- dGF0aW9uIjoiVGhlIEFXUyByZWdpb24gdXNlZCB0byBkaXNwYXRjaCB0aGUg
34
- cmVxdWVzdC4iLCJ0eXBlIjoiU3RyaW5nIn0sIlVzZUR1YWxTdGFjayI6eyJi
35
- dWlsdEluIjoiQVdTOjpVc2VEdWFsU3RhY2siLCJyZXF1aXJlZCI6dHJ1ZSwi
36
- ZGVmYXVsdCI6ZmFsc2UsImRvY3VtZW50YXRpb24iOiJXaGVuIHRydWUsIHVz
37
- ZSB0aGUgZHVhbC1zdGFjayBlbmRwb2ludC4gSWYgdGhlIGNvbmZpZ3VyZWQg
38
- ZW5kcG9pbnQgZG9lcyBub3Qgc3VwcG9ydCBkdWFsLXN0YWNrLCBkaXNwYXRj
39
- aGluZyB0aGUgcmVxdWVzdCBNQVkgcmV0dXJuIGFuIGVycm9yLiIsInR5cGUi
40
- OiJCb29sZWFuIn0sIlVzZUZJUFMiOnsiYnVpbHRJbiI6IkFXUzo6VXNlRklQ
41
- UyIsInJlcXVpcmVkIjp0cnVlLCJkZWZhdWx0IjpmYWxzZSwiZG9jdW1lbnRh
42
- dGlvbiI6IldoZW4gdHJ1ZSwgc2VuZCB0aGlzIHJlcXVlc3QgdG8gdGhlIEZJ
43
- UFMtY29tcGxpYW50IHJlZ2lvbmFsIGVuZHBvaW50LiBJZiB0aGUgY29uZmln
44
- dXJlZCBlbmRwb2ludCBkb2VzIG5vdCBoYXZlIGEgRklQUyBjb21wbGlhbnQg
45
- ZW5kcG9pbnQsIGRpc3BhdGNoaW5nIHRoZSByZXF1ZXN0IHdpbGwgcmV0dXJu
46
- IGFuIGVycm9yLiIsInR5cGUiOiJCb29sZWFuIn0sIkVuZHBvaW50Ijp7ImJ1
47
- aWx0SW4iOiJTREs6OkVuZHBvaW50IiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1
48
- bWVudGF0aW9uIjoiT3ZlcnJpZGUgdGhlIGVuZHBvaW50IHVzZWQgdG8gc2Vu
49
- ZCB0aGlzIHJlcXVlc3QiLCJ0eXBlIjoiU3RyaW5nIn19LCJydWxlcyI6W3si
50
- Y29uZGl0aW9ucyI6W3siZm4iOiJhd3MucGFydGl0aW9uIiwiYXJndiI6W3si
51
- cmVmIjoiUmVnaW9uIn1dLCJhc3NpZ24iOiJQYXJ0aXRpb25SZXN1bHQifV0s
52
- InR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoi
53
- aXNTZXQiLCJhcmd2IjpbeyJyZWYiOiJFbmRwb2ludCJ9XX0seyJmbiI6InBh
54
- cnNlVVJMIiwiYXJndiI6W3sicmVmIjoiRW5kcG9pbnQifV0sImFzc2lnbiI6
55
- InVybCJ9XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6
56
- W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQ
57
- UyJ9LHRydWVdfV0sImVycm9yIjoiSW52YWxpZCBDb25maWd1cmF0aW9uOiBG
58
- SVBTIGFuZCBjdXN0b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0
59
- eXBlIjoiZXJyb3IifSx7ImNvbmRpdGlvbnMiOltdLCJ0eXBlIjoidHJlZSIs
60
- InJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMi
61
- LCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJlcnJv
62
- ciI6IkludmFsaWQgQ29uZmlndXJhdGlvbjogRHVhbHN0YWNrIGFuZCBjdXN0
63
- b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0eXBlIjoiZXJyb3Ii
64
- fSx7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOnsicmVmIjoi
65
- RW5kcG9pbnQifSwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlw
66
- ZSI6ImVuZHBvaW50In1dfV19LHsiY29uZGl0aW9ucyI6W3siZm4iOiJib29s
67
- ZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQUyJ9LHRydWVdfSx7
68
- ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUR1YWxT
69
- dGFjayJ9LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRp
70
- dGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsi
71
- Zm4iOiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0
72
- In0sInN1cHBvcnRzRklQUyJdfV19LHsiZm4iOiJib29sZWFuRXF1YWxzIiwi
73
- YXJndiI6W3RydWUseyJmbiI6ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQ
74
- YXJ0aXRpb25SZXN1bHQifSwic3VwcG9ydHNEdWFsU3RhY2siXX1dfV0sInR5
75
- cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2lu
76
- dCI6eyJ1cmwiOiJodHRwczovL2FwcHN0cmVhbTItZmlwcy57UmVnaW9ufS57
77
- UGFydGl0aW9uUmVzdWx0I2R1YWxTdGFja0Ruc1N1ZmZpeH0iLCJwcm9wZXJ0
78
- aWVzIjp7fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQifV19LHsi
79
- Y29uZGl0aW9ucyI6W10sImVycm9yIjoiRklQUyBhbmQgRHVhbFN0YWNrIGFy
80
- ZSBlbmFibGVkLCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3VwcG9y
81
- dCBvbmUgb3IgYm90aCIsInR5cGUiOiJlcnJvciJ9XX0seyJjb25kaXRpb25z
82
- IjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJhcmd2IjpbeyJyZWYiOiJVc2VG
83
- SVBTIn0sdHJ1ZV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0
84
- aW9ucyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3RydWUseyJm
85
- biI6ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQYXJ0aXRpb25SZXN1bHQi
86
- fSwic3VwcG9ydHNGSVBTIl19XX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpb
87
- eyJjb25kaXRpb25zIjpbXSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29u
88
- ZGl0aW9ucyI6W10sImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vYXBwc3Ry
89
- ZWFtMi1maXBzLntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZG5zU3VmZml4
90
- fSIsInByb3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRw
91
- b2ludCJ9XX1dfSx7ImNvbmRpdGlvbnMiOltdLCJlcnJvciI6IkZJUFMgaXMg
92
- ZW5hYmxlZCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3VwcG9ydCBG
93
- SVBTIiwidHlwZSI6ImVycm9yIn1dfSx7ImNvbmRpdGlvbnMiOlt7ImZuIjoi
94
- Ym9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUR1YWxTdGFjayJ9
95
- LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMi
96
- Olt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsiZm4iOiJn
97
- ZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0In0sInN1
98
- cHBvcnRzRHVhbFN0YWNrIl19XX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpb
99
- eyJjb25kaXRpb25zIjpbXSwiZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6Ly9h
100
- cHBzdHJlYW0yLntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZHVhbFN0YWNr
101
- RG5zU3VmZml4fSIsInByb3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5
102
- cGUiOiJlbmRwb2ludCJ9XX0seyJjb25kaXRpb25zIjpbXSwiZXJyb3IiOiJE
103
- dWFsU3RhY2sgaXMgZW5hYmxlZCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBu
104
- b3Qgc3VwcG9ydCBEdWFsU3RhY2siLCJ0eXBlIjoiZXJyb3IifV19LHsiY29u
105
- ZGl0aW9ucyI6W10sImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vYXBwc3Ry
106
- ZWFtMi57UmVnaW9ufS57UGFydGl0aW9uUmVzdWx0I2Ruc1N1ZmZpeH0iLCJw
107
- cm9wZXJ0aWVzIjp7fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQi
108
- fV19XX0=
109
-
110
- JSON
111
50
  end
112
51
  end