aws-sdk-appsync 1.41.0 → 1.42.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: 5f6abeafdc0788ba74469d684352e3365ba6c6c073550f6ebb48d1f042629bd5
4
- data.tar.gz: fdc01d2c263bbb1b45e97239afde2329b6e347ac1ad46b89419a8e4d23a13dab
3
+ metadata.gz: c554d8adc76f4dcad2a03cb7bd5ba7919eb9b33e6d27e275f059ae1a9082cf8d
4
+ data.tar.gz: ce39aed5d5b55c267915cef9d0c4e84d6db67ed1c4fb8b791aa668915ad1a183
5
5
  SHA512:
6
- metadata.gz: 61ee7f64b76a109ce086b3fbb8c4d347b81f65a3faf907100b74b4f765cc5090bc1a3bc00af8deb85cc4feec9eafe9aa2c506ed5388505104bace9e391cf9d98
7
- data.tar.gz: c27a29b5a52642991081523a708695a707f4bca60b0a3c4d3dfbb7119cc53a50d175ca0a5289b3631e035e62fccada189377166da2248e4279fcf14e70cfecdc
6
+ metadata.gz: 92e9f5bb8eb3f227e189a26c01bceb17721d920624e87128c74cb73eaaee3c69e8ef3dcc70635dc73c4a7f6f1dc2a6cb7e912eebe092101fe77fbae29c29cd97
7
+ data.tar.gz: 2f88c2604a5ebd3391e18450a586929cb4a09e69a8e8b7a9b83920b42bb6c7fdf84eb984702d9f7fc2d9a6a688281d29fa28a67c33861662f032df881b2f57cb
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.42.0 (2021-07-30)
5
+ ------------------
6
+
7
+ * Feature - AWS AppSync now supports a new authorization mode allowing you to define your own authorization logic using an AWS Lambda function.
8
+
4
9
  1.41.0 (2021-07-28)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.41.0
1
+ 1.42.0
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-appsync/customizations'
48
48
  # @!group service
49
49
  module Aws::AppSync
50
50
 
51
- GEM_VERSION = '1.41.0'
51
+ GEM_VERSION = '1.42.0'
52
52
 
53
53
  end
@@ -484,14 +484,14 @@ module Aws::AppSync
484
484
  # The type of the `DataSource`.
485
485
  #
486
486
  # @option params [String] :service_role_arn
487
- # The AWS IAM service role ARN for the data source. The system assumes
488
- # this role when accessing the data source.
487
+ # The Identity and Access Management service role ARN for the data
488
+ # source. The system assumes this role when accessing the data source.
489
489
  #
490
490
  # @option params [Types::DynamodbDataSourceConfig] :dynamodb_config
491
491
  # Amazon DynamoDB settings.
492
492
  #
493
493
  # @option params [Types::LambdaDataSourceConfig] :lambda_config
494
- # AWS Lambda settings.
494
+ # Amazon Web Services Lambda settings.
495
495
  #
496
496
  # @option params [Types::ElasticsearchDataSourceConfig] :elasticsearch_config
497
497
  # Amazon Elasticsearch Service settings.
@@ -680,8 +680,8 @@ module Aws::AppSync
680
680
  # The Amazon CloudWatch Logs configuration.
681
681
  #
682
682
  # @option params [required, String] :authentication_type
683
- # The authentication type: API key, AWS IAM, OIDC, or Amazon Cognito
684
- # user pools.
683
+ # The authentication type: API key, Identity and Access Management,
684
+ # OIDC, or Amazon Cognito user pools.
685
685
  #
686
686
  # @option params [Types::UserPoolConfig] :user_pool_config
687
687
  # The Amazon Cognito user pool configuration.
@@ -700,6 +700,9 @@ module Aws::AppSync
700
700
  # A flag indicating whether to enable X-Ray tracing for the
701
701
  # `GraphqlApi`.
702
702
  #
703
+ # @option params [Types::LambdaAuthorizerConfig] :lambda_authorizer_config
704
+ # Configuration for AWS Lambda function authorization.
705
+ #
703
706
  # @return [Types::CreateGraphqlApiResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
704
707
  #
705
708
  # * {Types::CreateGraphqlApiResponse#graphql_api #graphql_api} => Types::GraphqlApi
@@ -713,7 +716,7 @@ module Aws::AppSync
713
716
  # cloud_watch_logs_role_arn: "String", # required
714
717
  # exclude_verbose_content: false,
715
718
  # },
716
- # authentication_type: "API_KEY", # required, accepts API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT
719
+ # authentication_type: "API_KEY", # required, accepts API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT, AWS_LAMBDA
717
720
  # user_pool_config: {
718
721
  # user_pool_id: "String", # required
719
722
  # aws_region: "String", # required
@@ -731,7 +734,7 @@ module Aws::AppSync
731
734
  # },
732
735
  # additional_authentication_providers: [
733
736
  # {
734
- # authentication_type: "API_KEY", # accepts API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT
737
+ # authentication_type: "API_KEY", # accepts API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT, AWS_LAMBDA
735
738
  # open_id_connect_config: {
736
739
  # issuer: "String", # required
737
740
  # client_id: "String",
@@ -743,16 +746,26 @@ module Aws::AppSync
743
746
  # aws_region: "String", # required
744
747
  # app_id_client_regex: "String",
745
748
  # },
749
+ # lambda_authorizer_config: {
750
+ # authorizer_result_ttl_in_seconds: 1,
751
+ # authorizer_uri: "String", # required
752
+ # identity_validation_expression: "String",
753
+ # },
746
754
  # },
747
755
  # ],
748
756
  # xray_enabled: false,
757
+ # lambda_authorizer_config: {
758
+ # authorizer_result_ttl_in_seconds: 1,
759
+ # authorizer_uri: "String", # required
760
+ # identity_validation_expression: "String",
761
+ # },
749
762
  # })
750
763
  #
751
764
  # @example Response structure
752
765
  #
753
766
  # resp.graphql_api.name #=> String
754
767
  # resp.graphql_api.api_id #=> String
755
- # resp.graphql_api.authentication_type #=> String, one of "API_KEY", "AWS_IAM", "AMAZON_COGNITO_USER_POOLS", "OPENID_CONNECT"
768
+ # resp.graphql_api.authentication_type #=> String, one of "API_KEY", "AWS_IAM", "AMAZON_COGNITO_USER_POOLS", "OPENID_CONNECT", "AWS_LAMBDA"
756
769
  # resp.graphql_api.log_config.field_log_level #=> String, one of "NONE", "ERROR", "ALL"
