aws-sdk-ram 1.42.0 → 1.44.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.
@@ -275,6 +275,11 @@ module Aws::RAM
275
275
  # in the future.
276
276
  #
277
277
  #
278
+ # @option options [String] :sdk_ua_app_id
279
+ # A unique and opaque application ID that is appended to the
280
+ # User-Agent header as app/<sdk_ua_app_id>. It should have a
281
+ # maximum length of 50.
282
+ #
278
283
  # @option options [String] :secret_access_key
279
284
  #
280
285
  # @option options [String] :session_token
@@ -374,7 +379,7 @@ module Aws::RAM
374
379
  # relevant Amazon Web Services Management Consoles and tools.
375
380
  #
376
381
  # @option params [required, String] :resource_share_invitation_arn
377
- # The [Amazon Resoure Name (ARN)][1] of the invitation that you want to
382
+ # The [Amazon Resource Name (ARN)][1] of the invitation that you want to
378
383
  # accept.
379
384
  #
380
385
  #
@@ -392,6 +397,10 @@ module Aws::RAM
392
397
  # If you don't provide this value, then Amazon Web Services generates a
393
398
  # random one for you.
394
399
  #
400
+ # If you retry the operation with the same `ClientToken`, but with
401
+ # different parameters, the retry fails with an
402
+ # `IdempotentParameterMismatch` error.
403
+ #
395
404
  #
396
405
  #
397
406
  # [1]: https://wikipedia.org/wiki/Universally_unique_identifier
@@ -446,7 +455,7 @@ module Aws::RAM
446
455
  # resource share.
447
456
  #
448
457
  # @option params [required, String] :resource_share_arn
449
- # Specifies the [Amazon Resoure Name (ARN)][1] of the resource share
458
+ # Specifies the [Amazon Resource Name (ARN)][1] of the resource share
450
459
  # that you want to add principals or resources to.
451
460
  #
452
461
  #
@@ -474,7 +483,7 @@ module Aws::RAM
474
483
  #
475
484
  # * An Amazon Web Services account ID, for example: `123456789012`
476
485
  #
477
- # * An [Amazon Resoure Name (ARN)][1] of an organization in
486
+ # * An [Amazon Resource Name (ARN)][1] of an organization in
478
487
  # Organizations, for example:
479
488
  # `organizations::123456789012:organization/o-exampleorgid`
480
489
  #
@@ -508,6 +517,10 @@ module Aws::RAM
508
517
  # If you don't provide this value, then Amazon Web Services generates a
509
518
  # random one for you.
510
519
  #
520
+ # If you retry the operation with the same `ClientToken`, but with
521
+ # different parameters, the retry fails with an
522
+ # `IdempotentParameterMismatch` error.
523
+ #
511
524
  #
512
525
  #
513
526
  # [1]: https://wikipedia.org/wiki/Universally_unique_identifier
@@ -556,7 +569,7 @@ module Aws::RAM
556
569
  # type currently in the resource share.
557
570
  #
558
571
  # @option params [required, String] :resource_share_arn
559
- # Specifies the [Amazon Resoure Name (ARN)][1] of the resource share to
572
+ # Specifies the [Amazon Resource Name (ARN)][1] of the resource share to
560
573
  # which you want to add or replace permissions.
561
574
  #
562
575
  #
@@ -564,7 +577,7 @@ module Aws::RAM
564
577
  # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
565
578
  #
566
579
  # @option params [required, String] :permission_arn
567
- # Specifies the [Amazon Resoure Name (ARN)][1] of the RAM permission to
580
+ # Specifies the [Amazon Resource Name (ARN)][1] of the RAM permission to
568
581
  # associate with the resource share. To find the ARN for a permission,
569
582
  # use either the ListPermissions operation or go to the [Permissions
570
583
  # library][2] page in the RAM console and then choose the name of the
@@ -576,10 +589,11 @@ module Aws::RAM
576
589
  # [2]: https://console.aws.amazon.com/ram/home#Permissions:
577
590
  #
578
591
  # @option params [Boolean] :replace
579
- # Specifies whether the specified permission should replace or add to
580
- # the existing permission associated with the resource share. Use `true`
581
- # to replace the current permissions. Use `false` to add the permission
582
- # to the current permission. The default value is `false`.
592
+ # Specifies whether the specified permission should replace the existing
593
+ # permission associated with the resource share. Use `true` to replace
594
+ # the current permissions. Use `false` to add the permission to a
595
+ # resource share that currently doesn't have a permission. The default
596
+ # value is `false`.
583
597
  #
584
598
  # <note markdown="1"> A resource share can have only one permission per resource type. If a
585
599
  # resource share already has a permission for the specified resource
@@ -599,16 +613,27 @@ module Aws::RAM
599
613
  # If you don't provide this value, then Amazon Web Services generates a
600
614
  # random one for you.
601
615
  #
616
+ # If you retry the operation with the same `ClientToken`, but with
617
+ # different parameters, the retry fails with an
618
+ # `IdempotentParameterMismatch` error.
619
+ #
602
620
  #
603
621
  #
604
622
  # [1]: https://wikipedia.org/wiki/Universally_unique_identifier
605
623
  #
606
624
  # @option params [Integer] :permission_version
607
625
  # Specifies the version of the RAM permission to associate with the
608
- # resource share. If you don't specify this parameter, the operation
609
- # uses the version designated as the default. You can use the
610
- # ListPermissionVersions operation to discover the available versions of
611
- # a permission.
626
+ # resource share. You can specify *only* the version that is currently
627
+ # set as the default version for the permission. If you also set the
628
+ # `replace` pararameter to `true`, then this operation updates an
629
+ # outdated version of the permission to the current default version.
630
+ #
631
+ # <note markdown="1"> You don't need to specify this parameter because the default behavior
632
+ # is to use the version that is currently set as the default version for
633
+ # the permission. This parameter is supported for backwards
634
+ # compatibility.
635
+ #
636
+ # </note>
612
637
  #
613
638
  # @return [Types::AssociateResourceSharePermissionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
614
639
  #
@@ -639,6 +664,234 @@ module Aws::RAM
639
664
  req.send_request(options)
640
665
  end
641
666
 
