aws-sdk-verifiedpermissions 1.17.0 → 1.19.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: 7b52c7f0f2d0fc36365fa7d6a442e98d0b4d8b0871756f162828120591adbb81
4
- data.tar.gz: 25bf1e568d51a4c6a0b6fbf9ac69601709e5b7f144361fd65de49aeb3c50a8e9
3
+ metadata.gz: 41ef019fc552dd6626faca87c604b2cd2cd0b13692e009f58e9de726acef3ef3
4
+ data.tar.gz: 76e66a78cfd4c1b5b5b74a38bddbaa1e2a189135e8f1946d903b3667fcb8fdf5
5
5
  SHA512:
6
- metadata.gz: 77b942c30fe485927fb5aa5de494fc1778a841541e4ae65cc20f373cbb41543f3788ee20cbc2a86b9efd666a0a99ad6121abdb93a04ccc8f6167dd2b5f6d2032
7
- data.tar.gz: e231e37a9348a4156382538ea5bc284ad6a37cc8892f61cdf89d67c11cdfd74ca6a835d3140b73db4863aeb8733107ae502c9a3b7716158b8c06ce6e5d02601d
6
+ metadata.gz: acaaa4a7d0b3f7e070f2c4698ca8a01d05eed0e24895a31986988b91e774c92dee3699be18d1b05715c57e9ccc5ae61c26affe541dc511885116b714105cfae7
7
+ data.tar.gz: 45e7982d0a52044b48edfd68082997fab982e3b5a236ac9aed1aaf4e0b84c86935fc32e5cf809ebec0403e4c0e559a59cb06eaba5919a6c0571cc4fa80b5f300
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.19.0 (2024-04-05)
5
+ ------------------
6
+
7
+ * Feature - Adding BatchIsAuthorizedWithToken API which supports multiple authorization requests against a PolicyStore given a bearer token.
8
+
9
+ 1.18.0 (2024-04-04)
10
+ ------------------
11
+
12
+ * Feature - Adds GroupConfiguration field to Identity Source API's
13
+
4
14
  1.17.0 (2024-03-06)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.17.0
1
+ 1.19.0
@@ -518,6 +518,152 @@ module Aws::VerifiedPermissions
518
518
  req.send_request(options)
519
519
  end
520
520
 
521
+ # Makes a series of decisions about multiple authorization requests for
522
+ # one token. The principal in this request comes from an external
523
+ # identity source in the form of an identity or access token, formatted
524
+ # as a [JSON web token (JWT)][1]. The information in the parameters can
525
+ # also define additional context that Verified Permissions can include
526
+ # in the evaluations.
527
+ #
528
+ # The request is evaluated against all policies in the specified policy
529
+ # store that match the entities that you provide in the entities
530
+ # declaration and in the token. The result of the decisions is a series
531
+ # of `Allow` or `Deny` responses, along with the IDs of the policies
532
+ # that produced each decision.
533
+ #
534
+ # The `entities` of a `BatchIsAuthorizedWithToken` API request can
535
+ # contain up to 100 resources and up to 99 user groups. The `requests`
536
+ # of a `BatchIsAuthorizedWithToken` API request can contain up to 30
537
+ # requests.
538
+ #
539
+ # <note markdown="1"> The `BatchIsAuthorizedWithToken` operation doesn't have its own IAM
540
+ # permission. To authorize this operation for Amazon Web Services
541
+ # principals, include the permission
542
+ # `verifiedpermissions:IsAuthorizedWithToken` in their IAM policies.
543
+ #
544
+ # </note>
545
+ #
546
+ #
547
+ #
548
+ # [1]: https://wikipedia.org/wiki/JSON_Web_Token
549
+ #
550
+ # @option params [required, String] :policy_store_id
551
+ # Specifies the ID of the policy store. Policies in this policy store
552
+ # will be used to make an authorization decision for the input.
553
+ #
554
+ # @option params [String] :identity_token
555
+ # Specifies an identity (ID) token for the principal that you want to
556
+ # authorize in each request. This token is provided to you by the
557
+ # identity provider (IdP) associated with the specified identity source.
558
+ # You must specify either an `accessToken`, an `identityToken`, or both.
559
+ #
560
+ # Must be an ID token. Verified Permissions returns an error if the
561
+ # `token_use` claim in the submitted token isn't `id`.
562
+ #
563
+ # @option params [String] :access_token
564
+ # Specifies an access token for the principal that you want to authorize
565
+ # in each request. This token is provided to you by the identity
566
+ # provider (IdP) associated with the specified identity source. You must
567
+ # specify either an `accessToken`, an `identityToken`, or both.
568
+ #
569
+ # Must be an access token. Verified Permissions returns an error if the
570
+ # `token_use` claim in the submitted token isn't `access`.
571
+ #
572
+ # @option params [Types::EntitiesDefinition] :entities
573
+ # Specifies the list of resources and their associated attributes that
574
+ # Verified Permissions can examine when evaluating the policies.
575
+ #
576
+ # You can't include principals in this parameter, only resource and
577
+ # action entities. This parameter can't include any entities of a type
578
+ # that matches the user or group entity types that you defined in your
579
+ # identity source.
580
+ #
581
+ # * The `BatchIsAuthorizedWithToken` operation takes principal
582
+ # attributes from <b> <i>only</i> </b> the `identityToken` or
583
+ # `accessToken` passed to the operation.
584
+ #
585
+ # * For action entities, you can include only their `Identifier` and
586
+ # `EntityType`.
587
+ #
588
+ # @option params [required, Array<Types::BatchIsAuthorizedWithTokenInputItem>] :requests
589
+ # An array of up to 30 requests that you want Verified Permissions to
590
+ # evaluate.
591
+ #
592
+ # @return [Types::BatchIsAuthorizedWithTokenOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
593
+ #
594
+ # * {Types::BatchIsAuthorizedWithTokenOutput#principal #principal} => Types::EntityIdentifier
595
+ # * {Types::BatchIsAuthorizedWithTokenOutput#results #results} => Array&lt;Types::BatchIsAuthorizedWithTokenOutputItem&gt;
596
+ #
597
+ # @example Request syntax with placeholder values
598
+ #
599
+ # resp = client.batch_is_authorized_with_token({
600
+ # policy_store_id: "PolicyStoreId", # required
601
+ # identity_token: "Token",
602
+ # access_token: "Token",
603
+ # entities: {
604
+ # entity_list: [
605
+ # {
606
+ # identifier: { # required
607
+ # entity_type: "EntityType", # required
608
+ # entity_id: "EntityId", # required
609
+ # },
610
+ # attributes: {
611
+ # "String" => "value", # value <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
612
+ # },
613
+ # parents: [
614
+ # {
615
+ # entity_type: "EntityType", # required
616
+ # entity_id: "EntityId", # required
617
+ # },
618
+ # ],
619
+ # },
620
+ # ],
621
+ # },
622
+ # requests: [ # required
623
+ # {
624
+ # action: {
625
+ # action_type: "ActionType", # required
626
+ # action_id: "ActionId", # required
627
+ # },
628
+ # resource: {
629
+ # entity_type: "EntityType", # required
630
+ # entity_id: "EntityId", # required
631
+ # },
632
+ # context: {
633
+ # context_map: {
634
+ # "String" => "value", # value <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
635
+ # },
636
+ # },
637
+ # },
638
+ # ],
639
+ # })
640
+ #
641
+ # @example Response structure
642
+ #
643
+ # resp.principal.entity_type #=> String
644
+ # resp.principal.entity_id #=> String
645
+ # resp.results #=> Array
646
+ # resp.results[0].request.action.action_type #=> String
647
+ # resp.results[0].request.action.action_id #=> String
648
+ # resp.results[0].request.resource.entity_type #=> String
649
+ # resp.results[0].request.resource.entity_id #=> String
650
+ # resp.results[0].request.context.context_map #=> Hash
651
+ # resp.results[0].request.context.context_map["String"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
652
+ # resp.results[0].decision #=> String, one of "ALLOW", "DENY"
653
+ # resp.results[0].determining_policies #=> Array
654
+ # resp.results[0].determining_policies[0].policy_id #=> String
655
+ # resp.results[0].errors #=> Array
656
+ # resp.results[0].errors[0].error_description #=> String
657
+ #
658
+ # @see http://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/BatchIsAuthorizedWithToken AWS API Documentation
659
+ #
660
+ # @overload batch_is_authorized_with_token(params = {})
661
+ # @param [Hash] params ({})
662
+ def batch_is_authorized_with_token(params = {}, options = {})
663
+ req = build_request(:batch_is_authorized_with_token, params)
664
+ req.send_request(options)
665
+ end
666
+
521
667
  # Creates a reference to an Amazon Cognito user pool as an external