757
770
  # resp.graphql_api.log_config.cloud_watch_logs_role_arn #=> String
758
771
  # resp.graphql_api.log_config.exclude_verbose_content #=> Boolean
@@ -770,7 +783,7 @@ module Aws::AppSync
770
783
  # resp.graphql_api.tags #=> Hash
771
784
  # resp.graphql_api.tags["TagKey"] #=> String
772
785
  # resp.graphql_api.additional_authentication_providers #=> Array
773
- # resp.graphql_api.additional_authentication_providers[0].authentication_type #=> String, one of "API_KEY", "AWS_IAM", "AMAZON_COGNITO_USER_POOLS", "OPENID_CONNECT"
786
+ # resp.graphql_api.additional_authentication_providers[0].authentication_type #=> String, one of "API_KEY", "AWS_IAM", "AMAZON_COGNITO_USER_POOLS", "OPENID_CONNECT", "AWS_LAMBDA"
774
787
  # resp.graphql_api.additional_authentication_providers[0].open_id_connect_config.issuer #=> String
775
788
  # resp.graphql_api.additional_authentication_providers[0].open_id_connect_config.client_id #=> String
776
789
  # resp.graphql_api.additional_authentication_providers[0].open_id_connect_config.iat_ttl #=> Integer
@@ -778,8 +791,14 @@ module Aws::AppSync
778
791
  # resp.graphql_api.additional_authentication_providers[0].user_pool_config.user_pool_id #=> String
779
792
  # resp.graphql_api.additional_authentication_providers[0].user_pool_config.aws_region #=> String
780
793
  # resp.graphql_api.additional_authentication_providers[0].user_pool_config.app_id_client_regex #=> String
794
+ # resp.graphql_api.additional_authentication_providers[0].lambda_authorizer_config.authorizer_result_ttl_in_seconds #=> Integer
795
+ # resp.graphql_api.additional_authentication_providers[0].lambda_authorizer_config.authorizer_uri #=> String
796
+ # resp.graphql_api.additional_authentication_providers[0].lambda_authorizer_config.identity_validation_expression #=> String
781
797
  # resp.graphql_api.xray_enabled #=> Boolean
782
798
  # resp.graphql_api.waf_web_acl_arn #=> String
799
+ # resp.graphql_api.lambda_authorizer_config.authorizer_result_ttl_in_seconds #=> Integer
800
+ # resp.graphql_api.lambda_authorizer_config.authorizer_uri #=> String
801
+ # resp.graphql_api.lambda_authorizer_config.identity_validation_expression #=> String
783
802
  #
784
803
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateGraphqlApi AWS API Documentation
785
804
  #
@@ -1296,7 +1315,7 @@ module Aws::AppSync
1296
1315
  #
1297
1316
  # resp.graphql_api.name #=> String
1298
1317
  # resp.graphql_api.api_id #=> String
1299
- # resp.graphql_api.authentication_type #=> String, one of "API_KEY", "AWS_IAM", "AMAZON_COGNITO_USER_POOLS", "OPENID_CONNECT"
1318
+ # resp.graphql_api.authentication_type #=> String, one of "API_KEY", "AWS_IAM", "AMAZON_COGNITO_USER_POOLS", "OPENID_CONNECT", "AWS_LAMBDA"
1300
1319
  # resp.graphql_api.log_config.field_log_level #=> String, one of "NONE", "ERROR", "ALL"
1301
1320
  # resp.graphql_api.log_config.cloud_watch_logs_role_arn #=> String
1302
1321
  # resp.graphql_api.log_config.exclude_verbose_content #=> Boolean
@@ -1314,7 +1333,7 @@ module Aws::AppSync
1314
1333
  # resp.graphql_api.tags #=> Hash
1315
1334
  # resp.graphql_api.tags["TagKey"] #=> String
1316
1335
  # resp.graphql_api.additional_authentication_providers #=> Array
1317
- # resp.graphql_api.additional_authentication_providers[0].authentication_type #=> String, one of "API_KEY", "AWS_IAM", "AMAZON_COGNITO_USER_POOLS", "OPENID_CONNECT"
1336
+ # resp.graphql_api.additional_authentication_providers[0].authentication_type #=> String, one of "API_KEY", "AWS_IAM", "AMAZON_COGNITO_USER_POOLS", "OPENID_CONNECT", "AWS_LAMBDA"
1318
1337
  # resp.graphql_api.additional_authentication_providers[0].open_id_connect_config.issuer #=> String
1319
1338
  # resp.graphql_api.additional_authentication_providers[0].open_id_connect_config.client_id #=> String
1320
1339
  # resp.graphql_api.additional_authentication_providers[0].open_id_connect_config.iat_ttl #=> Integer
@@ -1322,8 +1341,14 @@ module Aws::AppSync
1322
1341
  # resp.graphql_api.additional_authentication_providers[0].user_pool_config.user_pool_id #=> String
1323
1342
  # resp.graphql_api.additional_authentication_providers[0].user_pool_config.aws_region #=> String
1324
1343
  # resp.graphql_api.additional_authentication_providers[0].user_pool_config.app_id_client_regex #=> String
1344
+ # resp.graphql_api.additional_authentication_providers[0].lambda_authorizer_config.authorizer_result_ttl_in_seconds #=> Integer
1345
+ # resp.graphql_api.additional_authentication_providers[0].lambda_authorizer_config.authorizer_uri #=> String
1346
+ # resp.graphql_api.additional_authentication_providers[0].lambda_authorizer_config.identity_validation_expression #=> String
1325
1347
  # resp.graphql_api.xray_enabled #=> Boolean
1326
1348
  # resp.graphql_api.waf_web_acl_arn #=> String
1349
+ # resp.graphql_api.lambda_authorizer_config.authorizer_result_ttl_in_seconds #=> Integer
1350
+ # resp.graphql_api.lambda_authorizer_config.authorizer_uri #=> String
1351
+ # resp.graphql_api.lambda_authorizer_config.identity_validation_expression #=> String
1327
1352
  #
1328
1353
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetGraphqlApi AWS API Documentation
1329
1354
  #
@@ -1685,7 +1710,7 @@ module Aws::AppSync
1685
1710
  # resp.graphql_apis #=> Array
1686
1711
  # resp.graphql_apis[0].name #=> String
1687
1712
  # resp.graphql_apis[0].api_id #=> String