667
+ # Creates a customer managed permission for a specified resource type
668
+ # that you can attach to resource shares. It is created in the Amazon
669
+ # Web Services Region in which you call the operation.
670
+ #
671
+ # @option params [required, String] :name
672
+ # Specifies the name of the customer managed permission. The name must
673
+ # be unique within the Amazon Web Services Region.
674
+ #
675
+ # @option params [required, String] :resource_type
676
+ # Specifies the name of the resource type that this customer managed
677
+ # permission applies to.
678
+ #
679
+ # The format is ` <service-code>:<resource-type> ` and is not case
680
+ # sensitive. For example, to specify an Amazon EC2 Subnet, you can use
681
+ # the string `ec2:subnet`. To see the list of valid values for this
682
+ # parameter, query the ListResourceTypes operation.
683
+ #
684
+ # @option params [required, String] :policy_template
685
+ # A string in JSON format string that contains the following elements of
686
+ # a resource-based policy:
687
+ #
688
+ # * **Effect**: must be set to `ALLOW`.
689
+ #
690
+ # * **Action**: specifies the actions that are allowed by this customer
691
+ # managed permission. The list must contain only actions that are
692
+ # supported by the specified resource type. For a list of all actions
693
+ # supported by each resource type, see [Actions, resources, and
694
+ # condition keys for Amazon Web Services services][1] in the *Identity
695
+ # and Access Management User Guide*.
696
+ #
697
+ # * **Condition**: (optional) specifies conditional parameters that must
698
+ # evaluate to true when a user attempts an action for that action to
699
+ # be allowed. For more information about the Condition element, see
700
+ # [IAM policies: Condition element][2] in the *Identity and Access
701
+ # Management User Guide*.
702
+ #
703
+ # This template can't include either the `Resource` or `Principal`
704
+ # elements. Those are both filled in by RAM when it instantiates the
705
+ # resource-based policy on each resource shared using this managed
706
+ # permission. The `Resource` comes from the ARN of the specific resource
707
+ # that you are sharing. The `Principal` comes from the list of
708
+ # identities added to the resource share.
709
+ #
710
+ #
711
+ #
712
+ # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html
713
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html
714
+ #
715
+ # @option params [String] :client_token
716
+ # Specifies a unique, case-sensitive identifier that you provide to
717
+ # ensure the idempotency of the request. This lets you safely retry the
718
+ # request without accidentally performing the same operation a second
719
+ # time. Passing the same value to a later call to an operation requires
720
+ # that you also pass the same value for all other parameters. We
721
+ # recommend that you use a [UUID type of value.][1].
722
+ #
723
+ # If you don't provide this value, then Amazon Web Services generates a
724
+ # random one for you.
725
+ #
726
+ # If you retry the operation with the same `ClientToken`, but with
727
+ # different parameters, the retry fails with an
728
+ # `IdempotentParameterMismatch` error.
729
+ #
730
+ #
731
+ #
732
+ # [1]: https://wikipedia.org/wiki/Universally_unique_identifier
733
+ #
734
+ # @option params [Array<Types::Tag>] :tags
735
+ # Specifies a list of one or more tag key and value pairs to attach to
736
+ # the permission.
737
+ #
738
+ # @return [Types::CreatePermissionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
739
+ #
740
+ # * {Types::CreatePermissionResponse#permission #permission} => Types::ResourceSharePermissionSummary
741
+ # * {Types::CreatePermissionResponse#client_token #client_token} => String
742
+ #
743
+ # @example Request syntax with placeholder values
744
+ #
745
+ # resp = client.create_permission({
746
+ # name: "PermissionName", # required
747
+ # resource_type: "String", # required
748
+ # policy_template: "Policy", # required
749
+ # client_token: "String",
750
+ # tags: [
751
+ # {
752
+ # key: "TagKey",
753
+ # value: "TagValue",
754
+ # },
755
+ # ],
756
+ # })
757
+ #
758
+ # @example Response structure
759
+ #
760
+ # resp.permission.arn #=> String
761
+ # resp.permission.version #=> String
762
+ # resp.permission.default_version #=> Boolean
763
+ # resp.permission.name #=> String
764
+ # resp.permission.resource_type #=> String
765
+ # resp.permission.status #=> String
766
+ # resp.permission.creation_time #=> Time
767
+ # resp.permission.last_updated_time #=> Time
768
+ # resp.permission.is_resource_type_default #=> Boolean
769
+ # resp.permission.permission_type #=> String, one of "CUSTOMER_MANAGED", "AWS_MANAGED"
770
+ # resp.permission.feature_set #=> String, one of "CREATED_FROM_POLICY", "PROMOTING_TO_STANDARD", "STANDARD"
771
+ # resp.permission.tags #=> Array
772
+ # resp.permission.tags[0].key #=> String
773
+ # resp.permission.tags[0].value #=> String
774
+ # resp.client_token #=> String
775
+ #
776
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/CreatePermission AWS API Documentation
777
+ #
778
+ # @overload create_permission(params = {})
779
+ # @param [Hash] params ({})
780
+ def create_permission(params = {}, options = {})
781
+ req = build_request(:create_permission, params)
782
+ req.send_request(options)
783
+ end
784
+
785
+ # Creates a new version of the specified customer managed permission.
786
+ # The new version is automatically set as the default version of the
787
+ # customer managed permission. New resource shares automatically use the
788
+ # default permission. Existing resource shares continue to use their
789
+ # original permission versions, but you can use
790
+ # ReplacePermissionAssociations to update them.
791
+ #
792
+ # If the specified customer managed permission already has the maximum
793
+ # of 5 versions, then you must delete one of the existing versions
794
+ # before you can create a new one.
795
+ #
796
+ # @option params [required, String] :permission_arn
797
+ # Specifies the [Amazon Resource Name (ARN)][1] of the customer managed
798
+ # permission you're creating a new version for.
799
+ #
800
+ #
801
+ #
802
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
803
+ #
804
+ # @option params [required, String] :policy_template
805
+ # A string in JSON format string that contains the following elements of
806
+ # a resource-based policy:
807
+ #
808
+ # * **Effect**: must be set to `ALLOW`.
809
+ #
810
+ # * **Action**: specifies the actions that are allowed by this customer
811
+ # managed permission. The list must contain only actions that are
812
+ # supported by the specified resource type. For a list of all actions
813
+ # supported by each resource type, see [Actions, resources, and
814
+ # condition keys for Amazon Web Services services][1] in the *Identity
815
+ # and Access Management User Guide*.
816
+ #
817
+ # * **Condition**: (optional) specifies conditional parameters that must
818
+ # evaluate to true when a user attempts an action for that action to
819
+ # be allowed. For more information about the Condition element, see
820
+ # [IAM policies: Condition element][2] in the *Identity and Access
821
+ # Management User Guide*.
822
+ #
823
+ # This template can't include either the `Resource` or `Principal`
824
+ # elements. Those are both filled in by RAM when it instantiates the
825
+ # resource-based policy on each resource shared using this managed
826
+ # permission. The `Resource` comes from the ARN of the specific resource
827
+ # that you are sharing. The `Principal` comes from the list of
828
+ # identities added to the resource share.
829
+ #
830
+ #
831
+ #
832
+ # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html
833
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html
834
+ #
835
+ # @option params [String] :client_token
836
+ # Specifies a unique, case-sensitive identifier that you provide to
837
+ # ensure the idempotency of the request. This lets you safely retry the
838
+ # request without accidentally performing the same operation a second
839
+ # time. Passing the same value to a later call to an operation requires
840
+ # that you also pass the same value for all other parameters. We
841
+ # recommend that you use a [UUID type of value.][1].
842
+ #
843
+ # If you don't provide this value, then Amazon Web Services generates a
844
+ # random one for you.
845
+ #
846
+ # If you retry the operation with the same `ClientToken`, but with
847
+ # different parameters, the retry fails with an
848
+ # `IdempotentParameterMismatch` error.
849
+ #
850
+ #
851
+ #
852
+ # [1]: https://wikipedia.org/wiki/Universally_unique_identifier
853
+ #
854
+ # @return [Types::CreatePermissionVersionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
855
+ #
856
+ # * {Types::CreatePermissionVersionResponse#permission #permission} => Types::ResourceSharePermissionDetail
857
+ # * {Types::CreatePermissionVersionResponse#client_token #client_token} => String
858
+ #
859
+ # @example Request syntax with placeholder values
860
+ #
861
+ # resp = client.create_permission_version({
862
+ # permission_arn: "String", # required
863
+ # policy_template: "Policy", # required
864
+ # client_token: "String",
865
+ # })
866
+ #
867
+ # @example Response structure
868
+ #
869
+ # resp.permission.arn #=> String
870
+ # resp.permission.version #=> String
871
+ # resp.permission.default_version #=> Boolean
872
+ # resp.permission.name #=> String
873
+ # resp.permission.resource_type #=> String
874
+ # resp.permission.permission #=> String
875
+ # resp.permission.creation_time #=> Time
876
+ # resp.permission.last_updated_time #=> Time
877
+ # resp.permission.is_resource_type_default #=> Boolean
878
+ # resp.permission.permission_type #=> String, one of "CUSTOMER_MANAGED", "AWS_MANAGED"
879
+ # resp.permission.feature_set #=> String, one of "CREATED_FROM_POLICY", "PROMOTING_TO_STANDARD", "STANDARD"
880
+ # resp.permission.status #=> String, one of "ATTACHABLE", "UNATTACHABLE", "DELETING", "DELETED"
881
+ # resp.permission.tags #=> Array
882
+ # resp.permission.tags[0].key #=> String
883
+ # resp.permission.tags[0].value #=> String
884
+ # resp.client_token #=> String
885
+ #
886
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/CreatePermissionVersion AWS API Documentation
887
+ #
888
+ # @overload create_permission_version(params = {})
889
+ # @param [Hash] params ({})
890
+ def create_permission_version(params = {}, options = {})
891
+ req = build_request(:create_permission_version, params)
892
+ req.send_request(options)
893
+ end
894
+
642
895
  # Creates a resource share. You can provide a list of the [Amazon
643
896
  # Resource Names (ARNs)][1] for the resources that you want to share, a
644
897
  # list of principals you want to share the resources with, and the
@@ -670,7 +923,7 @@ module Aws::RAM
670
923
  #
671
924
  # * An Amazon Web Services account ID, for example: `123456789012`
672
925
  #
673
- # * An [Amazon Resoure Name (ARN)][1] of an organization in
926
+ # * An [Amazon Resource Name (ARN)][1] of an organization in
674
927
  # Organizations, for example:
675
928
  # `organizations::123456789012:organization/o-exampleorgid`
676
929
  #
@@ -717,6 +970,10 @@ module Aws::RAM
717
970
  # If you don't provide this value, then Amazon Web Services generates a
718
971
  # random one for you.
719
972
  #
973
+ # If you retry the operation with the same `ClientToken`, but with
974
+ # different parameters, the retry fails with an
975
+ # `IdempotentParameterMismatch` error.
976
+ #
720
977
  #
721
978
  #
722
979
  # [1]: https://wikipedia.org/wiki/Universally_unique_identifier
@@ -779,13 +1036,155 @@ module Aws::RAM
779
1036
  req.send_request(options)
780
1037
  end
781
1038
 