522
668
  # identity provider (IdP).
523
669
  #
@@ -627,6 +773,9 @@ module Aws::VerifiedPermissions
627
773
  # cognito_user_pool_configuration: {
628
774
  # user_pool_arn: "UserPoolArn", # required
629
775
  # client_ids: ["ClientId"],
776
+ # group_configuration: {
777
+ # group_entity_type: "GroupEntityType", # required
778
+ # },
630
779
  # },
631
780
  # },
632
781
  # principal_entity_type: "PrincipalEntityType",
@@ -1117,6 +1266,7 @@ module Aws::VerifiedPermissions
1117
1266
  # resp.configuration.cognito_user_pool_configuration.client_ids #=> Array
1118
1267
  # resp.configuration.cognito_user_pool_configuration.client_ids[0] #=> String
1119
1268
  # resp.configuration.cognito_user_pool_configuration.issuer #=> String
1269
+ # resp.configuration.cognito_user_pool_configuration.group_configuration.group_entity_type #=> String
1120
1270
  #
1121
1271
  # @see http://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/GetIdentitySource AWS API Documentation
1122
1272
  #
@@ -1417,14 +1567,6 @@ module Aws::VerifiedPermissions
1417
1567
  # `Allow` or `Deny`, along with a list of the policies that resulted in
1418
1568
  # the decision.
1419
1569
  #
1420
- # If you specify the `identityToken` parameter, then this operation
1421
- # derives the principal from that token. You must not also include that
1422
- # principal in the `entities` parameter or the operation fails and
1423
- # reports a conflict between the two entity sources.
1424
- #
1425
- # If you provide only an `accessToken`, then you can include the entity
1426
- # as part of the `entities` parameter to provide additional attributes.
1427
- #
1428
1570
  # At this time, Verified Permissions accepts tokens from only Amazon
1429
1571
  # Cognito.
1430
1572
  #
@@ -1478,8 +1620,10 @@ module Aws::VerifiedPermissions
1478
1620
  # Specifies the list of resources and their associated attributes that
1479
1621
  # Verified Permissions can examine when evaluating the policies.
1480
1622
  #
1481
- # <note markdown="1"> You can include only resource and action entities in this parameter;
1482
- # you can't include principals.
1623
+ # You can't include principals in this parameter, only resource and
1624
+ # action entities. This parameter can't include any entities of a type
1625
+ # that matches the user or group entity types that you defined in your
1626
+ # identity source.
1483
1627
  #
1484
1628
  # * The `IsAuthorizedWithToken` operation takes principal attributes
1485
1629
  # from <b> <i>only</i> </b> the `identityToken` or `accessToken`
@@ -1488,13 +1632,12 @@ module Aws::VerifiedPermissions
1488
1632
  # * For action entities, you can include only their `Identifier` and
1489
1633
  # `EntityType`.
1490
1634
  #
1491
- # </note>
1492
- #
1493
1635
  # @return [Types::IsAuthorizedWithTokenOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1494
1636
  #
1495
1637
  # * {Types::IsAuthorizedWithTokenOutput#decision #decision} => String
1496
1638
  # * {Types::IsAuthorizedWithTokenOutput#determining_policies #determining_policies} => Array&lt;Types::DeterminingPolicyItem&gt;
1497
1639
  # * {Types::IsAuthorizedWithTokenOutput#errors #errors} => Array&lt;Types::EvaluationErrorItem&gt;
1640
+ # * {Types::IsAuthorizedWithTokenOutput#principal #principal} => Types::EntityIdentifier
1498
1641
  #
1499
1642
  # @example Request syntax with placeholder values
1500
1643
  #
@@ -1543,6 +1686,8 @@ module Aws::VerifiedPermissions
1543
1686
  # resp.determining_policies[0].policy_id #=> String
1544
1687
  # resp.errors #=> Array
1545
1688
  # resp.errors[0].error_description #=> String
1689
+ # resp.principal.entity_type #=> String
1690
+ # resp.principal.entity_id #=> String
1546
1691
  #
1547
1692
  # @see http://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/IsAuthorizedWithToken AWS API Documentation
1548
1693
  #
@@ -1623,6 +1768,7 @@ module Aws::VerifiedPermissions
1623
1768
  # resp.identity_sources[0].configuration.cognito_user_pool_configuration.client_ids #=> Array
1624
1769
  # resp.identity_sources[0].configuration.cognito_user_pool_configuration.client_ids[0] #=> String
1625
1770
  # resp.identity_sources[0].configuration.cognito_user_pool_configuration.issuer #=> String
1771
+ # resp.identity_sources[0].configuration.cognito_user_pool_configuration.group_configuration.group_entity_type #=> String
1626
1772
  #
1627
1773
  # @see http://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/ListIdentitySources AWS API Documentation
1628
1774
  #
@@ -1952,6 +2098,9 @@ module Aws::VerifiedPermissions
1952
2098
  # cognito_user_pool_configuration: {
1953
2099
  # user_pool_arn: "UserPoolArn", # required
1954
2100
  # client_ids: ["ClientId"],
2101
+ # group_configuration: {
2102
+ # group_entity_type: "GroupEntityType", # required
2103
+ # },
1955
2104
  # },
1956
2105
  # },
1957
2106
  # principal_entity_type: "PrincipalEntityType",
@@ -2245,7 +2394,7 @@ module Aws::VerifiedPermissions
2245
2394
  params: params,
2246
2395
  config: config)
2247
2396
  context[:gem_name] = 'aws-sdk-verifiedpermissions'
2248
- context[:gem_version] = '1.17.0'
2397
+ context[:gem_version] = '1.19.0'
2249
2398
  Seahorse::Client::Request.new(handlers, context)
2250
2399
  end
2251
2400
 
@@ -24,10 +24,19 @@ module Aws::VerifiedPermissions
24
24
  BatchIsAuthorizedOutput = Shapes::StructureShape.new(name: 'BatchIsAuthorizedOutput')