1688
- # resp.graphql_apis[0].authentication_type #=> String, one of "API_KEY", "AWS_IAM", "AMAZON_COGNITO_USER_POOLS", "OPENID_CONNECT"
1713
+ # resp.graphql_apis[0].authentication_type #=> String, one of "API_KEY", "AWS_IAM", "AMAZON_COGNITO_USER_POOLS", "OPENID_CONNECT", "AWS_LAMBDA"
1689
1714
  # resp.graphql_apis[0].log_config.field_log_level #=> String, one of "NONE", "ERROR", "ALL"
1690
1715
  # resp.graphql_apis[0].log_config.cloud_watch_logs_role_arn #=> String
1691
1716
  # resp.graphql_apis[0].log_config.exclude_verbose_content #=> Boolean
@@ -1703,7 +1728,7 @@ module Aws::AppSync
1703
1728
  # resp.graphql_apis[0].tags #=> Hash
1704
1729
  # resp.graphql_apis[0].tags["TagKey"] #=> String
1705
1730
  # resp.graphql_apis[0].additional_authentication_providers #=> Array
1706
- # resp.graphql_apis[0].additional_authentication_providers[0].authentication_type #=> String, one of "API_KEY", "AWS_IAM", "AMAZON_COGNITO_USER_POOLS", "OPENID_CONNECT"
1731
+ # resp.graphql_apis[0].additional_authentication_providers[0].authentication_type #=> String, one of "API_KEY", "AWS_IAM", "AMAZON_COGNITO_USER_POOLS", "OPENID_CONNECT", "AWS_LAMBDA"
1707
1732
  # resp.graphql_apis[0].additional_authentication_providers[0].open_id_connect_config.issuer #=> String
1708
1733
  # resp.graphql_apis[0].additional_authentication_providers[0].open_id_connect_config.client_id #=> String
1709
1734
  # resp.graphql_apis[0].additional_authentication_providers[0].open_id_connect_config.iat_ttl #=> Integer
@@ -1711,8 +1736,14 @@ module Aws::AppSync
1711
1736
  # resp.graphql_apis[0].additional_authentication_providers[0].user_pool_config.user_pool_id #=> String
1712
1737
  # resp.graphql_apis[0].additional_authentication_providers[0].user_pool_config.aws_region #=> String
1713
1738
  # resp.graphql_apis[0].additional_authentication_providers[0].user_pool_config.app_id_client_regex #=> String
1739
+ # resp.graphql_apis[0].additional_authentication_providers[0].lambda_authorizer_config.authorizer_result_ttl_in_seconds #=> Integer
1740
+ # resp.graphql_apis[0].additional_authentication_providers[0].lambda_authorizer_config.authorizer_uri #=> String
1741
+ # resp.graphql_apis[0].additional_authentication_providers[0].lambda_authorizer_config.identity_validation_expression #=> String
1714
1742
  # resp.graphql_apis[0].xray_enabled #=> Boolean
1715
1743
  # resp.graphql_apis[0].waf_web_acl_arn #=> String
1744
+ # resp.graphql_apis[0].lambda_authorizer_config.authorizer_result_ttl_in_seconds #=> Integer
1745
+ # resp.graphql_apis[0].lambda_authorizer_config.authorizer_uri #=> String
1746
+ # resp.graphql_apis[0].lambda_authorizer_config.identity_validation_expression #=> String
1716
1747
  # resp.next_token #=> String
1717
1748
  #
1718
1749
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListGraphqlApis AWS API Documentation
@@ -2163,7 +2194,7 @@ module Aws::AppSync
2163
2194
  # The new Amazon DynamoDB configuration.
2164
2195
  #
2165
2196
  # @option params [Types::LambdaDataSourceConfig] :lambda_config
2166
- # The new AWS Lambda configuration.
2197
+ # The new Amazon Web Services Lambda configuration.
2167
2198
  #
2168
2199
  # @option params [Types::ElasticsearchDataSourceConfig] :elasticsearch_config
2169
2200
  # The new Elasticsearch Service configuration.
@@ -2373,6 +2404,9 @@ module Aws::AppSync
2373
2404
  # A flag indicating whether to enable X-Ray tracing for the
2374
2405
  # `GraphqlApi`.
2375
2406
  #
2407
+ # @option params [Types::LambdaAuthorizerConfig] :lambda_authorizer_config
2408
+ # Configuration for AWS Lambda function authorization.
2409
+ #
2376
2410
  # @return [Types::UpdateGraphqlApiResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2377
2411
  #
2378
2412
  # * {Types::UpdateGraphqlApiResponse#graphql_api #graphql_api} => Types::GraphqlApi
@@ -2387,7 +2421,7 @@ module Aws::AppSync
2387
2421
  # cloud_watch_logs_role_arn: "String", # required
2388
2422
  # exclude_verbose_content: false,
2389
2423
  # },
2390
- # authentication_type: "API_KEY", # accepts API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT
2424
+ # authentication_type: "API_KEY", # accepts API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT, AWS_LAMBDA
2391
2425
  # user_pool_config: {
2392
2426
  # user_pool_id: "String", # required
2393
2427
  # aws_region: "String", # required
@@ -2402,7 +2436,7 @@ module Aws::AppSync
2402
2436
  # },
2403
2437
  # additional_authentication_providers: [
2404
2438
  # {
2405
- # authentication_type: "API_KEY", # accepts API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT
2439
+ # authentication_type: "API_KEY", # accepts API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT, AWS_LAMBDA
2406
2440
  # open_id_connect_config: {
2407
2441
  # issuer: "String", # required
2408
2442
  # client_id: "String",
@@ -2414,16 +2448,26 @@ module Aws::AppSync
2414
2448
  # aws_region: "String", # required
2415
2449
  # app_id_client_regex: "String",
2416
2450
  # },
2451
+ # lambda_authorizer_config: {
2452
+ # authorizer_result_ttl_in_seconds: 1,
2453
+ # authorizer_uri: "String", # required
2454
+ # identity_validation_expression: "String",
2455
+ # },
2417
2456
  # },
2418
2457
  # ],
2419
2458
  # xray_enabled: false,
2459
+ # lambda_authorizer_config: {
2460
+ # authorizer_result_ttl_in_seconds: 1,
2461
+ # authorizer_uri: "String", # required
2462
+ # identity_validation_expression: "String",
2463
+ # },
2420
2464
  # })
2421
2465
  #
2422
2466
  # @example Response structure
2423
2467
  #
2424
2468
  # resp.graphql_api.name #=> String