782
- # Deletes the specified resource share. This doesn't delete any of the
783
- # resources that were associated with the resource share; it only stops
784
- # the sharing of those resources outside of the Amazon Web Services
785
- # account that created them.
1039
+ # Deletes the specified customer managed permission in the Amazon Web
1040
+ # Services Region in which you call this operation. You can delete a
1041
+ # customer managed permission only if it isn't attached to any resource
1042
+ # share. The operation deletes all versions associated with the customer
1043
+ # managed permission.
1044
+ #
1045
+ # @option params [required, String] :permission_arn
1046
+ # Specifies the [Amazon Resource Name (ARN)][1] of the customer managed
1047
+ # permission that you want to delete.
1048
+ #
1049
+ #
1050
+ #
1051
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
1052
+ #
1053
+ # @option params [String] :client_token
1054
+ # Specifies a unique, case-sensitive identifier that you provide to
1055
+ # ensure the idempotency of the request. This lets you safely retry the
1056
+ # request without accidentally performing the same operation a second
1057
+ # time. Passing the same value to a later call to an operation requires
1058
+ # that you also pass the same value for all other parameters. We
1059
+ # recommend that you use a [UUID type of value.][1].
1060
+ #
1061
+ # If you don't provide this value, then Amazon Web Services generates a
1062
+ # random one for you.
1063
+ #
1064
+ # If you retry the operation with the same `ClientToken`, but with
1065
+ # different parameters, the retry fails with an
1066
+ # `IdempotentParameterMismatch` error.
1067
+ #
1068
+ #
1069
+ #
1070
+ # [1]: https://wikipedia.org/wiki/Universally_unique_identifier
1071
+ #
1072
+ # @return [Types::DeletePermissionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1073
+ #
1074
+ # * {Types::DeletePermissionResponse#return_value #return_value} => Boolean
1075
+ # * {Types::DeletePermissionResponse#client_token #client_token} => String
1076
+ # * {Types::DeletePermissionResponse#permission_status #permission_status} => String
1077
+ #
1078
+ # @example Request syntax with placeholder values
1079
+ #
1080
+ # resp = client.delete_permission({
1081
+ # permission_arn: "String", # required
1082
+ # client_token: "String",
1083
+ # })
1084
+ #
1085
+ # @example Response structure
1086
+ #
1087
+ # resp.return_value #=> Boolean
1088
+ # resp.client_token #=> String
1089
+ # resp.permission_status #=> String, one of "ATTACHABLE", "UNATTACHABLE", "DELETING", "DELETED"
1090
+ #
1091
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/DeletePermission AWS API Documentation
1092
+ #
1093
+ # @overload delete_permission(params = {})
1094
+ # @param [Hash] params ({})
1095
+ def delete_permission(params = {}, options = {})
1096
+ req = build_request(:delete_permission, params)
1097
+ req.send_request(options)
1098
+ end
1099
+
1100
+ # Deletes one version of a customer managed permission. The version you
1101
+ # specify must not be attached to any resource share and must not be the
1102
+ # default version for the permission.
1103
+ #
1104
+ # If a customer managed permission has the maximum of 5 versions, then
1105
+ # you must delete at least one version before you can create another.
1106
+ #
1107
+ # @option params [required, String] :permission_arn
1108
+ # Specifies the [Amazon Resource Name (ARN)][1] of the permission with
1109
+ # the version you want to delete.
1110
+ #
1111
+ #
1112
+ #
1113
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
1114
+ #
1115
+ # @option params [required, Integer] :permission_version
1116
+ # Specifies the version number to delete.
1117
+ #
1118
+ # You can't delete the default version for a customer managed
1119
+ # permission.
1120
+ #
1121
+ # You can't delete a version if it's the only version of the
1122
+ # permission. You must either first create another version, or delete
1123
+ # the permission completely.
1124
+ #
1125
+ # You can't delete a version if it is attached to any resource shares.
1126
+ # If the version is the default, you must first use
1127
+ # SetDefaultPermissionVersion to set a different version as the default
1128
+ # for the customer managed permission, and then use
1129
+ # AssociateResourceSharePermission to update your resource shares to use
1130
+ # the new default version.
1131
+ #
1132
+ # @option params [String] :client_token
1133
+ # Specifies a unique, case-sensitive identifier that you provide to
1134
+ # ensure the idempotency of the request. This lets you safely retry the
1135
+ # request without accidentally performing the same operation a second
1136
+ # time. Passing the same value to a later call to an operation requires
1137
+ # that you also pass the same value for all other parameters. We
1138
+ # recommend that you use a [UUID type of value.][1].
1139
+ #
1140
+ # If you don't provide this value, then Amazon Web Services generates a
1141
+ # random one for you.
1142
+ #
1143
+ # If you retry the operation with the same `ClientToken`, but with
1144
+ # different parameters, the retry fails with an
1145
+ # `IdempotentParameterMismatch` error.
1146
+ #
1147
+ #
1148
+ #
1149
+ # [1]: https://wikipedia.org/wiki/Universally_unique_identifier
1150
+ #
1151
+ # @return [Types::DeletePermissionVersionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1152
+ #
1153
+ # * {Types::DeletePermissionVersionResponse#return_value #return_value} => Boolean
1154
+ # * {Types::DeletePermissionVersionResponse#client_token #client_token} => String
1155
+ # * {Types::DeletePermissionVersionResponse#permission_status #permission_status} => String
1156
+ #
1157
+ # @example Request syntax with placeholder values
1158
+ #
1159
+ # resp = client.delete_permission_version({
1160
+ # permission_arn: "String", # required
1161
+ # permission_version: 1, # required
1162
+ # client_token: "String",
1163
+ # })
1164
+ #
1165
+ # @example Response structure
1166
+ #
1167
+ # resp.return_value #=> Boolean
1168
+ # resp.client_token #=> String
1169
+ # resp.permission_status #=> String, one of "ATTACHABLE", "UNATTACHABLE", "DELETING", "DELETED"
1170
+ #
1171
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/DeletePermissionVersion AWS API Documentation
1172
+ #
1173
+ # @overload delete_permission_version(params = {})
1174
+ # @param [Hash] params ({})
1175
+ def delete_permission_version(params = {}, options = {})
1176
+ req = build_request(:delete_permission_version, params)
1177
+ req.send_request(options)
1178
+ end
1179
+
1180
+ # Deletes the specified resource share.
1181
+ #
1182
+ # This doesn't delete any of the resources that were associated with
1183
+ # the resource share; it only stops the sharing of those resources
1184
+ # through this resource share.
786
1185
  #
787
1186
  # @option params [required, String] :resource_share_arn
788
- # Specifies the [Amazon Resoure Name (ARN)][1] of the resource share to
1187
+ # Specifies the [Amazon Resource Name (ARN)][1] of the resource share to
789
1188
  # delete.
790
1189
  #
791
1190
  #
@@ -803,6 +1202,10 @@ module Aws::RAM
803
1202
  # If you don't provide this value, then Amazon Web Services generates a
804
1203
  # random one for you.
805
1204
  #
1205
+ # If you retry the operation with the same `ClientToken`, but with
1206
+ # different parameters, the retry fails with an
1207
+ # `IdempotentParameterMismatch` error.
1208
+ #
806
1209
  #
807
1210
  #
808
1211
  # [1]: https://wikipedia.org/wiki/Universally_unique_identifier
@@ -833,12 +1236,12 @@ module Aws::RAM
833
1236
  req.send_request(options)
834
1237
  end
835
1238
 
836
- # Disassociates the specified principals or resources from the specified
837
- # resource share.
1239
+ # Removes the specified principals or resources from participating in
1240
+ # the specified resource share.
838
1241
  #
839
1242
  # @option params [required, String] :resource_share_arn
840
- # Specifies [Amazon Resoure Name (ARN)][1] of the resource share that
841
- # you want to remove resources from.
1243
+ # Specifies [Amazon Resource Name (ARN)][1] of the resource share that
1244
+ # you want to remove resources or principals from.
842
1245
  #
843
1246
  #
844
1247
  #
@@ -848,7 +1251,7 @@ module Aws::RAM
848
1251
  # Specifies a list of [Amazon Resource Names (ARNs)][1] for one or more
849
1252
  # resources that you want to remove from the resource share. After the
850
1253
  # operation runs, these resources are no longer shared with principals
851
- # outside of the Amazon Web Services account that created the resources.
1254
+ # associated with the resource share.
852
1255
  #
853
1256
  #
854
1257
  #
@@ -862,7 +1265,7 @@ module Aws::RAM
862
1265
  #
863
1266
  # * An Amazon Web Services account ID, for example: `123456789012`
864
1267
  #
865
- # * An [Amazon Resoure Name (ARN)][1] of an organization in
1268
+ # * An [Amazon Resource Name (ARN)][1] of an organization in
866
1269
  # Organizations, for example:
867
1270
  # `organizations::123456789012:organization/o-exampleorgid`
868
1271
  #
@@ -896,6 +1299,10 @@ module Aws::RAM
896
1299
  # If you don't provide this value, then Amazon Web Services generates a
897
1300
  # random one for you.
898
1301
  #
1302
+ # If you retry the operation with the same `ClientToken`, but with
1303
+ # different parameters, the retry fails with an
1304
+ # `IdempotentParameterMismatch` error.
1305
+ #
899
1306
  #
900
1307
  #
901
1308
  # [1]: https://wikipedia.org/wiki/Universally_unique_identifier
@@ -937,23 +1344,23 @@ module Aws::RAM
937
1344
  req.send_request(options)
938
1345
  end
939
1346
 
940
- # Disassociates an RAM permission from a resource share. Permission
941
- # changes take effect immediately. You can remove a RAM permission from
942
- # a resource share only if there are currently no resources of the
1347
+ # Removes a managed permission from a resource share. Permission changes
1348
+ # take effect immediately. You can remove a managed permission from a
1349
+ # resource share only if there are currently no resources of the
943
1350
  # relevant resource type currently attached to the resource share.
944
1351
  #
945
1352
  # @option params [required, String] :resource_share_arn
946
- # The [Amazon Resoure Name (ARN)][1] of the resource share from which
947
- # you want to disassociate a permission.
1353
+ # The [Amazon Resource Name (ARN)][1] of the resource share that you
1354
+ # want to remove the managed permission from.
948
1355
  #