25
25
  BatchIsAuthorizedOutputItem = Shapes::StructureShape.new(name: 'BatchIsAuthorizedOutputItem')
26
26
  BatchIsAuthorizedOutputList = Shapes::ListShape.new(name: 'BatchIsAuthorizedOutputList')
27
+ BatchIsAuthorizedWithTokenInput = Shapes::StructureShape.new(name: 'BatchIsAuthorizedWithTokenInput')
28
+ BatchIsAuthorizedWithTokenInputItem = Shapes::StructureShape.new(name: 'BatchIsAuthorizedWithTokenInputItem')
29
+ BatchIsAuthorizedWithTokenInputList = Shapes::ListShape.new(name: 'BatchIsAuthorizedWithTokenInputList')
30
+ BatchIsAuthorizedWithTokenOutput = Shapes::StructureShape.new(name: 'BatchIsAuthorizedWithTokenOutput')
31
+ BatchIsAuthorizedWithTokenOutputItem = Shapes::StructureShape.new(name: 'BatchIsAuthorizedWithTokenOutputItem')
32
+ BatchIsAuthorizedWithTokenOutputList = Shapes::ListShape.new(name: 'BatchIsAuthorizedWithTokenOutputList')
27
33
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
28
34
  BooleanAttribute = Shapes::BooleanShape.new(name: 'BooleanAttribute')
29
35
  ClientId = Shapes::StringShape.new(name: 'ClientId')
30
36
  ClientIds = Shapes::ListShape.new(name: 'ClientIds')
37
+ CognitoGroupConfiguration = Shapes::StructureShape.new(name: 'CognitoGroupConfiguration')
38
+ CognitoGroupConfigurationDetail = Shapes::StructureShape.new(name: 'CognitoGroupConfigurationDetail')
39
+ CognitoGroupConfigurationItem = Shapes::StructureShape.new(name: 'CognitoGroupConfigurationItem')
31
40
  CognitoUserPoolConfiguration = Shapes::StructureShape.new(name: 'CognitoUserPoolConfiguration')
32
41
  CognitoUserPoolConfigurationDetail = Shapes::StructureShape.new(name: 'CognitoUserPoolConfigurationDetail')
33
42
  CognitoUserPoolConfigurationItem = Shapes::StructureShape.new(name: 'CognitoUserPoolConfigurationItem')
@@ -77,6 +86,7 @@ module Aws::VerifiedPermissions
77
86
  GetPolicyTemplateOutput = Shapes::StructureShape.new(name: 'GetPolicyTemplateOutput')
78
87
  GetSchemaInput = Shapes::StructureShape.new(name: 'GetSchemaInput')
79
88
  GetSchemaOutput = Shapes::StructureShape.new(name: 'GetSchemaOutput')
89
+ GroupEntityType = Shapes::StringShape.new(name: 'GroupEntityType')
80
90
  IdempotencyToken = Shapes::StringShape.new(name: 'IdempotencyToken')
81
91
  IdentitySourceDetails = Shapes::StructureShape.new(name: 'IdentitySourceDetails')
82
92
  IdentitySourceFilter = Shapes::StructureShape.new(name: 'IdentitySourceFilter')
@@ -149,6 +159,7 @@ module Aws::VerifiedPermissions
149
159
  ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
150
160
  TimestampFormat = Shapes::TimestampShape.new(name: 'TimestampFormat', timestampFormat: "iso8601")
151
161
  Token = Shapes::StringShape.new(name: 'Token')
162
+ UpdateCognitoGroupConfiguration = Shapes::StructureShape.new(name: 'UpdateCognitoGroupConfiguration')
152
163
  UpdateCognitoUserPoolConfiguration = Shapes::StructureShape.new(name: 'UpdateCognitoUserPoolConfiguration')
153
164
  UpdateConfiguration = Shapes::UnionShape.new(name: 'UpdateConfiguration')
154
165
  UpdateIdentitySourceInput = Shapes::StructureShape.new(name: 'UpdateIdentitySourceInput')
@@ -215,20 +226,58 @@ module Aws::VerifiedPermissions
215
226
 
216
227
  BatchIsAuthorizedOutputList.member = Shapes::ShapeRef.new(shape: BatchIsAuthorizedOutputItem)
217
228
 
229
+ BatchIsAuthorizedWithTokenInput.add_member(:policy_store_id, Shapes::ShapeRef.new(shape: PolicyStoreId, required: true, location_name: "policyStoreId"))
230
+ BatchIsAuthorizedWithTokenInput.add_member(:identity_token, Shapes::ShapeRef.new(shape: Token, location_name: "identityToken"))
231
+ BatchIsAuthorizedWithTokenInput.add_member(:access_token, Shapes::ShapeRef.new(shape: Token, location_name: "accessToken"))
232
+ BatchIsAuthorizedWithTokenInput.add_member(:entities, Shapes::ShapeRef.new(shape: EntitiesDefinition, location_name: "entities"))
233
+ BatchIsAuthorizedWithTokenInput.add_member(:requests, Shapes::ShapeRef.new(shape: BatchIsAuthorizedWithTokenInputList, required: true, location_name: "requests"))
234
+ BatchIsAuthorizedWithTokenInput.struct_class = Types::BatchIsAuthorizedWithTokenInput
235
+
236
+ BatchIsAuthorizedWithTokenInputItem.add_member(:action, Shapes::ShapeRef.new(shape: ActionIdentifier, location_name: "action"))
237
+ BatchIsAuthorizedWithTokenInputItem.add_member(:resource, Shapes::ShapeRef.new(shape: EntityIdentifier, location_name: "resource"))
238
+ BatchIsAuthorizedWithTokenInputItem.add_member(:context, Shapes::ShapeRef.new(shape: ContextDefinition, location_name: "context"))
239
+ BatchIsAuthorizedWithTokenInputItem.struct_class = Types::BatchIsAuthorizedWithTokenInputItem
240
+
241
+ BatchIsAuthorizedWithTokenInputList.member = Shapes::ShapeRef.new(shape: BatchIsAuthorizedWithTokenInputItem)
242
+
243
+ BatchIsAuthorizedWithTokenOutput.add_member(:principal, Shapes::ShapeRef.new(shape: EntityIdentifier, location_name: "principal"))
244
+ BatchIsAuthorizedWithTokenOutput.add_member(:results, Shapes::ShapeRef.new(shape: BatchIsAuthorizedWithTokenOutputList, required: true, location_name: "results"))
245
+ BatchIsAuthorizedWithTokenOutput.struct_class = Types::BatchIsAuthorizedWithTokenOutput
246
+
247
+ BatchIsAuthorizedWithTokenOutputItem.add_member(:request, Shapes::ShapeRef.new(shape: BatchIsAuthorizedWithTokenInputItem, required: true, location_name: "request"))
248
+ BatchIsAuthorizedWithTokenOutputItem.add_member(:decision, Shapes::ShapeRef.new(shape: Decision, required: true, location_name: "decision"))
249
+ BatchIsAuthorizedWithTokenOutputItem.add_member(:determining_policies, Shapes::ShapeRef.new(shape: DeterminingPolicyList, required: true, location_name: "determiningPolicies"))
250
+ BatchIsAuthorizedWithTokenOutputItem.add_member(:errors, Shapes::ShapeRef.new(shape: EvaluationErrorList, required: true, location_name: "errors"))
251
+ BatchIsAuthorizedWithTokenOutputItem.struct_class = Types::BatchIsAuthorizedWithTokenOutputItem
252
+
253
+ BatchIsAuthorizedWithTokenOutputList.member = Shapes::ShapeRef.new(shape: BatchIsAuthorizedWithTokenOutputItem)
254
+
218
255
  ClientIds.member = Shapes::ShapeRef.new(shape: ClientId)