2425
2469
  # resp.graphql_api.api_id #=> String
2426
- # resp.graphql_api.authentication_type #=> String, one of "API_KEY", "AWS_IAM", "AMAZON_COGNITO_USER_POOLS", "OPENID_CONNECT"
2470
+ # resp.graphql_api.authentication_type #=> String, one of "API_KEY", "AWS_IAM", "AMAZON_COGNITO_USER_POOLS", "OPENID_CONNECT", "AWS_LAMBDA"
2427
2471
  # resp.graphql_api.log_config.field_log_level #=> String, one of "NONE", "ERROR", "ALL"
2428
2472
  # resp.graphql_api.log_config.cloud_watch_logs_role_arn #=> String
2429
2473
  # resp.graphql_api.log_config.exclude_verbose_content #=> Boolean
@@ -2441,7 +2485,7 @@ module Aws::AppSync
2441
2485
  # resp.graphql_api.tags #=> Hash
2442
2486
  # resp.graphql_api.tags["TagKey"] #=> String
2443
2487
  # resp.graphql_api.additional_authentication_providers #=> Array
2444
- # resp.graphql_api.additional_authentication_providers[0].authentication_type #=> String, one of "API_KEY", "AWS_IAM", "AMAZON_COGNITO_USER_POOLS", "OPENID_CONNECT"
2488
+ # resp.graphql_api.additional_authentication_providers[0].authentication_type #=> String, one of "API_KEY", "AWS_IAM", "AMAZON_COGNITO_USER_POOLS", "OPENID_CONNECT", "AWS_LAMBDA"
2445
2489
  # resp.graphql_api.additional_authentication_providers[0].open_id_connect_config.issuer #=> String
2446
2490
  # resp.graphql_api.additional_authentication_providers[0].open_id_connect_config.client_id #=> String
2447
2491
  # resp.graphql_api.additional_authentication_providers[0].open_id_connect_config.iat_ttl #=> Integer
@@ -2449,8 +2493,14 @@ module Aws::AppSync
2449
2493
  # resp.graphql_api.additional_authentication_providers[0].user_pool_config.user_pool_id #=> String
2450
2494
  # resp.graphql_api.additional_authentication_providers[0].user_pool_config.aws_region #=> String
2451
2495
  # resp.graphql_api.additional_authentication_providers[0].user_pool_config.app_id_client_regex #=> String
2496
+ # resp.graphql_api.additional_authentication_providers[0].lambda_authorizer_config.authorizer_result_ttl_in_seconds #=> Integer
2497
+ # resp.graphql_api.additional_authentication_providers[0].lambda_authorizer_config.authorizer_uri #=> String
2498
+ # resp.graphql_api.additional_authentication_providers[0].lambda_authorizer_config.identity_validation_expression #=> String
2452
2499
  # resp.graphql_api.xray_enabled #=> Boolean
2453
2500
  # resp.graphql_api.waf_web_acl_arn #=> String
2501
+ # resp.graphql_api.lambda_authorizer_config.authorizer_result_ttl_in_seconds #=> Integer
2502
+ # resp.graphql_api.lambda_authorizer_config.authorizer_uri #=> String
2503
+ # resp.graphql_api.lambda_authorizer_config.identity_validation_expression #=> String
2454
2504
  #
2455
2505
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateGraphqlApi AWS API Documentation
2456
2506
  #
@@ -2624,7 +2674,7 @@ module Aws::AppSync
2624
2674
  params: params,
2625
2675
  config: config)
2626
2676
  context[:gem_name] = 'aws-sdk-appsync'
2627
- context[:gem_version] = '1.41.0'
2677
+ context[:gem_version] = '1.42.0'
2628
2678
  Seahorse::Client::Request.new(handlers, context)
2629
2679
  end
2630
2680
 
@@ -102,6 +102,7 @@ module Aws::AppSync
102
102
  GraphqlApis = Shapes::ListShape.new(name: 'GraphqlApis')
103
103
  HttpDataSourceConfig = Shapes::StructureShape.new(name: 'HttpDataSourceConfig')
104
104
  InternalFailureException = Shapes::StructureShape.new(name: 'InternalFailureException')
105
+ LambdaAuthorizerConfig = Shapes::StructureShape.new(name: 'LambdaAuthorizerConfig')
105
106
  LambdaConflictHandlerConfig = Shapes::StructureShape.new(name: 'LambdaConflictHandlerConfig')
106
107
  LambdaDataSourceConfig = Shapes::StructureShape.new(name: 'LambdaDataSourceConfig')
107
108
  LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
@@ -144,6 +145,7 @@ module Aws::AppSync
144
145
  StartSchemaCreationResponse = Shapes::StructureShape.new(name: 'StartSchemaCreationResponse')
145
146
  String = Shapes::StringShape.new(name: 'String')
146
147
  SyncConfig = Shapes::StructureShape.new(name: 'SyncConfig')
148
+ TTL = Shapes::IntegerShape.new(name: 'TTL')
147
149
  TagKey = Shapes::StringShape.new(name: 'TagKey')
148
150
  TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
149
151
  TagMap = Shapes::MapShape.new(name: 'TagMap')
@@ -178,6 +180,7 @@ module Aws::AppSync
178
180
  AdditionalAuthenticationProvider.add_member(:authentication_type, Shapes::ShapeRef.new(shape: AuthenticationType, location_name: "authenticationType"))
179
181
  AdditionalAuthenticationProvider.add_member(:open_id_connect_config, Shapes::ShapeRef.new(shape: OpenIDConnectConfig, location_name: "openIDConnectConfig"))
180
182
  AdditionalAuthenticationProvider.add_member(:user_pool_config, Shapes::ShapeRef.new(shape: CognitoUserPoolConfig, location_name: "userPoolConfig"))
183
+ AdditionalAuthenticationProvider.add_member(:lambda_authorizer_config, Shapes::ShapeRef.new(shape: LambdaAuthorizerConfig, location_name: "lambdaAuthorizerConfig"))
181
184
  AdditionalAuthenticationProvider.struct_class = Types::AdditionalAuthenticationProvider
182
185
 
183
186
  AdditionalAuthenticationProviders.member = Shapes::ShapeRef.new(shape: AdditionalAuthenticationProvider)
@@ -287,6 +290,7 @@ module Aws::AppSync
287
290
  CreateGraphqlApiRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
288
291
  CreateGraphqlApiRequest.add_member(:additional_authentication_providers, Shapes::ShapeRef.new(shape: AdditionalAuthenticationProviders, location_name: "additionalAuthenticationProviders"))