949
1356
  #
950
1357
  #
951
1358
  # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
952
1359
  #
953
1360
  # @option params [required, String] :permission_arn
954
- # The [Amazon Resoure Name (ARN)][1] of the permission to disassociate
955
- # from the resource share. Changes to permissions take effect
956
- # immediately.
1361
+ # The [Amazon Resource Name (ARN)][1] of the managed permission to
1362
+ # disassociate from the resource share. Changes to permissions take
1363
+ # effect immediately.
957
1364
  #
958
1365
  #
959
1366
  #
@@ -970,6 +1377,10 @@ module Aws::RAM
970
1377
  # If you don't provide this value, then Amazon Web Services generates a
971
1378
  # random one for you.
972
1379
  #
1380
+ # If you retry the operation with the same `ClientToken`, but with
1381
+ # different parameters, the retry fails with an
1382
+ # `IdempotentParameterMismatch` error.
1383
+ #
973
1384
  #
974
1385
  #
975
1386
  # [1]: https://wikipedia.org/wiki/Universally_unique_identifier
@@ -1002,15 +1413,18 @@ module Aws::RAM
1002
1413
  end
1003
1414
 
1004
1415
  # Enables resource sharing within your organization in Organizations.
1005
- # Calling this operation enables RAM to retrieve information about the
1006
- # organization and its structure. This lets you share resources with all
1007
- # of the accounts in an organization by specifying the organization's
1416
+ # This operation creates a service-linked role called
1417
+ # `AWSServiceRoleForResourceAccessManager` that has the IAM managed
1418
+ # policy named AWSResourceAccessManagerServiceRolePolicy attached. This
1419
+ # role permits RAM to retrieve information about the organization and
1420
+ # its structure. This lets you share resources with all of the accounts
1421
+ # in the calling account's organization by specifying the organization
1008
1422
  # ID, or all of the accounts in an organizational unit (OU) by
1009
- # specifying the OU's ID. Until you enable sharing within the
1423
+ # specifying the OU ID. Until you enable sharing within the
1010
1424
  # organization, you can specify only individual Amazon Web Services
1011
- # accounts, or for supported resource types, IAM users and roles.
1425
+ # accounts, or for supported resource types, IAM roles and users.
1012
1426
  #
1013
- # You must call this operation from an IAM user or role in the
1427
+ # You must call this operation from an IAM role or user in the
1014
1428
  # organization's management account.
1015
1429
  #
1016
1430
  # @return [Types::EnableSharingWithAwsOrganizationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -1030,10 +1444,10 @@ module Aws::RAM
1030
1444
  req.send_request(options)
1031
1445
  end
1032
1446
 
1033
- # Gets the contents of an RAM permission in JSON format.
1447
+ # Retrieves the contents of a managed permission in JSON format.
1034
1448
  #
1035
1449
  # @option params [required, String] :permission_arn
1036
- # Specifies the [Amazon Resoure Name (ARN)][1] of the permission whose
1450
+ # Specifies the [Amazon Resource Name (ARN)][1] of the permission whose
1037
1451
  # contents you want to retrieve. To find the ARN for a permission, use
1038
1452
  # either the ListPermissions operation or go to the [Permissions
1039
1453
  # library][2] page in the RAM console and then choose the name of the
@@ -1045,9 +1459,11 @@ module Aws::RAM
1045
1459
  # [2]: https://console.aws.amazon.com/ram/home#Permissions:
1046
1460
  #
1047
1461
  # @option params [Integer] :permission_version
1048
- # Specifies identifier for the version of the RAM permission to
1049
- # retrieve. If you don't specify this parameter, the operation
1050
- # retrieves the default version.
1462
+ # Specifies the version number of the RAM permission to retrieve. If you
1463
+ # don't specify this parameter, the operation retrieves the default
1464
+ # version.
1465
+ #
1466
+ # To see the list of available versions, use ListPermissionVersions.
1051
1467
  #
1052
1468
  # @return [Types::GetPermissionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1053
1469
  #
@@ -1071,6 +1487,12 @@ module Aws::RAM
1071
1487
  # resp.permission.creation_time #=> Time
1072
1488
  # resp.permission.last_updated_time #=> Time
1073
1489
  # resp.permission.is_resource_type_default #=> Boolean
1490
+ # resp.permission.permission_type #=> String, one of "CUSTOMER_MANAGED", "AWS_MANAGED"
1491
+ # resp.permission.feature_set #=> String, one of "CREATED_FROM_POLICY", "PROMOTING_TO_STANDARD", "STANDARD"
1492
+ # resp.permission.status #=> String, one of "ATTACHABLE", "UNATTACHABLE", "DELETING", "DELETED"
1493
+ # resp.permission.tags #=> Array
1494
+ # resp.permission.tags[0].key #=> String
1495
+ # resp.permission.tags[0].value #=> String
1074
1496
  #
1075
1497
  # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/GetPermission AWS API Documentation
1076
1498
  #
@@ -1145,18 +1567,17 @@ module Aws::RAM
1145
1567
  req.send_request(options)
1146
1568
  end
1147
1569
 
1148
- # Retrieves the resource and principal associations for resource shares
1149
- # that you own.
1570
+ # Retrieves the lists of resources and principals that associated for
1571
+ # resource shares that you own.
1150
1572
  #
1151
1573
  # @option params [required, String] :association_type
1152
1574
  # Specifies whether you want to retrieve the associations that involve a
1153
1575
  # specified resource or principal.
1154
1576
  #
1155
- # * `PRINCIPAL` – list the principals that are associated with the
1156
- # specified resource share.
1577
+ # * `PRINCIPAL` – list the principals whose associations you want to
1578
+ # see.
1157
1579
  #
1158
- # * `RESOURCE` – list the resources that are associated with the
1159
- # specified resource share.
1580
+ # * `RESOURCE` – list the resources whose associations you want to see.
1160
1581
  #
1161
1582
  # @option params [Array<String>] :resource_share_arns
1162
1583
  # Specifies a list of [Amazon Resource Names (ARNs)][1] of the resource
@@ -1167,7 +1588,7 @@ module Aws::RAM
1167
1588
  # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
1168
1589
  #
1169
1590
  # @option params [String] :resource_arn
1170
- # Specifies the [Amazon Resoure Name (ARN)][1] of the resource whose
1591
+ # Specifies the [Amazon Resource Name (ARN)][1] of a resource whose
1171
1592
  # resource shares you want to retrieve.
1172
1593
  #
1173
1594
  # You cannot specify this parameter if the association type is
@@ -1180,7 +1601,7 @@ module Aws::RAM
1180
1601
  # @option params [String] :principal
1181
1602
  # Specifies the ID of the principal whose resource shares you want to
1182
1603
  # retrieve. This can be an Amazon Web Services account ID, an
1183
- # organization ID, an organizational unit ID, or the [Amazon Resoure
1604
+ # organization ID, an organizational unit ID, or the [Amazon Resource
1184
1605
  # Name (ARN)][1] of an individual IAM user or role.
1185
1606
  #
1186
1607
  # You cannot specify this parameter if the association type is
@@ -1191,7 +1612,7 @@ module Aws::RAM
1191
1612
  # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
1192
1613
  #
1193
1614
  # @option params [String] :association_status
1194
- # Specifies that you want to retrieve only associations with this
1615
+ # Specifies that you want to retrieve only associations that have this
1195
1616
  # status.
1196
1617
  #
1197
1618
  # @option params [String] :next_token
@@ -1396,13 +1817,17 @@ module Aws::RAM
1396
1817
  #
1397
1818
  # @option params [String] :permission_arn
1398
1819
  # Specifies that you want to retrieve details of only those resource
1399
- # shares that use the RAM permission with this [Amazon Resoure Name
1820
+ # shares that use the managed permission with this [Amazon Resource Name
1400
1821
  # (ARN)][1].
1401
1822
  #
1402
1823
  #
1403
1824
  #
1404
1825
  # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
1405
1826
  #
1827
+ # @option params [Integer] :permission_version
1828
+ # Specifies that you want to retrieve details for only those resource
1829
+ # shares that use the specified version of the managed permission.
1830
+ #
1406
1831
  # @return [Types::GetResourceSharesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1407
1832
  #
1408
1833
  # * {Types::GetResourceSharesResponse#resource_shares #resource_shares} => Array&lt;Types::ResourceShare&gt;
@@ -1426,6 +1851,7 @@ module Aws::RAM
1426
1851
  # next_token: "String",
1427
1852
  # max_results: 1,
1428
1853
  # permission_arn: "String",
1854
+ # permission_version: 1,
1429
1855
  # })
1430
1856
  #
1431
1857
  # @example Response structure
@@ -1460,7 +1886,7 @@ module Aws::RAM
1460
1886
  # hasn't expired.
1461
1887
  #
1462
1888
  # @option params [required, String] :resource_share_invitation_arn
1463
- # Specifies the [Amazon Resoure Name (ARN)][1] of the invitation. You
1889
+ # Specifies the [Amazon Resource Name (ARN)][1] of the invitation. You
1464
1890
  # can use GetResourceShareInvitations to find the ARN of the invitation.