219
256
 
257
+ CognitoGroupConfiguration.add_member(:group_entity_type, Shapes::ShapeRef.new(shape: GroupEntityType, required: true, location_name: "groupEntityType"))
258
+ CognitoGroupConfiguration.struct_class = Types::CognitoGroupConfiguration
259
+
260
+ CognitoGroupConfigurationDetail.add_member(:group_entity_type, Shapes::ShapeRef.new(shape: GroupEntityType, location_name: "groupEntityType"))
261
+ CognitoGroupConfigurationDetail.struct_class = Types::CognitoGroupConfigurationDetail
262
+
263
+ CognitoGroupConfigurationItem.add_member(:group_entity_type, Shapes::ShapeRef.new(shape: GroupEntityType, location_name: "groupEntityType"))
264
+ CognitoGroupConfigurationItem.struct_class = Types::CognitoGroupConfigurationItem
265
+
220
266
  CognitoUserPoolConfiguration.add_member(:user_pool_arn, Shapes::ShapeRef.new(shape: UserPoolArn, required: true, location_name: "userPoolArn"))
221
267
  CognitoUserPoolConfiguration.add_member(:client_ids, Shapes::ShapeRef.new(shape: ClientIds, location_name: "clientIds"))
268
+ CognitoUserPoolConfiguration.add_member(:group_configuration, Shapes::ShapeRef.new(shape: CognitoGroupConfiguration, location_name: "groupConfiguration"))
222
269
  CognitoUserPoolConfiguration.struct_class = Types::CognitoUserPoolConfiguration
223
270
 
224
271
  CognitoUserPoolConfigurationDetail.add_member(:user_pool_arn, Shapes::ShapeRef.new(shape: UserPoolArn, required: true, location_name: "userPoolArn"))
225
272
  CognitoUserPoolConfigurationDetail.add_member(:client_ids, Shapes::ShapeRef.new(shape: ClientIds, required: true, location_name: "clientIds"))
226
273
  CognitoUserPoolConfigurationDetail.add_member(:issuer, Shapes::ShapeRef.new(shape: Issuer, required: true, location_name: "issuer"))
274
+ CognitoUserPoolConfigurationDetail.add_member(:group_configuration, Shapes::ShapeRef.new(shape: CognitoGroupConfigurationDetail, location_name: "groupConfiguration"))
227
275
  CognitoUserPoolConfigurationDetail.struct_class = Types::CognitoUserPoolConfigurationDetail
228
276
 
229
277
  CognitoUserPoolConfigurationItem.add_member(:user_pool_arn, Shapes::ShapeRef.new(shape: UserPoolArn, required: true, location_name: "userPoolArn"))
230
278
  CognitoUserPoolConfigurationItem.add_member(:client_ids, Shapes::ShapeRef.new(shape: ClientIds, required: true, location_name: "clientIds"))
231
279
  CognitoUserPoolConfigurationItem.add_member(:issuer, Shapes::ShapeRef.new(shape: Issuer, required: true, location_name: "issuer"))
280
+ CognitoUserPoolConfigurationItem.add_member(:group_configuration, Shapes::ShapeRef.new(shape: CognitoGroupConfigurationItem, location_name: "groupConfiguration"))
232
281
  CognitoUserPoolConfigurationItem.struct_class = Types::CognitoUserPoolConfigurationItem
233
282
 
234
283
  Configuration.add_member(:cognito_user_pool_configuration, Shapes::ShapeRef.new(shape: CognitoUserPoolConfiguration, location_name: "cognitoUserPoolConfiguration"))
@@ -488,6 +537,7 @@ module Aws::VerifiedPermissions
488
537
  IsAuthorizedWithTokenOutput.add_member(:decision, Shapes::ShapeRef.new(shape: Decision, required: true, location_name: "decision"))
489
538
  IsAuthorizedWithTokenOutput.add_member(:determining_policies, Shapes::ShapeRef.new(shape: DeterminingPolicyList, required: true, location_name: "determiningPolicies"))
490
539
  IsAuthorizedWithTokenOutput.add_member(:errors, Shapes::ShapeRef.new(shape: EvaluationErrorList, required: true, location_name: "errors"))
540
+ IsAuthorizedWithTokenOutput.add_member(:principal, Shapes::ShapeRef.new(shape: EntityIdentifier, location_name: "principal"))
491
541
  IsAuthorizedWithTokenOutput.struct_class = Types::IsAuthorizedWithTokenOutput
492
542
 
493
543
  ListIdentitySourcesInput.add_member(:policy_store_id, Shapes::ShapeRef.new(shape: PolicyStoreId, required: true, location_name: "policyStoreId"))
@@ -661,8 +711,12 @@ module Aws::VerifiedPermissions
661
711
  ThrottlingException.add_member(:quota_code, Shapes::ShapeRef.new(shape: String, location_name: "quotaCode"))
662
712
  ThrottlingException.struct_class = Types::ThrottlingException
663
713
 
714
+ UpdateCognitoGroupConfiguration.add_member(:group_entity_type, Shapes::ShapeRef.new(shape: GroupEntityType, required: true, location_name: "groupEntityType"))
715
+ UpdateCognitoGroupConfiguration.struct_class = Types::UpdateCognitoGroupConfiguration
716
+
664
717
  UpdateCognitoUserPoolConfiguration.add_member(:user_pool_arn, Shapes::ShapeRef.new(shape: UserPoolArn, required: true, location_name: "userPoolArn"))
665
718
  UpdateCognitoUserPoolConfiguration.add_member(:client_ids, Shapes::ShapeRef.new(shape: ClientIds, location_name: "clientIds"))
719
+ UpdateCognitoUserPoolConfiguration.add_member(:group_configuration, Shapes::ShapeRef.new(shape: UpdateCognitoGroupConfiguration, location_name: "groupConfiguration"))
666
720
  UpdateCognitoUserPoolConfiguration.struct_class = Types::UpdateCognitoUserPoolConfiguration
667
721
 
668
722
  UpdateConfiguration.add_member(:cognito_user_pool_configuration, Shapes::ShapeRef.new(shape: UpdateCognitoUserPoolConfiguration, location_name: "cognitoUserPoolConfiguration"))
@@ -775,6 +829,19 @@ module Aws::VerifiedPermissions
775
829
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
776
830
  end)
777
831
 