289
292
  CreateGraphqlApiRequest.add_member(:xray_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "xrayEnabled"))
293
+ CreateGraphqlApiRequest.add_member(:lambda_authorizer_config, Shapes::ShapeRef.new(shape: LambdaAuthorizerConfig, location_name: "lambdaAuthorizerConfig"))
290
294
  CreateGraphqlApiRequest.struct_class = Types::CreateGraphqlApiRequest
291
295
 
292
296
  CreateGraphqlApiResponse.add_member(:graphql_api, Shapes::ShapeRef.new(shape: GraphqlApi, location_name: "graphqlApi"))
@@ -480,6 +484,7 @@ module Aws::AppSync
480
484
  GraphqlApi.add_member(:additional_authentication_providers, Shapes::ShapeRef.new(shape: AdditionalAuthenticationProviders, location_name: "additionalAuthenticationProviders"))
481
485
  GraphqlApi.add_member(:xray_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "xrayEnabled"))
482
486
  GraphqlApi.add_member(:waf_web_acl_arn, Shapes::ShapeRef.new(shape: String, location_name: "wafWebAclArn"))
487
+ GraphqlApi.add_member(:lambda_authorizer_config, Shapes::ShapeRef.new(shape: LambdaAuthorizerConfig, location_name: "lambdaAuthorizerConfig"))
483
488
  GraphqlApi.struct_class = Types::GraphqlApi
484
489
 
485
490
  GraphqlApis.member = Shapes::ShapeRef.new(shape: GraphqlApi)
@@ -491,6 +496,11 @@ module Aws::AppSync
491
496
  InternalFailureException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
492
497
  InternalFailureException.struct_class = Types::InternalFailureException
493
498
 
499
+ LambdaAuthorizerConfig.add_member(:authorizer_result_ttl_in_seconds, Shapes::ShapeRef.new(shape: TTL, location_name: "authorizerResultTtlInSeconds"))
500
+ LambdaAuthorizerConfig.add_member(:authorizer_uri, Shapes::ShapeRef.new(shape: String, required: true, location_name: "authorizerUri"))
501
+ LambdaAuthorizerConfig.add_member(:identity_validation_expression, Shapes::ShapeRef.new(shape: String, location_name: "identityValidationExpression"))
502
+ LambdaAuthorizerConfig.struct_class = Types::LambdaAuthorizerConfig
503
+
494
504
  LambdaConflictHandlerConfig.add_member(:lambda_conflict_handler_arn, Shapes::ShapeRef.new(shape: String, location_name: "lambdaConflictHandlerArn"))
495
505
  LambdaConflictHandlerConfig.struct_class = Types::LambdaConflictHandlerConfig
496
506
 
@@ -712,6 +722,7 @@ module Aws::AppSync
712
722
  UpdateGraphqlApiRequest.add_member(:open_id_connect_config, Shapes::ShapeRef.new(shape: OpenIDConnectConfig, location_name: "openIDConnectConfig"))
713
723
  UpdateGraphqlApiRequest.add_member(:additional_authentication_providers, Shapes::ShapeRef.new(shape: AdditionalAuthenticationProviders, location_name: "additionalAuthenticationProviders"))
714
724
  UpdateGraphqlApiRequest.add_member(:xray_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "xrayEnabled"))
725
+ UpdateGraphqlApiRequest.add_member(:lambda_authorizer_config, Shapes::ShapeRef.new(shape: LambdaAuthorizerConfig, location_name: "lambdaAuthorizerConfig"))
715
726
  UpdateGraphqlApiRequest.struct_class = Types::UpdateGraphqlApiRequest
716
727
 
717
728
  UpdateGraphqlApiResponse.add_member(:graphql_api, Shapes::ShapeRef.new(shape: GraphqlApi, location_name: "graphqlApi"))
@@ -29,7 +29,7 @@ module Aws::AppSync
29
29
  # data as a hash:
30
30
  #
31
31
  # {
32
- # authentication_type: "API_KEY", # accepts API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT
32
+ # authentication_type: "API_KEY", # accepts API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT, AWS_LAMBDA
33
33
  # open_id_connect_config: {
34
34
  # issuer: "String", # required
35
35
  # client_id: "String",
@@ -41,11 +41,16 @@ module Aws::AppSync
41
41
  # aws_region: "String", # required
42
42
  # app_id_client_regex: "String",
43
43
  # },
44
+ # lambda_authorizer_config: {
45
+ # authorizer_result_ttl_in_seconds: 1,
46
+ # authorizer_uri: "String", # required
47
+ # identity_validation_expression: "String",
48
+ # },
44
49
  # }
45
50
  #
46
51
  # @!attribute [rw] authentication_type
47
- # The authentication type: API key, AWS IAM, OIDC, or Amazon Cognito
48
- # user pools.
52
+ # The authentication type: API key, Identity and Access Management,
53
+ # OIDC, or Amazon Cognito user pools.
49
54
  # @return [String]
50
55
  #
51
56
  # @!attribute [rw] open_id_connect_config
@@ -56,12 +61,17 @@ module Aws::AppSync
56
61
  # The Amazon Cognito user pool configuration.
57
62
  # @return [Types::CognitoUserPoolConfig]
58
63
  #
64
+ # @!attribute [rw] lambda_authorizer_config
65
+ # Configuration for AWS Lambda function authorization.
66
+ # @return [Types::LambdaAuthorizerConfig]
67
+ #
59
68
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/AdditionalAuthenticationProvider AWS API Documentation
60
69
  #
61
70
  class AdditionalAuthenticationProvider < Struct.new(
62
71
  :authentication_type,
63
72
  :open_id_connect_config,
64
- :user_pool_config)
73
+ :user_pool_config,
74
+ :lambda_authorizer_config)
65
75
  SENSITIVE = []
66
76
  include Aws::Structure
67
77
  end
@@ -163,8 +173,8 @@ module Aws::AppSync
163
173
 
164
174
  # Describes an API key.
165
175
  #
166
- # Customers invoke AWS AppSync GraphQL API operations with API keys as
167
- # an identity mechanism. There are two key versions:
176
+ # Customers invoke AppSync GraphQL API operations with API keys as an
177
+ # identity mechanism. There are two key versions:
168
178
  #
169
179
  # **da1**\: This version was introduced at launch in November 2017.
170
180
  # These keys always expire after 7 days. Key expiration is managed by
@@ -301,7 +311,7 @@ module Aws::AppSync
301
311
  # @return [String]