1465
1891
  #
1466
1892
  #
@@ -1540,10 +1966,111 @@ module Aws::RAM
1540
1966
  req.send_request(options)
1541
1967
  end
1542
1968
 
1969
+ # Lists information about the managed permission and its associations to
1970
+ # any resource shares that use this managed permission. This lets you
1971
+ # see which resource shares use which versions of the specified managed
1972
+ # permission.
1973
+ #
1974
+ # @option params [String] :permission_arn
1975
+ # Specifies the [Amazon Resource Name (ARN)][1] of the managed
1976
+ # permission.
1977
+ #
1978
+ #
1979
+ #
1980
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
1981
+ #
1982
+ # @option params [Integer] :permission_version
1983
+ # Specifies that you want to list only those associations with resource
1984
+ # shares that use this version of the managed permission. If you don't
1985
+ # provide a value for this parameter, then the operation returns
1986
+ # information about associations with resource shares that use any
1987
+ # version of the managed permission.
1988
+ #
1989
+ # @option params [String] :association_status
1990
+ # Specifies that you want to list only those associations with resource
1991
+ # shares that match this status.
1992
+ #
1993
+ # @option params [String] :resource_type
1994
+ # Specifies that you want to list only those associations with resource
1995
+ # shares that include at least one resource of this resource type.
1996
+ #
1997
+ # @option params [String] :feature_set
1998
+ # Specifies that you want to list only those associations with resource
1999
+ # shares that have a `featureSet` with this value.
2000
+ #
2001
+ # @option params [Boolean] :default_version
2002
+ # When `true`, specifies that you want to list only those associations
2003
+ # with resource shares that use the default version of the specified
2004
+ # managed permission.
2005
+ #
2006
+ # When `false` (the default value), lists associations with resource
2007
+ # shares that use any version of the specified managed permission.
2008
+ #
2009
+ # @option params [String] :next_token
2010
+ # Specifies that you want to receive the next page of results. Valid
2011
+ # only if you received a `NextToken` response in the previous request.
2012
+ # If you did, it indicates that more output is available. Set this
2013
+ # parameter to the value provided by the previous call's `NextToken`
2014
+ # response to request the next page of results.
2015
+ #
2016
+ # @option params [Integer] :max_results
2017
+ # Specifies the total number of results that you want included on each
2018
+ # page of the response. If you do not include this parameter, it
2019
+ # defaults to a value that is specific to the operation. If additional
2020
+ # items exist beyond the number you specify, the `NextToken` response
2021
+ # element is returned with a value (not null). Include the specified
2022
+ # value as the `NextToken` request parameter in the next call to the
2023
+ # operation to get the next part of the results. Note that the service
2024
+ # might return fewer results than the maximum even when there are more
2025
+ # results available. You should check `NextToken` after every operation
2026
+ # to ensure that you receive all of the results.
2027
+ #
2028
+ # @return [Types::ListPermissionAssociationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2029
+ #
2030
+ # * {Types::ListPermissionAssociationsResponse#permissions #permissions} => Array&lt;Types::AssociatedPermission&gt;
2031
+ # * {Types::ListPermissionAssociationsResponse#next_token #next_token} => String
2032
+ #
2033
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2034
+ #
2035
+ # @example Request syntax with placeholder values
2036
+ #
2037
+ # resp = client.list_permission_associations({
2038
+ # permission_arn: "String",
2039
+ # permission_version: 1,
2040
+ # association_status: "ASSOCIATING", # accepts ASSOCIATING, ASSOCIATED, FAILED, DISASSOCIATING, DISASSOCIATED
2041
+ # resource_type: "String",
2042
+ # feature_set: "CREATED_FROM_POLICY", # accepts CREATED_FROM_POLICY, PROMOTING_TO_STANDARD, STANDARD
2043
+ # default_version: false,
2044
+ # next_token: "String",
2045
+ # max_results: 1,
2046
+ # })
2047
+ #
2048
+ # @example Response structure
2049
+ #
2050
+ # resp.permissions #=> Array
2051
+ # resp.permissions[0].arn #=> String
2052
+ # resp.permissions[0].permission_version #=> String
2053
+ # resp.permissions[0].default_version #=> Boolean
2054
+ # resp.permissions[0].resource_type #=> String
2055
+ # resp.permissions[0].status #=> String
2056
+ # resp.permissions[0].feature_set #=> String, one of "CREATED_FROM_POLICY", "PROMOTING_TO_STANDARD", "STANDARD"
2057
+ # resp.permissions[0].last_updated_time #=> Time
2058
+ # resp.permissions[0].resource_share_arn #=> String
2059
+ # resp.next_token #=> String
2060
+ #
2061
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListPermissionAssociations AWS API Documentation
2062
+ #
2063
+ # @overload list_permission_associations(params = {})
2064
+ # @param [Hash] params ({})
2065
+ def list_permission_associations(params = {}, options = {})
2066
+ req = build_request(:list_permission_associations, params)
2067
+ req.send_request(options)
2068
+ end
2069
+
1543
2070
  # Lists the available versions of the specified RAM permission.
1544
2071
  #
1545
2072
  # @option params [required, String] :permission_arn
1546
- # Specifies the [Amazon Resoure Name (ARN)][1] of the RAM permission
2073
+ # Specifies the [Amazon Resource Name (ARN)][1] of the RAM permission
1547
2074
  # whose versions you want to list. You can use the `permissionVersion`
1548
2075
  # parameter on the AssociateResourceSharePermission operation to specify
1549
2076
  # a non-default version to attach.
@@ -1598,6 +2125,11 @@ module Aws::RAM
1598
2125
  # resp.permissions[0].creation_time #=> Time
1599
2126
  # resp.permissions[0].last_updated_time #=> Time
1600
2127
  # resp.permissions[0].is_resource_type_default #=> Boolean
2128
+ # resp.permissions[0].permission_type #=> String, one of "CUSTOMER_MANAGED", "AWS_MANAGED"
2129
+ # resp.permissions[0].feature_set #=> String, one of "CREATED_FROM_POLICY", "PROMOTING_TO_STANDARD", "STANDARD"
2130
+ # resp.permissions[0].tags #=> Array
2131
+ # resp.permissions[0].tags[0].key #=> String
2132
+ # resp.permissions[0].tags[0].value #=> String
1601
2133
  # resp.next_token #=> String
1602
2134
  #
1603
2135
  # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListPermissionVersions AWS API Documentation
@@ -1613,9 +2145,11 @@ module Aws::RAM
1613
2145
  # supported resource types.
1614
2146
  #
1615
2147
  # @option params [String] :resource_type
1616
- # Specifies that you want to list permissions for only the specified
1617
- # resource type. For example, to list only permissions that apply to EC2
1618
- # subnets, specify `ec2:Subnet`. You can use the ListResourceTypes
2148
+ # Specifies that you want to list only those permissions that apply to
2149
+ # the specified resource type. This parameter is not case sensitive.
2150
+ #
2151
+ # For example, to list only permissions that apply to Amazon EC2
2152
+ # subnets, specify `ec2:subnet`. You can use the ListResourceTypes
1619
2153
  # operation to get the specific string required.
1620
2154
  #
1621
2155
  # @option params [String] :next_token
@@ -1637,6 +2171,18 @@ module Aws::RAM
1637
2171
  # results available. You should check `NextToken` after every operation
1638
2172
  # to ensure that you receive all of the results.
1639
2173
  #
2174
+ # @option params [String] :permission_type
2175
+ # Specifies that you want to list only permissions of this type:
2176
+ #
2177
+ # * `AWS` – returns only Amazon Web Services managed permissions.
2178
+ #
2179
+ # * `LOCAL` – returns only customer managed permissions
2180
+ #
2181
+ # * `ALL` – returns both Amazon Web Services managed permissions and
2182
+ # customer managed permissions.
2183
+ #
2184
+ # If you don't specify this parameter, the default is `All`.
2185
+ #
1640
2186
  # @return [Types::ListPermissionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1641
2187
  #
1642
2188
  # * {Types::ListPermissionsResponse#permissions #permissions} => Array&lt;Types::ResourceSharePermissionSummary&gt;
@@ -1650,6 +2196,7 @@ module Aws::RAM
1650
2196
  # resource_type: "String",
1651
2197
  # next_token: "String",
1652
2198
  # max_results: 1,
2199
+ # permission_type: "ALL", # accepts ALL, AWS_MANAGED, CUSTOMER_MANAGED
1653
2200
  # })
1654
2201
  #
1655
2202
  # @example Response structure
@@ -1664,6 +2211,11 @@ module Aws::RAM
1664
2211
  # resp.permissions[0].creation_time #=> Time
1665
2212
  # resp.permissions[0].last_updated_time #=> Time
1666
2213
  # resp.permissions[0].is_resource_type_default #=> Boolean
2214
+ # resp.permissions[0].permission_type #=> String, one of "CUSTOMER_MANAGED", "AWS_MANAGED"
2215
+ # resp.permissions[0].feature_set #=> String, one of "CREATED_FROM_POLICY", "PROMOTING_TO_STANDARD", "STANDARD"
2216
+ # resp.permissions[0].tags #=> Array
2217
+ # resp.permissions[0].tags[0].key #=> String
2218
+ # resp.permissions[0].tags[0].value #=> String
1667
2219
  # resp.next_token #=> String