832
+ api.add_operation(:batch_is_authorized_with_token, Seahorse::Model::Operation.new.tap do |o|
833
+ o.name = "BatchIsAuthorizedWithToken"
834
+ o.http_method = "POST"
835
+ o.http_request_uri = "/"
836
+ o.input = Shapes::ShapeRef.new(shape: BatchIsAuthorizedWithTokenInput)
837
+ o.output = Shapes::ShapeRef.new(shape: BatchIsAuthorizedWithTokenOutput)
838
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
839
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
840
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
841
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
842
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
843
+ end)
844
+
778
845
  api.add_operation(:create_identity_source, Seahorse::Model::Operation.new.tap do |o|
779
846
  o.name = "CreateIdentitySource"
780
847
  o.http_method = "POST"
@@ -26,6 +26,20 @@ module Aws::VerifiedPermissions
26
26
  end
27
27
  end
28
28
 
29
+ class BatchIsAuthorizedWithToken
30
+ def self.build(context)
31
+ unless context.config.regional_endpoint
32
+ endpoint = context.config.endpoint.to_s
33
+ end
34
+ Aws::VerifiedPermissions::EndpointParameters.new(
35
+ region: context.config.region,
36
+ use_dual_stack: context.config.use_dualstack_endpoint,
37
+ use_fips: context.config.use_fips_endpoint,
38
+ endpoint: endpoint,
39
+ )
40
+ end
41
+ end
42
+
29
43
  class CreateIdentitySource
30
44
  def self.build(context)
31
45
  unless context.config.regional_endpoint
@@ -60,6 +60,8 @@ module Aws::VerifiedPermissions
60
60
  case context.operation_name
61
61
  when :batch_is_authorized
62
62
  Aws::VerifiedPermissions::Endpoints::BatchIsAuthorized.build(context)
63
+ when :batch_is_authorized_with_token
64
+ Aws::VerifiedPermissions::Endpoints::BatchIsAuthorizedWithToken.build(context)
63
65
  when :create_identity_source
64
66
  Aws::VerifiedPermissions::Endpoints::CreateIdentitySource.build(context)
65
67
  when :create_policy
@@ -201,13 +201,13 @@ module Aws::VerifiedPermissions
201
201
  # @return [Types::EntityIdentifier]
202
202
  #
203
203
  # @!attribute [rw] action
204
- # Specifies the requested action to be authorized. For example, is the
205
- # principal authorized to perform this action on the resource?
204
+ # Specifies the requested action to be authorized. For example,
205
+ # `PhotoFlash::ReadPhoto`.
206
206
  # @return [Types::ActionIdentifier]
207
207
  #
208
208
  # @!attribute [rw] resource
209
- # Specifies the resource for which the authorization decision is to be
210
- # made.
209
+ # Specifies the resource that you want an authorization decision for.
210
+ # For example, `PhotoFlash::Photo`.
211
211
  # @return [Types::EntityIdentifier]
212
212
  #
213
213
  # @!attribute [rw] context
@@ -262,9 +262,9 @@ module Aws::VerifiedPermissions
262
262
  # @return [Array<Types::DeterminingPolicyItem>]
263
263
  #
264
264
  # @!attribute [rw] errors
265
- # Errors that occurred while making an authorization decision, for
266
- # example, a policy references an Entity or entity Attribute that does
267
- # not exist in the slice.
265
+ # Errors that occurred while making an authorization decision. For
266
+ # example, a policy might reference an entity or attribute that
267
+ # doesn't exist in the request.
268
268
  # @return [Array<Types::EvaluationErrorItem>]
269
269
  #
270
270
  # @see http://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/BatchIsAuthorizedOutputItem AWS API Documentation
@@ -278,6 +278,224 @@ module Aws::VerifiedPermissions
278
278
  include Aws::Structure
279
279
  end
280
280
 
281
+ # @!attribute [rw] policy_store_id
282
+ # Specifies the ID of the policy store. Policies in this policy store
283
+ # will be used to make an authorization decision for the input.
284
+ # @return [String]
285
+ #
286
+ # @!attribute [rw] identity_token
287
+ # Specifies an identity (ID) token for the principal that you want to
288
+ # authorize in each request. This token is provided to you by the
289
+ # identity provider (IdP) associated with the specified identity
290
+ # source. You must specify either an `accessToken`, an
291
+ # `identityToken`, or both.
292
+ #
293
+ # Must be an ID token. Verified Permissions returns an error if the
294
+ # `token_use` claim in the submitted token isn't `id`.
295
+ # @return [String]
296
+ #
297
+ # @!attribute [rw] access_token
298
+ # Specifies an access token for the principal that you want to
299
+ # authorize in each request. This token is provided to you by the
300
+ # identity provider (IdP) associated with the specified identity
301
+ # source. You must specify either an `accessToken`, an
302
+ # `identityToken`, or both.
303
+ #
304
+ # Must be an access token. Verified Permissions returns an error if
305
+ # the `token_use` claim in the submitted token isn't `access`.
306
+ # @return [String]
307
+ #
308
+ # @!attribute [rw] entities
309
+ # Specifies the list of resources and their associated attributes that
310
+ # Verified Permissions can examine when evaluating the policies.
311
+ #
312
+ # You can't include principals in this parameter, only resource and
313
+ # action entities. This parameter can't include any entities of a
314
+ # type that matches the user or group entity types that you defined in
315
+ # your identity source.
316
+ #
317
+ # * The `BatchIsAuthorizedWithToken` operation takes principal
318
+ # attributes from <b> <i>only</i> </b> the `identityToken` or
319
+ # `accessToken` passed to the operation.
320
+ #
321
+ # * For action entities, you can include only their `Identifier` and
322
+ # `EntityType`.
323
+ # @return [Types::EntitiesDefinition]
324
+ #
325
+ # @!attribute [rw] requests
326
+ # An array of up to 30 requests that you want Verified Permissions to
327
+ # evaluate.
328
+ # @return [Array<Types::BatchIsAuthorizedWithTokenInputItem>]
329
+ #
330
+ # @see http://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/BatchIsAuthorizedWithTokenInput AWS API Documentation
331
+ #
332
+ class BatchIsAuthorizedWithTokenInput < Struct.new(
333
+ :policy_store_id,
334
+ :identity_token,
335
+ :access_token,
336
+ :entities,
337
+ :requests)
338
+ SENSITIVE = [:identity_token, :access_token]
339
+ include Aws::Structure
340
+ end
341
+
342
+ # An authorization request that you include in a
343
+ # `BatchIsAuthorizedWithToken` API request.
344
+ #
345
+ # @!attribute [rw] action
346
+ # Specifies the requested action to be authorized. For example,
347
+ # `PhotoFlash::ReadPhoto`.
348
+ # @return [Types::ActionIdentifier]
349
+ #
350
+ # @!attribute [rw] resource
351
+ # Specifies the resource that you want an authorization decision for.
352
+ # For example, `PhotoFlash::Photo`.
353
+ # @return [Types::EntityIdentifier]
354
+ #
355
+ # @!attribute [rw] context
356
+ # Specifies additional context that can be used to make more granular
357
+ # authorization decisions.
358
+ # @return [Types::ContextDefinition]
359
+ #
360
+ # @see http://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/BatchIsAuthorizedWithTokenInputItem AWS API Documentation
361
+ #
362
+ class BatchIsAuthorizedWithTokenInputItem < Struct.new(
363
+ :action,
364
+ :resource,
365
+ :context)
366
+ SENSITIVE = []
367
+ include Aws::Structure
368
+ end
369
+
370
+ # @!attribute [rw] principal
371
+ # The identifier of the principal in the ID or access token.
372
+ # @return [Types::EntityIdentifier]
373
+ #
374
+ # @!attribute [rw] results
375
+ # A series of `Allow` or `Deny` decisions for each request, and the
376
+ # policies that produced them.
377
+ # @return [Array<Types::BatchIsAuthorizedWithTokenOutputItem>]
378
+ #
379
+ # @see http://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/BatchIsAuthorizedWithTokenOutput AWS API Documentation
380
+ #
381
+ class BatchIsAuthorizedWithTokenOutput < Struct.new(
382
+ :principal,
383
+ :results)
384
+ SENSITIVE = []
385
+ include Aws::Structure
386
+ end
387
+
388
+ # The decision, based on policy evaluation, from an individual
389
+ # authorization request in a `BatchIsAuthorizedWithToken` API request.
390
+ #
391
+ # @!attribute [rw] request
392
+ # The authorization request that initiated the decision.
393
+ # @return [Types::BatchIsAuthorizedWithTokenInputItem]
394
+ #
395
+ # @!attribute [rw] decision
396
+ # An authorization decision that indicates if the authorization
397
+ # request should be allowed or denied.
398
+ # @return [String]
399
+ #
400
+ # @!attribute [rw] determining_policies
401
+ # The list of determining policies used to make the authorization
402
+ # decision. For example, if there are two matching policies, where one
403
+ # is a forbid and the other is a permit, then the forbid policy will
404
+ # be the determining policy. In the case of multiple matching permit
405
+ # policies then there would be multiple determining policies. In the
406
+ # case that no policies match, and hence the response is DENY, there
407
+ # would be no determining policies.
408
+ # @return [Array<Types::DeterminingPolicyItem>]
409
+ #
410
+ # @!attribute [rw] errors
411
+ # Errors that occurred while making an authorization decision. For
412
+ # example, a policy might reference an entity or attribute that
413
+ # doesn't exist in the request.
414
+ # @return [Array<Types::EvaluationErrorItem>]
415
+ #
416
+ # @see http://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/BatchIsAuthorizedWithTokenOutputItem AWS API Documentation
417
+ #
418
+ class BatchIsAuthorizedWithTokenOutputItem < Struct.new(
419
+ :request,
420
+ :decision,
421
+ :determining_policies,
422
+ :errors)
423
+ SENSITIVE = []
424
+ include Aws::Structure
425
+ end
426
+
427
+ # A list of user groups and entities from an Amazon Cognito user pool
428
+ # identity source.
429
+ #
430
+ # This data type is part of a [CognitoUserPoolConfiguration][1]
431
+ # structure and is a request parameter in [CreateIdentitySource][2].
432
+ #
433
+ #
434
+ #
435
+ # [1]: https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_CognitoUserPoolConfiguration.html
436
+ # [2]: https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_CreateIdentitySource.html
437
+ #
438
+ # @!attribute [rw] group_entity_type
439
+ # The name of the schema entity type that's mapped to the user pool
440
+ # group. Defaults to `AWS::CognitoGroup`.
441
+ # @return [String]
442
+ #
443
+ # @see http://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/CognitoGroupConfiguration AWS API Documentation
444
+ #
445
+ class CognitoGroupConfiguration < Struct.new(
446
+ :group_entity_type)
447
+ SENSITIVE = [:group_entity_type]
448
+ include Aws::Structure
449
+ end
450
+
451
+ # A list of user groups and entities from an Amazon Cognito user pool
452
+ # identity source.
453
+ #
454
+ # This data type is part of an [CognitoUserPoolConfigurationDetail][1]
455
+ # structure and is a response parameter to [GetIdentitySource][2].
456
+ #
457
+ #
458
+ #
459
+ # [1]: https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_CognitoUserPoolConfigurationItem.html
460
+ # [2]: https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_GetIdentitySource.html
461
+ #
462
+ # @!attribute [rw] group_entity_type
463
+ # The name of the schema entity type that's mapped to the user pool
464
+ # group. Defaults to `AWS::CognitoGroup`.
465
+ # @return [String]
466
+ #
467
+ # @see http://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/CognitoGroupConfigurationDetail AWS API Documentation
468
+ #
469
+ class CognitoGroupConfigurationDetail < Struct.new(
470
+ :group_entity_type)
471
+ SENSITIVE = [:group_entity_type]
472
+ include Aws::Structure
473
+ end
474
+
475
+ # A list of user groups and entities from an Amazon Cognito user pool
476
+ # identity source.
477
+ #
478
+ # This data type is part of an [CognitoUserPoolConfigurationItem][1]
479
+ # structure and is a response parameter to [ListIdentitySources][2].
480
+ #
481
+ #
482
+ #
483
+ # [1]: https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_CognitoUserPoolConfigurationDetail.html
484
+ # [2]: http://forums.aws.amazon.com/verifiedpermissions/latest/apireference/API_ListIdentitySources.html
485
+ #
486
+ # @!attribute [rw] group_entity_type
487
+ # The name of the schema entity type that's mapped to the user pool
488
+ # group. Defaults to `AWS::CognitoGroup`.
489
+ # @return [String]
490
+ #
491
+ # @see http://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/CognitoGroupConfigurationItem AWS API Documentation
492
+ #
493
+ class CognitoGroupConfigurationItem < Struct.new(
494
+ :group_entity_type)
495
+ SENSITIVE = [:group_entity_type]
496
+ include Aws::Structure
497
+ end
498
+
281
499
  # The configuration for an identity source that represents a connection
282
500
  # to an Amazon Cognito user pool used as an identity provider for
283
501
  # Verified Permissions.
@@ -313,11 +531,17 @@ module Aws::VerifiedPermissions
313
531
  # Example: `"ClientIds": ["&ExampleCogClientId;"]`
314
532
  # @return [Array<String>]
315
533
  #
534
+ # @!attribute [rw] group_configuration
535
+ # The configuration of the user groups from an Amazon Cognito user
536
+ # pool identity source.
537
+ # @return [Types::CognitoGroupConfiguration]
538
+ #
316
539
  # @see http://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/CognitoUserPoolConfiguration AWS API Documentation
317
540
  #
318
541
  class CognitoUserPoolConfiguration < Struct.new(
319
542
  :user_pool_arn,
320
- :client_ids)
543
+ :client_ids,
544
+ :group_configuration)
321
545
  SENSITIVE = []