302
312
  #
303
313
  # @!attribute [rw] aws_iam_config
304
- # The AWS IAM settings.
314
+ # The Identity and Access Management settings.
305
315
  # @return [Types::AwsIamConfig]
306
316
  #
307
317
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/AuthorizationConfig AWS API Documentation
@@ -313,7 +323,7 @@ module Aws::AppSync
313
323
  include Aws::Structure
314
324
  end
315
325
 
316
- # The AWS IAM configuration.
326
+ # The Identity and Access Management configuration.
317
327
  #
318
328
  # @note When making an API call, you may pass AwsIamConfig
319
329
  # data as a hash:
@@ -324,11 +334,12 @@ module Aws::AppSync
324
334
  # }
325
335
  #
326
336
  # @!attribute [rw] signing_region
327
- # The signing region for AWS IAM authorization.
337
+ # The signing region for Identity and Access Management authorization.
328
338
  # @return [String]
329
339
  #
330
340
  # @!attribute [rw] signing_service_name
331
- # The signing service name for AWS IAM authorization.
341
+ # The signing service name for Identity and Access Management
342
+ # authorization.
332
343
  # @return [String]
333
344
  #
334
345
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/AwsIamConfig AWS API Documentation
@@ -402,7 +413,7 @@ module Aws::AppSync
402
413
  # @return [String]
403
414
  #
404
415
  # @!attribute [rw] aws_region
405
- # The AWS Region in which the user pool was created.
416
+ # The Amazon Web Services Region in which the user pool was created.
406
417
  # @return [String]
407
418
  #
408
419
  # @!attribute [rw] app_id_client_regex
@@ -657,8 +668,8 @@ module Aws::AppSync
657
668
  # @return [String]
658
669
  #
659
670
  # @!attribute [rw] service_role_arn
660
- # The AWS IAM service role ARN for the data source. The system assumes
661
- # this role when accessing the data source.
671
+ # The Identity and Access Management service role ARN for the data
672
+ # source. The system assumes this role when accessing the data source.
662
673
  # @return [String]
663
674
  #
664
675
  # @!attribute [rw] dynamodb_config
@@ -666,7 +677,7 @@ module Aws::AppSync
666
677
  # @return [Types::DynamodbDataSourceConfig]
667
678
  #
668
679
  # @!attribute [rw] lambda_config
669
- # AWS Lambda settings.
680
+ # Amazon Web Services Lambda settings.
670
681
  # @return [Types::LambdaDataSourceConfig]
671
682
  #
672
683
  # @!attribute [rw] elasticsearch_config
@@ -805,7 +816,7 @@ module Aws::AppSync
805
816
  # cloud_watch_logs_role_arn: "String", # required
806
817
  # exclude_verbose_content: false,
807
818
  # },
808
- # authentication_type: "API_KEY", # required, accepts API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT
819
+ # authentication_type: "API_KEY", # required, accepts API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT, AWS_LAMBDA
809
820
  # user_pool_config: {
810
821
  # user_pool_id: "String", # required
811
822
  # aws_region: "String", # required
@@ -823,7 +834,7 @@ module Aws::AppSync
823
834
  # },
824
835
  # additional_authentication_providers: [
825
836
  # {
826
- # authentication_type: "API_KEY", # accepts API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT
837
+ # authentication_type: "API_KEY", # accepts API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT, AWS_LAMBDA
827
838
  # open_id_connect_config: {
828
839
  # issuer: "String", # required
829
840
  # client_id: "String",
@@ -835,9 +846,19 @@ module Aws::AppSync
835
846
  # aws_region: "String", # required
836
847
  # app_id_client_regex: "String",
837
848
  # },
849
+ # lambda_authorizer_config: {
850
+ # authorizer_result_ttl_in_seconds: 1,
851
+ # authorizer_uri: "String", # required
852
+ # identity_validation_expression: "String",
853
+ # },
838
854
  # },
839
855
  # ],
840
856
  # xray_enabled: false,
857
+ # lambda_authorizer_config: {
858
+ # authorizer_result_ttl_in_seconds: 1,
859
+ # authorizer_uri: "String", # required
860
+ # identity_validation_expression: "String",
861
+ # },
841
862
  # }
842
863
  #
843
864
  # @!attribute [rw] name
@@ -849,8 +870,8 @@ module Aws::AppSync
849
870
  # @return [Types::LogConfig]
850
871
  #
851
872
  # @!attribute [rw] authentication_type
852
- # The authentication type: API key, AWS IAM, OIDC, or Amazon Cognito
853
- # user pools.
873
+ # The authentication type: API key, Identity and Access Management,
874
+ # OIDC, or Amazon Cognito user pools.
854
875
  # @return [String]
855
876
  #
856
877
  # @!attribute [rw] user_pool_config
@@ -875,6 +896,10 @@ module Aws::AppSync
875
896
  # `GraphqlApi`.
876
897
  # @return [Boolean]
877
898
  #
899
+ # @!attribute [rw] lambda_authorizer_config
900
+ # Configuration for AWS Lambda function authorization.
901
+ # @return [Types::LambdaAuthorizerConfig]
902
+ #
878
903
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateGraphqlApiRequest AWS API Documentation
879
904
  #
880
905
  class CreateGraphqlApiRequest < Struct.new(
@@ -885,7 +910,8 @@ module Aws::AppSync
885
910
  :open_id_connect_config,
886
911
  :tags,
887
912
  :additional_authentication_providers,
888
- :xray_enabled)
913
+ :xray_enabled,
914
+ :lambda_authorizer_config)
889
915
  SENSITIVE = []
890
916
  include Aws::Structure
891
917
  end
@@ -1088,7 +1114,8 @@ module Aws::AppSync
1088
1114
  # * **AMAZON\_ELASTICSEARCH**\: The data source is an Amazon
1089
1115
  # Elasticsearch Service domain.
1090
1116
  #
1091
- # * **AWS\_LAMBDA**\: The data source is an AWS Lambda function.
1117
+ # * **AWS\_LAMBDA**\: The data source is an Amazon Web Services Lambda
1118
+ # function.
1092
1119
  #
1093
1120
  # * **NONE**\: There is no data source. This type is used when you
1094
1121
  # wish to invoke a GraphQL operation without connecting to a data
@@ -1102,8 +1129,8 @@ module Aws::AppSync
1102
1129
  # @return [String]
1103
1130
  #
1104
1131
  # @!attribute [rw] service_role_arn