1668
2220
  #
1669
2221
  # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListPermissions AWS API Documentation
@@ -1690,7 +2242,7 @@ module Aws::RAM
1690
2242
  #
1691
2243
  # @option params [String] :resource_arn
1692
2244
  # Specifies that you want to list principal information for the resource
1693
- # share with the specified [Amazon Resoure Name (ARN)][1].
2245
+ # share with the specified [Amazon Resource Name (ARN)][1].
1694
2246
  #
1695
2247
  #
1696
2248
  #
@@ -1704,7 +2256,7 @@ module Aws::RAM
1704
2256
  #
1705
2257
  # * An Amazon Web Services account ID, for example: `123456789012`
1706
2258
  #
1707
- # * An [Amazon Resoure Name (ARN)][1] of an organization in
2259
+ # * An [Amazon Resource Name (ARN)][1] of an organization in
1708
2260
  # Organizations, for example:
1709
2261
  # `organizations::123456789012:organization/o-exampleorgid`
1710
2262
  #
@@ -1800,11 +2352,81 @@ module Aws::RAM
1800
2352
  req.send_request(options)
1801
2353
  end
1802
2354
 
2355
+ # Retrieves the current status of the asynchronous tasks performed by
2356
+ # RAM when you perform the ReplacePermissionAssociationsWork operation.
2357
+ #
2358
+ # @option params [Array<String>] :work_ids
2359
+ # A list of IDs. These values come from the `id`field of the
2360
+ # `replacePermissionAssociationsWork`structure returned by the
2361
+ # ReplacePermissionAssociations operation.
2362
+ #
2363
+ # @option params [String] :status
2364
+ # Specifies that you want to see only the details about requests with a
2365
+ # status that matches this value.
2366
+ #
2367
+ # @option params [String] :next_token
2368
+ # Specifies that you want to receive the next page of results. Valid
2369
+ # only if you received a `NextToken` response in the previous request.
2370
+ # If you did, it indicates that more output is available. Set this
2371
+ # parameter to the value provided by the previous call's `NextToken`
2372
+ # response to request the next page of results.
2373
+ #
2374
+ # @option params [Integer] :max_results
2375
+ # Specifies the total number of results that you want included on each
2376
+ # page of the response. If you do not include this parameter, it
2377
+ # defaults to a value that is specific to the operation. If additional
2378
+ # items exist beyond the number you specify, the `NextToken` response
2379
+ # element is returned with a value (not null). Include the specified
2380
+ # value as the `NextToken` request parameter in the next call to the
2381
+ # operation to get the next part of the results. Note that the service
2382
+ # might return fewer results than the maximum even when there are more
2383
+ # results available. You should check `NextToken` after every operation
2384
+ # to ensure that you receive all of the results.
2385
+ #
2386
+ # @return [Types::ListReplacePermissionAssociationsWorkResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2387
+ #
2388
+ # * {Types::ListReplacePermissionAssociationsWorkResponse#replace_permission_associations_works #replace_permission_associations_works} => Array&lt;Types::ReplacePermissionAssociationsWork&gt;
2389
+ # * {Types::ListReplacePermissionAssociationsWorkResponse#next_token #next_token} => String
2390
+ #
2391
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2392
+ #
2393
+ # @example Request syntax with placeholder values
2394
+ #
2395
+ # resp = client.list_replace_permission_associations_work({
2396
+ # work_ids: ["String"],
2397
+ # status: "IN_PROGRESS", # accepts IN_PROGRESS, COMPLETED, FAILED
2398
+ # next_token: "String",
2399
+ # max_results: 1,
2400
+ # })
2401
+ #
2402
+ # @example Response structure
2403
+ #
2404
+ # resp.replace_permission_associations_works #=> Array
2405
+ # resp.replace_permission_associations_works[0].id #=> String
2406
+ # resp.replace_permission_associations_works[0].from_permission_arn #=> String
2407
+ # resp.replace_permission_associations_works[0].from_permission_version #=> String
2408
+ # resp.replace_permission_associations_works[0].to_permission_arn #=> String
2409
+ # resp.replace_permission_associations_works[0].to_permission_version #=> String
2410
+ # resp.replace_permission_associations_works[0].status #=> String, one of "IN_PROGRESS", "COMPLETED", "FAILED"
2411
+ # resp.replace_permission_associations_works[0].status_message #=> String
2412
+ # resp.replace_permission_associations_works[0].creation_time #=> Time
2413
+ # resp.replace_permission_associations_works[0].last_updated_time #=> Time
2414
+ # resp.next_token #=> String
2415
+ #
2416
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListReplacePermissionAssociationsWork AWS API Documentation
2417
+ #
2418
+ # @overload list_replace_permission_associations_work(params = {})
2419
+ # @param [Hash] params ({})
2420
+ def list_replace_permission_associations_work(params = {}, options = {})
2421
+ req = build_request(:list_replace_permission_associations_work, params)
2422
+ req.send_request(options)
2423
+ end
2424
+
1803
2425
  # Lists the RAM permissions that are associated with a resource share.
1804
2426
  #
1805
2427
  # @option params [required, String] :resource_share_arn
1806
- # Specifies the [Amazon Resoure Name (ARN)][1] of the resource share for
1807
- # which you want to retrieve the associated permissions.
2428
+ # Specifies the [Amazon Resource Name (ARN)][1] of the resource share
2429
+ # for which you want to retrieve the associated permissions.
1808
2430
  #
1809
2431
  #
1810
2432
  #
@@ -1856,6 +2478,11 @@ module Aws::RAM
1856
2478
  # resp.permissions[0].creation_time #=> Time
1857
2479
  # resp.permissions[0].last_updated_time #=> Time
1858
2480
  # resp.permissions[0].is_resource_type_default #=> Boolean
2481
+ # resp.permissions[0].permission_type #=> String, one of "CUSTOMER_MANAGED", "AWS_MANAGED"
2482
+ # resp.permissions[0].feature_set #=> String, one of "CREATED_FROM_POLICY", "PROMOTING_TO_STANDARD", "STANDARD"
2483
+ # resp.permissions[0].tags #=> Array
2484
+ # resp.permissions[0].tags[0].key #=> String
2485
+ # resp.permissions[0].tags[0].value #=> String
1859
2486
  # resp.next_token #=> String
1860
2487
  #
1861
2488
  # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListResourceSharePermissions AWS API Documentation
@@ -2051,18 +2678,135 @@ module Aws::RAM
2051
2678
  req.send_request(options)
2052
2679
  end
2053
2680
 
2054
- # When you attach a resource-based permission policy to a resource, it
2055
- # automatically creates a resource share. However, resource shares
2056
- # created this way are visible only to the resource share owner, and the
2057
- # resource share can't be modified in RAM.
2681
+ # When you attach a resource-based policy to a resource, RAM
2682
+ # automatically creates a resource share of
2683
+ # `featureSet`=`CREATED_FROM_POLICY` with a managed permission that has
2684
+ # the same IAM permissions as the original resource-based policy.
2685
+ # However, this type of managed permission is visible to only the
2686
+ # resource share owner, and the associated resource share can't be
2687
+ # modified by using RAM.
2688
+ #
2689
+ # This operation creates a separate, fully manageable customer managed
2690
+ # permission that has the same IAM permissions as the original
2691
+ # resource-based policy. You can associate this customer managed
2692
+ # permission to any resource shares.
2693
+ #
2694
+ # Before you use PromoteResourceShareCreatedFromPolicy, you should first
2695
+ # run this operation to ensure that you have an appropriate customer
2696
+ # managed permission that can be associated with the promoted resource
2697
+ # share.
2698
+ #
2699
+ # <note markdown="1"> * The original `CREATED_FROM_POLICY` policy isn't deleted, and
2700
+ # resource shares using that original policy aren't automatically
2701
+ # updated.
2702
+ #
2703
+ # * You can't modify a `CREATED_FROM_POLICY` resource share so you
2704
+ # can't associate the new customer managed permission by using
2705
+ # `ReplacePermsissionAssociations`. However, if you use
2706
+ # PromoteResourceShareCreatedFromPolicy, that operation automatically
2707
+ # associates the fully manageable customer managed permission to the
2708
+ # newly promoted `STANDARD` resource share.
2709
+ #
2710
+ # * After you promote a resource share, if the original
2711
+ # `CREATED_FROM_POLICY` managed permission has no other associations
2712
+ # to A resource share, then RAM automatically deletes it.
2713
+ #
2714
+ # </note>
2715
+ #
2716
+ # @option params [required, String] :permission_arn
2717
+ # Specifies the [Amazon Resource Name (ARN)][1] of the
2718
+ # `CREATED_FROM_POLICY` permission that you want to promote. You can get
2719
+ # this [Amazon Resource Name (ARN)][1] by calling the
2720
+ # ListResourceSharePermissions operation.
2721
+ #
2722
+ #
2723
+ #
2724
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
2725
+ #
2726
+ # @option params [required, String] :name
2727
+ # Specifies a name for the promoted customer managed permission.
2728
+ #
2729
+ # @option params [String] :client_token
2730
+ # Specifies a unique, case-sensitive identifier that you provide to
2731
+ # ensure the idempotency of the request. This lets you safely retry the
2732
+ # request without accidentally performing the same operation a second
2733
+ # time. Passing the same value to a later call to an operation requires
2734
+ # that you also pass the same value for all other parameters. We
2735
+ # recommend that you use a [UUID type of value.][1].
2736
+ #
2737
+ # If you don't provide this value, then Amazon Web Services generates a
2738
+ # random one for you.
2739
+ #
2740
+ # If you retry the operation with the same `ClientToken`, but with
2741
+ # different parameters, the retry fails with an
2742
+ # `IdempotentParameterMismatch` error.
2058
2743
  #