322
546
  include Aws::Structure
323
547
  end
@@ -365,12 +589,18 @@ module Aws::VerifiedPermissions
365
589
  # "https://cognito-idp.us-east-1.amazonaws.com/us-east-1_1a2b3c4d5"`
366
590
  # @return [String]
367
591
  #
592
+ # @!attribute [rw] group_configuration
593
+ # The configuration of the user groups from an Amazon Cognito user
594
+ # pool identity source.
595
+ # @return [Types::CognitoGroupConfigurationDetail]
596
+ #
368
597
  # @see http://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/CognitoUserPoolConfigurationDetail AWS API Documentation
369
598
  #
370
599
  class CognitoUserPoolConfigurationDetail < Struct.new(
371
600
  :user_pool_arn,
372
601
  :client_ids,
373
- :issuer)
602
+ :issuer,
603
+ :group_configuration)
374
604
  SENSITIVE = []
375
605
  include Aws::Structure
376
606
  end
@@ -418,12 +648,18 @@ module Aws::VerifiedPermissions
418
648
  # "https://cognito-idp.us-east-1.amazonaws.com/us-east-1_1a2b3c4d5"`
419
649
  # @return [String]
420
650
  #
651
+ # @!attribute [rw] group_configuration
652
+ # The configuration of the user groups from an Amazon Cognito user
653
+ # pool identity source.
654
+ # @return [Types::CognitoGroupConfigurationItem]
655
+ #
421
656
  # @see http://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/CognitoUserPoolConfigurationItem AWS API Documentation