1105
- # The AWS IAM service role ARN for the data source. The system assumes
1106
- # this role when accessing the data source.
1132
+ # The Identity and Access Management service role ARN for the data
1133
+ # source. The system assumes this role when accessing the data source.
1107
1134
  # @return [String]
1108
1135
  #
1109
1136
  # @!attribute [rw] dynamodb_config
@@ -1111,7 +1138,7 @@ module Aws::AppSync
1111
1138
  # @return [Types::DynamodbDataSourceConfig]
1112
1139
  #
1113
1140
  # @!attribute [rw] lambda_config
1114
- # AWS Lambda settings.
1141
+ # Amazon Web Services Lambda settings.
1115
1142
  # @return [Types::LambdaDataSourceConfig]
1116
1143
  #
1117
1144
  # @!attribute [rw] elasticsearch_config
@@ -1400,7 +1427,7 @@ module Aws::AppSync
1400
1427
  # @return [String]
1401
1428
  #
1402
1429
  # @!attribute [rw] aws_region
1403
- # The AWS Region.
1430
+ # The Amazon Web Services Region.
1404
1431
  # @return [String]
1405
1432
  #
1406
1433
  # @!attribute [rw] use_caller_credentials
@@ -1443,7 +1470,7 @@ module Aws::AppSync
1443
1470
  # @return [String]
1444
1471
  #
1445
1472
  # @!attribute [rw] aws_region
1446
- # The AWS Region.
1473
+ # The Amazon Web Services Region.
1447
1474
  # @return [String]
1448
1475
  #
1449
1476
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ElasticsearchDataSourceConfig AWS API Documentation
@@ -1920,10 +1947,14 @@ module Aws::AppSync
1920
1947
  # @return [Boolean]
1921
1948
  #
1922
1949
  # @!attribute [rw] waf_web_acl_arn
1923
- # The ARN of the AWS Web Application Firewall (WAF) ACL associated
1924
- # with this `GraphqlApi`, if one exists.
1950
+ # The ARN of the WAF ACL associated with this `GraphqlApi`, if one
1951
+ # exists.
1925
1952
  # @return [String]
1926
1953
  #
1954
+ # @!attribute [rw] lambda_authorizer_config
1955
+ # Configuration for AWS Lambda function authorization.
1956
+ # @return [Types::LambdaAuthorizerConfig]
1957
+ #
1927
1958
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GraphqlApi AWS API Documentation
1928
1959
  #
1929
1960
  class GraphqlApi < Struct.new(
@@ -1938,7 +1969,8 @@ module Aws::AppSync
1938
1969
  :tags,
1939
1970
  :additional_authentication_providers,
1940
1971
  :xray_enabled,
1941
- :waf_web_acl_arn)
1972
+ :waf_web_acl_arn,
1973
+ :lambda_authorizer_config)
1942
1974
  SENSITIVE = []
1943
1975
  include Aws::Structure
1944
1976
  end
@@ -1962,8 +1994,8 @@ module Aws::AppSync
1962
1994
  # @!attribute [rw] endpoint
1963
1995
  # The HTTP URL endpoint. You can either specify the domain name or IP,
1964
1996
  # and port combination, and the URL scheme must be HTTP or HTTPS. If
1965
- # the port is not specified, AWS AppSync uses the default port 80 for
1966
- # the HTTP endpoint and port 443 for HTTPS endpoints.
1997
+ # the port is not specified, AppSync uses the default port 80 for the
1998
+ # HTTP endpoint and port 443 for HTTPS endpoints.
1967
1999
  # @return [String]
1968
2000
  #
1969
2001
  # @!attribute [rw] authorization_config
@@ -1980,7 +2012,7 @@ module Aws::AppSync
1980
2012
  include Aws::Structure
1981
2013
  end
1982
2014
 
1983
- # An internal AWS AppSync error occurred. Try your request again.
2015
+ # An internal AppSync error occurred. Try your request again.
1984
2016
  #
1985
2017
  # @!attribute [rw] message
1986
2018
  # @return [String]
@@ -1993,6 +2025,57 @@ module Aws::AppSync
1993
2025
  include Aws::Structure
1994
2026
  end
1995
2027
 
2028
+ # A `LambdaAuthorizerConfig` holds configuration on how to authorize
2029
+ # AppSync API access when using the `AWS_LAMBDA` authorizer mode. Be
2030
+ # aware that an AppSync API may have only one Lambda authorizer
2031
+ # configured at a time.
2032
+ #
2033
+ # @note When making an API call, you may pass LambdaAuthorizerConfig
2034
+ # data as a hash:
2035
+ #
2036
+ # {
2037
+ # authorizer_result_ttl_in_seconds: 1,
2038
+ # authorizer_uri: "String", # required
2039
+ # identity_validation_expression: "String",
2040
+ # }
2041
+ #
2042
+ # @!attribute [rw] authorizer_result_ttl_in_seconds
2043
+ # The number of seconds a response should be cached for. The default
2044
+ # is 5 minutes (300 seconds). The Lambda function can override this by
2045
+ # returning a `ttlOverride` key in its response. A value of 0 disables
2046
+ # caching of responses.
2047
+ # @return [Integer]
2048
+ #
2049
+ # @!attribute [rw] authorizer_uri
2050
+ # The ARN of the lambda function to be called for authorization. This
2051
+ # may be a standard Lambda ARN, a version ARN (`.../v3`) or alias ARN.
2052
+ #
2053
+ # *Note*\: This Lambda function must have the following resource-based
2054
+ # policy assigned to it. When configuring Lambda authorizers in the
2055
+ # Console, this is done for you. To do so with the AWS CLI, run the
2056
+ # following:
2057
+ #
2058
+ # `aws lambda add-permission --function-name
2059
+ # "arn:aws:lambda:us-east-2:111122223333:function:my-function"
2060
+ # --statement-id "appsync" --principal appsync.amazonaws.com --action
2061
+ # lambda:InvokeFunction`
2062
+ # @return [String]
2063
+ #
2064
+ # @!attribute [rw] identity_validation_expression
2065
+ # A regular expression for validation of tokens before the Lambda
2066
+ # Function is called.
2067
+ # @return [String]
2068
+ #
2069
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/LambdaAuthorizerConfig AWS API Documentation
2070
+ #
2071
+ class LambdaAuthorizerConfig < Struct.new(
2072
+ :authorizer_result_ttl_in_seconds,
2073
+ :authorizer_uri,
2074
+ :identity_validation_expression)
2075
+ SENSITIVE = []
2076
+ include Aws::Structure
2077
+ end
2078
+
1996
2079
  # The `LambdaConflictHandlerConfig` object when configuring LAMBDA as