2059
- # You can use this operation to promote the resource share to a full RAM
2060
- # resource share. When you promote a resource share, you can then manage
2061
- # the resource share in RAM and it becomes visible to all of the
2062
- # principals you shared it with.
2744
+ #
2745
+ #
2746
+ # [1]: https://wikipedia.org/wiki/Universally_unique_identifier
2747
+ #
2748
+ # @return [Types::PromotePermissionCreatedFromPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2749
+ #
2750
+ # * {Types::PromotePermissionCreatedFromPolicyResponse#permission #permission} => Types::ResourceSharePermissionSummary
2751
+ # * {Types::PromotePermissionCreatedFromPolicyResponse#client_token #client_token} => String
2752
+ #
2753
+ # @example Request syntax with placeholder values
2754
+ #
2755
+ # resp = client.promote_permission_created_from_policy({
2756
+ # permission_arn: "String", # required
2757
+ # name: "String", # required
2758
+ # client_token: "String",
2759
+ # })
2760
+ #
2761
+ # @example Response structure
2762
+ #
2763
+ # resp.permission.arn #=> String
2764
+ # resp.permission.version #=> String
2765
+ # resp.permission.default_version #=> Boolean
2766
+ # resp.permission.name #=> String
2767
+ # resp.permission.resource_type #=> String
2768
+ # resp.permission.status #=> String
2769
+ # resp.permission.creation_time #=> Time
2770
+ # resp.permission.last_updated_time #=> Time
2771
+ # resp.permission.is_resource_type_default #=> Boolean
2772
+ # resp.permission.permission_type #=> String, one of "CUSTOMER_MANAGED", "AWS_MANAGED"
2773
+ # resp.permission.feature_set #=> String, one of "CREATED_FROM_POLICY", "PROMOTING_TO_STANDARD", "STANDARD"
2774
+ # resp.permission.tags #=> Array
2775
+ # resp.permission.tags[0].key #=> String
2776
+ # resp.permission.tags[0].value #=> String
2777
+ # resp.client_token #=> String
2778
+ #
2779
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/PromotePermissionCreatedFromPolicy AWS API Documentation
2780
+ #
2781
+ # @overload promote_permission_created_from_policy(params = {})
2782
+ # @param [Hash] params ({})
2783
+ def promote_permission_created_from_policy(params = {}, options = {})
2784
+ req = build_request(:promote_permission_created_from_policy, params)
2785
+ req.send_request(options)
2786
+ end
2787
+
2788
+ # When you attach a resource-based policy to a resource, RAM
2789
+ # automatically creates a resource share of
2790
+ # `featureSet`=`CREATED_FROM_POLICY` with a managed permission that has
2791
+ # the same IAM permissions as the original resource-based policy.
2792
+ # However, this type of managed permission is visible to only the
2793
+ # resource share owner, and the associated resource share can't be
2794
+ # modified by using RAM.
2795
+ #
2796
+ # This operation promotes the resource share to a `STANDARD` resource
2797
+ # share that is fully manageable in RAM. When you promote a resource
2798
+ # share, you can then manage the resource share in RAM and it becomes
2799
+ # visible to all of the principals you shared it with.
2800
+ #
2801
+ # Before you perform this operation, you should first run
2802
+ # PromotePermissionCreatedFromPolicyto ensure that you have an
2803
+ # appropriate customer managed permission that can be associated with
2804
+ # this resource share after its is promoted. If this operation can't
2805
+ # find a managed permission that exactly matches the existing
2806
+ # `CREATED_FROM_POLICY` permission, then this operation fails.
2063
2807
  #
2064
2808
  # @option params [required, String] :resource_share_arn
2065
- # Specifies the [Amazon Resoure Name (ARN)][1] of the resource share to
2809
+ # Specifies the [Amazon Resource Name (ARN)][1] of the resource share to
2066
2810
  # promote.
2067
2811
  #
2068
2812
  #
@@ -2096,7 +2840,7 @@ module Aws::RAM
2096
2840
  # Services account.
2097
2841
  #
2098
2842
  # @option params [required, String] :resource_share_invitation_arn
2099
- # Specifies the [Amazon Resoure Name (ARN)][1] of the invitation that
2843
+ # Specifies the [Amazon Resource Name (ARN)][1] of the invitation that
2100
2844
  # you want to reject.
2101
2845
  #
2102
2846
  #
@@ -2114,6 +2858,10 @@ module Aws::RAM
2114
2858
  # If you don't provide this value, then Amazon Web Services generates a
2115
2859
  # random one for you.
2116
2860
  #
2861
+ # If you retry the operation with the same `ClientToken`, but with
2862
+ # different parameters, the retry fails with an
2863
+ # `IdempotentParameterMismatch` error.
2864
+ #
2117
2865
  #
2118
2866
  #
2119
2867
  # [1]: https://wikipedia.org/wiki/Universally_unique_identifier
@@ -2161,13 +2909,178 @@ module Aws::RAM
2161
2909
  req.send_request(options)
2162
2910
  end
2163
2911
 
2164
- # Adds the specified tag keys and values to the specified resource
2165
- # share. The tags are attached only to the resource share, not to the
2166
- # resources that are in the resource share.
2912
+ # Updates all resource shares that use a managed permission to a
2913
+ # different managed permission. This operation always applies the
2914
+ # default version of the target managed permission. You can optionally
2915
+ # specify that the update applies to only resource shares that currently
2916
+ # use a specified version. This enables you to update to the latest
2917
+ # version, without changing the which managed permission is used.
2167
2918
  #
2168
- # @option params [required, String] :resource_share_arn
2169
- # Specifies the [Amazon Resoure Name (ARN)][1] of the resource share
2170
- # that you want to add tags to.
2919
+ # You can use this operation to update all of your resource shares to
2920
+ # use the current default version of the permission by specifying the
2921
+ # same value for the `fromPermissionArn` and `toPermissionArn`
2922
+ # parameters.
2923
+ #
2924
+ # You can use the optional `fromPermissionVersion` parameter to update
2925
+ # only those resources that use a specified version of the managed
2926
+ # permission to the new managed permission.
2927
+ #
2928
+ # To successfully perform this operation, you must have permission to
2929
+ # update the resource-based policy on all affected resource types.
2930
+ #
2931
+ # @option params [required, String] :from_permission_arn
2932
+ # Specifies the [Amazon Resource Name (ARN)][1] of the managed
2933
+ # permission that you want to replace.
2934
+ #
2935
+ #
2936
+ #
2937
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
2938
+ #
2939
+ # @option params [Integer] :from_permission_version
2940
+ # Specifies that you want to updated the permissions for only those
2941
+ # resource shares that use the specified version of the managed
2942
+ # permission.
2943
+ #
2944
+ # @option params [required, String] :to_permission_arn
2945
+ # Specifies the ARN of the managed permission that you want to associate
2946
+ # with resource shares in place of the one specified by
2947
+ # `fromPerssionArn` and `fromPermissionVersion`.
2948
+ #
2949
+ # The operation always associates the version that is currently the
2950
+ # default for the specified managed permission.
2951
+ #
2952
+ # @option params [String] :client_token
2953
+ # Specifies a unique, case-sensitive identifier that you provide to
2954
+ # ensure the idempotency of the request. This lets you safely retry the
2955
+ # request without accidentally performing the same operation a second
2956
+ # time. Passing the same value to a later call to an operation requires
2957
+ # that you also pass the same value for all other parameters. We
2958
+ # recommend that you use a [UUID type of value.][1].
2959
+ #
2960
+ # If you don't provide this value, then Amazon Web Services generates a
2961
+ # random one for you.
2962
+ #
2963
+ # If you retry the operation with the same `ClientToken`, but with
2964
+ # different parameters, the retry fails with an
2965
+ # `IdempotentParameterMismatch` error.
2966
+ #
2967
+ #
2968
+ #
2969
+ # [1]: https://wikipedia.org/wiki/Universally_unique_identifier
2970
+ #
2971
+ # @return [Types::ReplacePermissionAssociationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2972
+ #
2973
+ # * {Types::ReplacePermissionAssociationsResponse#replace_permission_associations_work #replace_permission_associations_work} => Types::ReplacePermissionAssociationsWork
2974
+ # * {Types::ReplacePermissionAssociationsResponse#client_token #client_token} => String
2975
+ #
2976
+ # @example Request syntax with placeholder values
2977
+ #
2978
+ # resp = client.replace_permission_associations({
2979
+ # from_permission_arn: "String", # required
2980
+ # from_permission_version: 1,
2981
+ # to_permission_arn: "String", # required
2982
+ # client_token: "String",
2983
+ # })
2984
+ #
2985
+ # @example Response structure
2986
+ #
2987
+ # resp.replace_permission_associations_work.id #=> String
2988
+ # resp.replace_permission_associations_work.from_permission_arn #=> String
2989
+ # resp.replace_permission_associations_work.from_permission_version #=> String
2990
+ # resp.replace_permission_associations_work.to_permission_arn #=> String
2991
+ # resp.replace_permission_associations_work.to_permission_version #=> String
2992
+ # resp.replace_permission_associations_work.status #=> String, one of "IN_PROGRESS", "COMPLETED", "FAILED"
2993
+ # resp.replace_permission_associations_work.status_message #=> String
2994
+ # resp.replace_permission_associations_work.creation_time #=> Time
2995
+ # resp.replace_permission_associations_work.last_updated_time #=> Time
2996
+ # resp.client_token #=> String
2997
+ #
2998
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ReplacePermissionAssociations AWS API Documentation
2999
+ #
3000
+ # @overload replace_permission_associations(params = {})
3001
+ # @param [Hash] params ({})
3002
+ def replace_permission_associations(params = {}, options = {})
3003
+ req = build_request(:replace_permission_associations, params)
3004
+ req.send_request(options)
3005
+ end
3006
+
3007
+ # Designates the specified version number as the default version for the
3008
+ # specified customer managed permission. New resource shares
3009
+ # automatically use this new default permission. Existing resource
3010
+ # shares continue to use their original permission version, but you can
3011
+ # use ReplacePermissionAssociations to update them.
3012
+ #
3013
+ # @option params [required, String] :permission_arn
3014
+ # Specifies the [Amazon Resource Name (ARN)][1] of the customer managed
3015
+ # permission whose default version you want to change.
3016
+ #
3017
+ #
3018
+ #
3019
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
3020
+ #
3021
+ # @option params [required, Integer] :permission_version
3022
+ # Specifies the version number that you want to designate as the default
3023
+ # for customer managed permission. To see a list of all available
3024
+ # version numbers, use ListPermissionVersions.
3025
+ #
3026
+ # @option params [String] :client_token
3027
+ # Specifies a unique, case-sensitive identifier that you provide to
3028
+ # ensure the idempotency of the request. This lets you safely retry the
3029
+ # request without accidentally performing the same operation a second
3030
+ # time. Passing the same value to a later call to an operation requires
3031
+ # that you also pass the same value for all other parameters. We
3032
+ # recommend that you use a [UUID type of value.][1].
3033
+ #
3034
+ # If you don't provide this value, then Amazon Web Services generates a
3035
+ # random one for you.
3036
+ #
3037
+ # If you retry the operation with the same `ClientToken`, but with
3038
+ # different parameters, the retry fails with an
3039
+ # `IdempotentParameterMismatch` error.
3040
+ #
3041
+ #
3042
+ #
3043
+ # [1]: https://wikipedia.org/wiki/Universally_unique_identifier
3044
+ #
3045
+ # @return [Types::SetDefaultPermissionVersionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3046
+ #
3047
+ # * {Types::SetDefaultPermissionVersionResponse#return_value #return_value} => Boolean
3048
+ # * {Types::SetDefaultPermissionVersionResponse#client_token #client_token} => String
3049
+ #
3050
+ # @example Request syntax with placeholder values
3051
+ #
3052
+ # resp = client.set_default_permission_version({
3053
+ # permission_arn: "String", # required
3054
+ # permission_version: 1, # required
3055
+ # client_token: "String",
3056
+ # })
3057
+ #
3058
+ # @example Response structure
3059
+ #
3060
+ # resp.return_value #=> Boolean
3061
+ # resp.client_token #=> String
3062
+ #
3063
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/SetDefaultPermissionVersion AWS API Documentation
3064
+ #
3065
+ # @overload set_default_permission_version(params = {})
3066
+ # @param [Hash] params ({})
3067
+ def set_default_permission_version(params = {}, options = {})
3068
+ req = build_request(:set_default_permission_version, params)
3069
+ req.send_request(options)
3070
+ end
3071
+
3072
+ # Adds the specified tag keys and values to a resource share or managed
3073
+ # permission. If you choose a resource share, the tags are attached to
3074
+ # only the resource share, not to the resources that are in the resource
3075
+ # share.
3076
+ #
3077
+ # The tags on a managed permission are the same for all versions of the
3078
+ # managed permission.
3079
+ #
3080
+ # @option params [String] :resource_share_arn
3081
+ # Specifies the [Amazon Resource Name (ARN)][1] of the resource share
3082
+ # that you want to add tags to. You must specify *either*
3083
+ # `resourceShareArn`, or `resourceArn`, but not both.
2171
3084
  #
2172
3085
  #
2173
3086
  #
@@ -2178,18 +3091,28 @@ module Aws::RAM
2178
3091
  # present and not be an empty string. The tag value must be present but
2179
3092
  # can be an empty string.
2180
3093
  #
3094
+ # @option params [String] :resource_arn
3095
+ # Specifies the [Amazon Resource Name (ARN)][1] of the managed
3096
+ # permission that you want to add tags to. You must specify *either*
3097
+ # `resourceArn`, or `resourceShareArn`, but not both.
3098
+ #
3099
+ #
3100
+ #
3101
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
3102
+ #
2181
3103
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2182
3104
  #
2183
3105
  # @example Request syntax with placeholder values
2184
3106
  #
2185
3107
  # resp = client.tag_resource({
2186
- # resource_share_arn: "String", # required
3108
+ # resource_share_arn: "String",
2187
3109
  # tags: [ # required
2188
3110
  # {
2189
3111
  # key: "TagKey",
2190
3112
  # value: "TagValue",
2191
3113
  # },
2192
3114
  # ],
3115
+ # resource_arn: "String",
2193
3116
  # })
2194
3117
  #
2195
3118
  # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/TagResource AWS API Documentation
@@ -2202,12 +3125,13 @@ module Aws::RAM
2202
3125
  end
2203
3126
 
2204
3127
  # Removes the specified tag key and value pairs from the specified
2205
- # resource share.
3128
+ # resource share or managed permission.
2206
3129
  #
2207
- # @option params [required, String] :resource_share_arn
2208
- # Specifies the [Amazon Resoure Name (ARN)][1] of the resource share
3130
+ # @option params [String] :resource_share_arn
3131
+ # Specifies the [Amazon Resource Name (ARN)][1] of the resource share
2209
3132
  # that you want to remove tags from. The tags are removed from the
2210
- # resource share, not the resources in the resource share.
3133
+ # resource share, not the resources in the resource share. You must
3134
+ # specify either `resourceShareArn`, or `resourceArn`, but not both.
2211
3135
  #
2212
3136
  #
2213
3137
  #
@@ -2216,13 +3140,23 @@ module Aws::RAM
2216
3140
  # @option params [required, Array<String>] :tag_keys
2217
3141
  # Specifies a list of one or more tag keys that you want to remove.
2218
3142
  #
3143
+ # @option params [String] :resource_arn
3144
+ # Specifies the [Amazon Resource Name (ARN)][1] of the managed
3145
+ # permission that you want to remove tags from. You must specify either
3146
+ # `resourceArn`, or `resourceShareArn`, but not both.
3147
+ #
3148
+ #
3149
+ #
3150
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
3151
+ #
2219
3152
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2220
3153
  #
2221
3154
  # @example Request syntax with placeholder values
2222
3155
  #
2223
3156
  # resp = client.untag_resource({
2224
- # resource_share_arn: "String", # required
3157
+ # resource_share_arn: "String",
2225
3158
  # tag_keys: ["TagKey"], # required
3159
+ # resource_arn: "String",
2226
3160
  # })
2227
3161
  #
2228
3162
  # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/UntagResource AWS API Documentation
@@ -2237,7 +3171,7 @@ module Aws::RAM
2237
3171
  # Modifies some of the properties of the specified resource share.
2238
3172
  #
2239
3173
  # @option params [required, String] :resource_share_arn
2240
- # Specifies the [Amazon Resoure Name (ARN)][1] of the resource share
3174
+ # Specifies the [Amazon Resource Name (ARN)][1] of the resource share
2241
3175
  # that you want to modify.
2242
3176
  #
2243
3177
  #
@@ -2263,6 +3197,10 @@ module Aws::RAM
2263
3197
  # If you don't provide this value, then Amazon Web Services generates a
2264
3198
  # random one for you.
2265
3199
  #
3200
+ # If you retry the operation with the same `ClientToken`, but with
3201
+ # different parameters, the retry fails with an
3202
+ # `IdempotentParameterMismatch` error.
3203
+ #
2266
3204
  #
2267
3205
  #
2268
3206
  # [1]: https://wikipedia.org/wiki/Universally_unique_identifier
@@ -2319,7 +3257,7 @@ module Aws::RAM
2319
3257
  params: params,
2320
3258
  config: config)
2321
3259
  context[:gem_name] = 'aws-sdk-ram'
2322
- context[:gem_version] = '1.42.0'
3260
+ context[:gem_version] = '1.44.0'
2323
3261
  Seahorse::Client::Request.new(handlers, context)
2324
3262
  end
2325
3263