422
657
  #
423
658
  class CognitoUserPoolConfigurationItem < Struct.new(
424
659
  :user_pool_arn,
425
660
  :client_ids,
426
- :issuer)
661
+ :issuer,
662
+ :group_configuration)
427
663
  SENSITIVE = []
428
664
  include Aws::Structure
429
665
  end
@@ -455,7 +691,8 @@ module Aws::VerifiedPermissions
455
691
  #
456
692
  # Example:
457
693
  # `"configuration":\{"cognitoUserPoolConfiguration":\{"userPoolArn":"arn:aws:cognito-idp:us-east-1:123456789012:userpool/us-east-1_1a2b3c4d5","clientIds":
458
- # ["a1b2c3d4e5f6g7h8i9j0kalbmc"]\}\}`
694
+ # ["a1b2c3d4e5f6g7h8i9j0kalbmc"],"groupConfiguration":
695
+ # \{"groupEntityType": "MyCorp::Group"\}\}\}`
459
696
  #
460
697
  #
461
698
  #
@@ -494,7 +731,8 @@ module Aws::VerifiedPermissions
494
731
  #
495
732
  # Example:
496
733
  # `"configuration":\{"cognitoUserPoolConfiguration":\{"userPoolArn":"arn:aws:cognito-idp:us-east-1:123456789012:userpool/us-east-1_1a2b3c4d5","clientIds":
497
- # ["a1b2c3d4e5f6g7h8i9j0kalbmc"]\}\}`
734
+ # ["a1b2c3d4e5f6g7h8i9j0kalbmc"],"groupConfiguration":
735
+ # \{"groupEntityType": "MyCorp::Group"\}\}\}`
498
736
  #
499
737
  #
500
738
  #
@@ -533,7 +771,8 @@ module Aws::VerifiedPermissions
533
771
  #
534
772
  # Example:
535
773
  # `"configuration":\{"cognitoUserPoolConfiguration":\{"userPoolArn":"arn:aws:cognito-idp:us-east-1:123456789012:userpool/us-east-1_1a2b3c4d5","clientIds":
536
- # ["a1b2c3d4e5f6g7h8i9j0kalbmc"]\}\}`
774
+ # ["a1b2c3d4e5f6g7h8i9j0kalbmc"],"groupConfiguration":
775
+ # \{"groupEntityType": "MyCorp::Group"\}\}\}`
537
776
  #
538
777
  #
539
778
  #
@@ -1852,8 +2091,10 @@ module Aws::VerifiedPermissions
1852
2091
  # Specifies the list of resources and their associated attributes that
1853
2092
  # Verified Permissions can examine when evaluating the policies.
1854
2093
  #
1855
- # <note markdown="1"> You can include only resource and action entities in this parameter;
1856
- # you can't include principals.
2094
+ # You can't include principals in this parameter, only resource and
2095
+ # action entities. This parameter can't include any entities of a
2096
+ # type that matches the user or group entity types that you defined in
2097
+ # your identity source.
1857
2098
  #
1858
2099
  # * The `IsAuthorizedWithToken` operation takes principal attributes
1859
2100
  # from <b> <i>only</i> </b> the `identityToken` or `accessToken`
@@ -1861,8 +2102,6 @@ module Aws::VerifiedPermissions
1861
2102
  #
1862
2103
  # * For action entities, you can include only their `Identifier` and
1863
2104
  # `EntityType`.
1864
- #
1865
- # </note>
1866
2105
  # @return [Types::EntitiesDefinition]
1867
2106
  #
1868
2107
  # @see http://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/IsAuthorizedWithTokenInput AWS API Documentation
@@ -1900,12 +2139,17 @@ module Aws::VerifiedPermissions
1900
2139
  # not exist in the slice.
1901
2140
  # @return [Array<Types::EvaluationErrorItem>]
1902
2141
  #
2142
+ # @!attribute [rw] principal
2143
+ # The identifier of the principal in the ID or access token.
2144
+ # @return [Types::EntityIdentifier]
2145
+ #
1903
2146
  # @see http://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/IsAuthorizedWithTokenOutput AWS API Documentation
1904
2147
  #
1905
2148
  class IsAuthorizedWithTokenOutput < Struct.new(
1906
2149
  :decision,
1907
2150
  :determining_policies,
1908
- :errors)
2151
+ :errors,
2152
+ :principal)
1909
2153
  SENSITIVE = []
1910
2154
  include Aws::Structure
1911
2155
  end
@@ -2823,6 +3067,22 @@ module Aws::VerifiedPermissions
2823
3067
  include Aws::Structure
2824
3068
  end
2825
3069
 
3070
+ # A list of user groups and entities from an Amazon Cognito user pool
3071
+ # identity source.
3072
+ #
3073
+ # @!attribute [rw] group_entity_type
3074
+ # The name of the schema entity type that's mapped to the user pool
3075
+ # group. Defaults to `AWS::CognitoGroup`.
3076
+ # @return [String]
3077
+ #
3078
+ # @see http://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/UpdateCognitoGroupConfiguration AWS API Documentation
3079
+ #
3080
+ class UpdateCognitoGroupConfiguration < Struct.new(
3081
+ :group_entity_type)
3082
+ SENSITIVE = [:group_entity_type]
3083
+ include Aws::Structure
3084
+ end
3085
+
2826
3086
  # Contains configuration details of a Amazon Cognito user pool for use
2827
3087
  # with an identity source.
2828
3088
  #
@@ -2840,11 +3100,17 @@ module Aws::VerifiedPermissions
2840
3100
  # Amazon Cognito user pool.
2841
3101
  # @return [Array<String>]
2842
3102
  #
3103
+ # @!attribute [rw] group_configuration
3104
+ # The configuration of the user groups from an Amazon Cognito user
3105
+ # pool identity source.
3106
+ # @return [Types::UpdateCognitoGroupConfiguration]
3107
+ #
2843
3108
  # @see http://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/UpdateCognitoUserPoolConfiguration AWS API Documentation
2844
3109
  #
2845
3110
  class UpdateCognitoUserPoolConfiguration < Struct.new(
2846
3111
  :user_pool_arn,
2847
- :client_ids)
3112
+ :client_ids,
3113
+ :group_configuration)
2848
3114
  SENSITIVE = []
2849
3115
  include Aws::Structure
2850
3116
  end
@@ -53,6 +53,6 @@ require_relative 'aws-sdk-verifiedpermissions/customizations'
53
53
  # @!group service
54
54
  module Aws::VerifiedPermissions
55
55
 
56
- GEM_VERSION = '1.17.0'
56
+ GEM_VERSION = '1.19.0'
57
57
 
58
58
  end
data/sig/client.rbs CHANGED
@@ -119,6 +119,51 @@ module Aws
119
119
  ) -> _BatchIsAuthorizedResponseSuccess
120
120
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _BatchIsAuthorizedResponseSuccess
121
121
 
122
+ interface _BatchIsAuthorizedWithTokenResponseSuccess
123
+ include ::Seahorse::Client::_ResponseSuccess[Types::BatchIsAuthorizedWithTokenOutput]
124
+ def principal: () -> Types::EntityIdentifier
125
+ def results: () -> ::Array[Types::BatchIsAuthorizedWithTokenOutputItem]
126
+ end
127
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/VerifiedPermissions/Client.html#batch_is_authorized_with_token-instance_method
128
+ def batch_is_authorized_with_token: (
129
+ policy_store_id: ::String,
130
+ ?identity_token: ::String,
131
+ ?access_token: ::String,
132
+ ?entities: {
133
+ entity_list: Array[
134
+ {
135
+ identifier: {
136
+ entity_type: ::String,
137
+ entity_id: ::String
138
+ },
139
+ attributes: Hash[::String, untyped]?,
140
+ parents: Array[
141
+ {
142
+ entity_type: ::String,
143
+ entity_id: ::String
144
+ },
145
+ ]?
146
+ },
147
+ ]?
148
+ },
149
+ requests: Array[
150
+ {
151
+ action: {
152
+ action_type: ::String,
153
+ action_id: ::String
154
+ }?,
155
+ resource: {
156
+ entity_type: ::String,
157
+ entity_id: ::String
158
+ }?,
159
+ context: {
160
+ context_map: Hash[::String, untyped]?
161
+ }?
162
+ },
163
+ ]
164
+ ) -> _BatchIsAuthorizedWithTokenResponseSuccess
165
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _BatchIsAuthorizedWithTokenResponseSuccess
166
+
122
167
  interface _CreateIdentitySourceResponseSuccess
123
168
  include ::Seahorse::Client::_ResponseSuccess[Types::CreateIdentitySourceOutput]
124
169
  def created_date: () -> ::Time
@@ -133,7 +178,10 @@ module Aws
133
178
  configuration: {
134
179
  cognito_user_pool_configuration: {
135
180
  user_pool_arn: ::String,
136
- client_ids: Array[::String]?
181
+ client_ids: Array[::String]?,
182
+ group_configuration: {
183
+ group_entity_type: ::String
184
+ }?
137
185
  }?
138
186
  },
139
187
  ?principal_entity_type: ::String
@@ -375,6 +423,7 @@ module Aws
375
423
  def decision: () -> ("ALLOW" | "DENY")
376
424
  def determining_policies: () -> ::Array[Types::DeterminingPolicyItem]
377
425
  def errors: () -> ::Array[Types::EvaluationErrorItem]
426
+ def principal: () -> Types::EntityIdentifier
378
427
  end
379
428
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/VerifiedPermissions/Client.html#is_authorized_with_token-instance_method
380
429
  def is_authorized_with_token: (
@@ -516,7 +565,10 @@ module Aws
516
565
  update_configuration: {
517
566
  cognito_user_pool_configuration: {
518
567
  user_pool_arn: ::String,
519
- client_ids: Array[::String]?
568
+ client_ids: Array[::String]?,
569
+ group_configuration: {
570
+ group_entity_type: ::String
571
+ }?
520
572
  }?
521
573
  },
522
574
  ?principal_entity_type: ::String
data/sig/types.rbs CHANGED
@@ -73,9 +73,55 @@ module Aws::VerifiedPermissions
73
73
  SENSITIVE: []
74
74
  end
75
75
 
76
+ class BatchIsAuthorizedWithTokenInput
77
+ attr_accessor policy_store_id: ::String
78
+ attr_accessor identity_token: ::String
79
+ attr_accessor access_token: ::String
80
+ attr_accessor entities: Types::EntitiesDefinition
81
+ attr_accessor requests: ::Array[Types::BatchIsAuthorizedWithTokenInputItem]
82
+ SENSITIVE: [:identity_token, :access_token]
83
+ end
84
+
85
+ class BatchIsAuthorizedWithTokenInputItem
86
+ attr_accessor action: Types::ActionIdentifier
87
+ attr_accessor resource: Types::EntityIdentifier
88
+ attr_accessor context: Types::ContextDefinition
89
+ SENSITIVE: []
90
+ end
91
+
92
+ class BatchIsAuthorizedWithTokenOutput
93
+ attr_accessor principal: Types::EntityIdentifier
94
+ attr_accessor results: ::Array[Types::BatchIsAuthorizedWithTokenOutputItem]
95
+ SENSITIVE: []
96
+ end
97
+
98
+ class BatchIsAuthorizedWithTokenOutputItem
99
+ attr_accessor request: Types::BatchIsAuthorizedWithTokenInputItem
100
+ attr_accessor decision: ("ALLOW" | "DENY")
101
+ attr_accessor determining_policies: ::Array[Types::DeterminingPolicyItem]
102
+ attr_accessor errors: ::Array[Types::EvaluationErrorItem]
103
+ SENSITIVE: []
104
+ end
105
+
106
+ class CognitoGroupConfiguration
107
+ attr_accessor group_entity_type: ::String
108
+ SENSITIVE: [:group_entity_type]
109
+ end
110
+
111
+ class CognitoGroupConfigurationDetail
112
+ attr_accessor group_entity_type: ::String
113
+ SENSITIVE: [:group_entity_type]
114
+ end
115
+
116
+ class CognitoGroupConfigurationItem
117
+ attr_accessor group_entity_type: ::String
118
+ SENSITIVE: [:group_entity_type]
119
+ end
120
+
76
121
  class CognitoUserPoolConfiguration
77
122
  attr_accessor user_pool_arn: ::String
78
123
  attr_accessor client_ids: ::Array[::String]
124
+ attr_accessor group_configuration: Types::CognitoGroupConfiguration
79
125
  SENSITIVE: []
80
126
  end
81
127
 
@@ -83,6 +129,7 @@ module Aws::VerifiedPermissions
83
129
  attr_accessor user_pool_arn: ::String
84
130
  attr_accessor client_ids: ::Array[::String]
85
131
  attr_accessor issuer: ::String
132
+ attr_accessor group_configuration: Types::CognitoGroupConfigurationDetail
86
133
  SENSITIVE: []
87
134
  end
88
135
 
@@ -90,6 +137,7 @@ module Aws::VerifiedPermissions
90
137
  attr_accessor user_pool_arn: ::String
91
138
  attr_accessor client_ids: ::Array[::String]
92
139
  attr_accessor issuer: ::String
140
+ attr_accessor group_configuration: Types::CognitoGroupConfigurationItem
93
141
  SENSITIVE: []
94
142
  end
95
143
 
@@ -440,6 +488,7 @@ module Aws::VerifiedPermissions
440
488
  attr_accessor decision: ("ALLOW" | "DENY")
441
489
  attr_accessor determining_policies: ::Array[Types::DeterminingPolicyItem]
442
490
  attr_accessor errors: ::Array[Types::EvaluationErrorItem]
491
+ attr_accessor principal: Types::EntityIdentifier
443
492
  SENSITIVE: []
444
493
  end
445
494
 
@@ -668,9 +717,15 @@ module Aws::VerifiedPermissions
668
717
  SENSITIVE: []
669
718
  end
670
719
 
720
+ class UpdateCognitoGroupConfiguration
721
+ attr_accessor group_entity_type: ::String
722
+ SENSITIVE: [:group_entity_type]
723
+ end
724
+
671
725
  class UpdateCognitoUserPoolConfiguration
672
726
  attr_accessor user_pool_arn: ::String
673
727
  attr_accessor client_ids: ::Array[::String]
728
+ attr_accessor group_configuration: Types::UpdateCognitoGroupConfiguration
674
729
  SENSITIVE: []
675
730
  end
676
731
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-verifiedpermissions
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.17.0
4
+ version: 1.19.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: 2024-03-06 00:00:00.000000000 Z
11
+ date: 2024-04-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core