1997
2080
  # the Conflict Handler.
1998
2081
  #
@@ -2015,7 +2098,7 @@ module Aws::AppSync
2015
2098
  include Aws::Structure
2016
2099
  end
2017
2100
 
2018
- # Describes an AWS Lambda data source configuration.
2101
+ # Describes an Amazon Web Services Lambda data source configuration.
2019
2102
  #
2020
2103
  # @note When making an API call, you may pass LambdaDataSourceConfig
2021
2104
  # data as a hash:
@@ -2486,7 +2569,7 @@ module Aws::AppSync
2486
2569
  # @return [String]
2487
2570
  #
2488
2571
  # @!attribute [rw] cloud_watch_logs_role_arn
2489
- # The service role that AWS AppSync will assume to publish to Amazon
2572
+ # The service role that AppSync will assume to publish to Amazon
2490
2573
  # CloudWatch logs in your account.
2491
2574
  # @return [String]
2492
2575
  #
@@ -2541,7 +2624,7 @@ module Aws::AppSync
2541
2624
  # The client identifier of the Relying party at the OpenID identity
2542
2625
  # provider. This identifier is typically obtained when the Relying
2543
2626
  # party is registered with the OpenID identity provider. You can
2544
- # specify a regular expression so the AWS AppSync can validate against
2627
+ # specify a regular expression so the AppSync can validate against
2545
2628
  # multiple client identifiers at a time.
2546
2629
  # @return [String]
2547
2630
  #
@@ -2601,7 +2684,7 @@ module Aws::AppSync
2601
2684
  # }
2602
2685
  #
2603
2686
  # @!attribute [rw] aws_region
2604
- # AWS Region for RDS HTTP endpoint.
2687
+ # Amazon Web Services Region for RDS HTTP endpoint.
2605
2688
  # @return [String]
2606
2689
  #
2607
2690
  # @!attribute [rw] db_cluster_identifier
@@ -2617,7 +2700,7 @@ module Aws::AppSync
2617
2700
  # @return [String]
2618
2701
  #
2619
2702
  # @!attribute [rw] aws_secret_store_arn
2620
- # AWS secret store ARN for database credentials.
2703
+ # Amazon Web Services secret store ARN for database credentials.
2621
2704
  # @return [String]
2622
2705
  #
2623
2706
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/RdsHttpEndpointConfig AWS API Documentation
@@ -3161,7 +3244,7 @@ module Aws::AppSync
3161
3244
  # @return [Types::DynamodbDataSourceConfig]
3162
3245
  #
3163
3246
  # @!attribute [rw] lambda_config
3164
- # The new AWS Lambda configuration.
3247
+ # The new Amazon Web Services Lambda configuration.
3165
3248
  # @return [Types::LambdaDataSourceConfig]
3166
3249
  #
3167
3250
  # @!attribute [rw] elasticsearch_config
@@ -3307,7 +3390,7 @@ module Aws::AppSync
3307
3390
  # cloud_watch_logs_role_arn: "String", # required
3308
3391
  # exclude_verbose_content: false,
3309
3392
  # },
3310
- # authentication_type: "API_KEY", # accepts API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT
3393
+ # authentication_type: "API_KEY", # accepts API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT, AWS_LAMBDA
3311
3394
  # user_pool_config: {
3312
3395
  # user_pool_id: "String", # required
3313
3396
  # aws_region: "String", # required
@@ -3322,7 +3405,7 @@ module Aws::AppSync
3322
3405
  # },
3323
3406
  # additional_authentication_providers: [
3324
3407
  # {
3325
- # authentication_type: "API_KEY", # accepts API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT
3408
+ # authentication_type: "API_KEY", # accepts API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT, AWS_LAMBDA
3326
3409
  # open_id_connect_config: {
3327
3410
  # issuer: "String", # required
3328
3411
  # client_id: "String",
@@ -3334,9 +3417,19 @@ module Aws::AppSync
3334
3417
  # aws_region: "String", # required
3335
3418
  # app_id_client_regex: "String",
3336
3419
  # },
3420
+ # lambda_authorizer_config: {
3421
+ # authorizer_result_ttl_in_seconds: 1,
3422
+ # authorizer_uri: "String", # required
3423
+ # identity_validation_expression: "String",
3424
+ # },
3337
3425
  # },
3338
3426
  # ],
3339
3427
  # xray_enabled: false,
3428
+ # lambda_authorizer_config: {
3429
+ # authorizer_result_ttl_in_seconds: 1,
3430
+ # authorizer_uri: "String", # required
3431
+ # identity_validation_expression: "String",
3432
+ # },
3340
3433
  # }
3341
3434
  #
3342
3435
  # @!attribute [rw] api_id
@@ -3375,6 +3468,10 @@ module Aws::AppSync
3375
3468
  # `GraphqlApi`.
3376
3469
  # @return [Boolean]
3377
3470
  #
3471
+ # @!attribute [rw] lambda_authorizer_config
3472
+ # Configuration for AWS Lambda function authorization.
3473
+ # @return [Types::LambdaAuthorizerConfig]
3474
+ #
3378
3475
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateGraphqlApiRequest AWS API Documentation
3379
3476
  #
3380
3477
  class UpdateGraphqlApiRequest < Struct.new(
@@ -3385,7 +3482,8 @@ module Aws::AppSync
3385
3482
  :user_pool_config,
3386
3483
  :open_id_connect_config,
3387
3484
  :additional_authentication_providers,
3388
- :xray_enabled)
3485
+ :xray_enabled,
3486
+ :lambda_authorizer_config)
3389
3487
  SENSITIVE = []
3390
3488
  include Aws::Structure
3391
3489
  end
@@ -3581,7 +3679,7 @@ module Aws::AppSync
3581
3679
  # @return [String]
3582
3680
  #
3583
3681
  # @!attribute [rw] aws_region
3584
- # The AWS Region in which the user pool was created.
3682
+ # The Amazon Web Services Region in which the user pool was created.
3585
3683
  # @return [String]
3586
3684
  #
3587
3685
  # @!attribute [rw] default_action
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-appsync
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.41.0
4
+ version: 1.42.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: 2021-07-28 00:00:00.000000000 Z
11
+ date: 2021-07-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.118.0
22
+ version: 3.119.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.118.0
32
+ version: 3.119.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement