aws-sdk-secretsmanager 1.47.0 → 1.51.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -392,26 +392,8 @@ module Aws::SecretsManager
392
392
  # either the Amazon Resource Name (ARN) or the friendly name of the
393
393
  # secret.
394
394
  #
395
- # <note markdown="1"> If you specify an ARN, we generally recommend that you specify a
396
- # complete ARN. You can specify a partial ARN too—for example, if you
397
- # don’t include the final hyphen and six random characters that Secrets
398
- # Manager adds at the end of the ARN when you created the secret. A
399
- # partial ARN match can work as long as it uniquely matches only one
400
- # secret. However, if your secret has a name that ends in a hyphen
401
- # followed by six characters (before Secrets Manager adds the hyphen and
402
- # six characters to the ARN) and you try to use that as a partial ARN,
403
- # then those characters cause Secrets Manager to assume that you’re
404
- # specifying a complete ARN. This confusion can cause unexpected
405
- # results. To avoid this situation, we recommend that you don’t create
406
- # secret names ending with a hyphen followed by six characters.
407
- #
408
- # If you specify an incomplete ARN without the random suffix, and
409
- # instead provide the 'friendly name', you *must* not include the
410
- # random suffix. If you do include the random suffix added by Secrets
411
- # Manager, you receive either a *ResourceNotFoundException* or an
412
- # *AccessDeniedException* error, depending on your permissions.
413
- #
414
- # </note>
395
+ # For an ARN, we recommend that you specify a complete ARN rather than a
396
+ # partial ARN.
415
397
  #
416
398
  # @return [Types::CancelRotateSecretResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
417
399
  #
@@ -479,25 +461,27 @@ module Aws::SecretsManager
479
461
  #
480
462
  # <note markdown="1"> * If you call an operation to encrypt or decrypt the `SecretString` or
481
463
  # `SecretBinary` for a secret in the same account as the calling user
482
- # and that secret doesn't specify a AWS KMS encryption key, Secrets
483
- # Manager uses the account's default AWS managed customer master key
484
- # (CMK) with the alias `aws/secretsmanager`. If this key doesn't
485
- # already exist in your account then Secrets Manager creates it for
486
- # you automatically. All users and roles in the same AWS account
464
+ # and that secret doesn't specify a Amazon Web Services KMS
465
+ # encryption key, Secrets Manager uses the account's default Amazon
466
+ # Web Services managed customer master key (CMK) with the alias
467
+ # `aws/secretsmanager`. If this key doesn't already exist in your
468
+ # account then Secrets Manager creates it for you automatically. All
469
+ # users and roles in the same Amazon Web Services account
487
470
  # automatically have access to use the default CMK. Note that if an
488
- # Secrets Manager API call results in AWS creating the account's
489
- # AWS-managed CMK, it can result in a one-time significant delay in
490
- # returning the result.
491
- #
492
- # * If the secret resides in a different AWS account from the
493
- # credentials calling an API that requires encryption or decryption of
494
- # the secret value then you must create and use a custom AWS KMS CMK
495
- # because you can't access the default CMK for the account using
496
- # credentials from a different AWS account. Store the ARN of the CMK
497
- # in the secret when you create the secret or when you update it by
498
- # including it in the `KMSKeyId`. If you call an API that must encrypt
499
- # or decrypt `SecretString` or `SecretBinary` using credentials from a
500
- # different account then the AWS KMS key policy must grant
471
+ # Secrets Manager API call results in Amazon Web Services creating the
472
+ # account's Amazon Web Services-managed CMK, it can result in a
473
+ # one-time significant delay in returning the result.
474
+ #
475
+ # * If the secret resides in a different Amazon Web Services account
476
+ # from the credentials calling an API that requires encryption or
477
+ # decryption of the secret value then you must create and use a custom
478
+ # Amazon Web Services KMS CMK because you can't access the default
479
+ # CMK for the account using credentials from a different Amazon Web
480
+ # Services account. Store the ARN of the CMK in the secret when you
481
+ # create the secret or when you update it by including it in the
482
+ # `KMSKeyId`. If you call an API that must encrypt or decrypt
483
+ # `SecretString` or `SecretBinary` using credentials from a different
484
+ # account then the Amazon Web Services KMS key policy must grant
501
485
  # cross-account access to that other account's user or role for both
502
486
  # the kms:GenerateDataKey and kms:Decrypt operations.
503
487
  #
@@ -511,13 +495,15 @@ module Aws::SecretsManager
511
495
  #
512
496
  # * secretsmanager:CreateSecret
513
497
  #
514
- # * kms:GenerateDataKey - needed only if you use a customer-managed AWS
515
- # KMS key to encrypt the secret. You do not need this permission to
516
- # use the account default AWS managed CMK for Secrets Manager.
498
+ # * kms:GenerateDataKey - needed only if you use a customer-managed
499
+ # Amazon Web Services KMS key to encrypt the secret. You do not need
500
+ # this permission to use the account default Amazon Web Services
501
+ # managed CMK for Secrets Manager.
517
502
  #
518
- # * kms:Decrypt - needed only if you use a customer-managed AWS KMS key
519
- # to encrypt the secret. You do not need this permission to use the
520
- # account default AWS managed CMK for Secrets Manager.
503
+ # * kms:Decrypt - needed only if you use a customer-managed Amazon Web
504
+ # Services KMS key to encrypt the secret. You do not need this
505
+ # permission to use the account default Amazon Web Services managed
506
+ # CMK for Secrets Manager.
521
507
  #
522
508
  # * secretsmanager:TagResource - needed only if you include the `Tags`
523
509
  # parameter.
@@ -559,13 +545,13 @@ module Aws::SecretsManager
559
545
  # initial version is created as part of the secret, and this parameter
560
546
  # specifies a unique identifier for the new version.
561
547
  #
562
- # <note markdown="1"> If you use the AWS CLI or one of the AWS SDK to call this operation,
563
- # then you can leave this parameter empty. The CLI or SDK generates a
564
- # random UUID for you and includes it as the value for this parameter in
565
- # the request. If you don't use the SDK and instead generate a raw HTTP
566
- # request to the Secrets Manager service endpoint, then you must
567
- # generate a `ClientRequestToken` yourself for the new version and
568
- # include the value in the request.
548
+ # <note markdown="1"> If you use the Amazon Web Services CLI or one of the Amazon Web
549
+ # Services SDK to call this operation, then you can leave this parameter
550
+ # empty. The CLI or SDK generates a random UUID for you and includes it
551
+ # as the value for this parameter in the request. If you don't use the
552
+ # SDK and instead generate a raw HTTP request to the Secrets Manager
553
+ # service endpoint, then you must generate a `ClientRequestToken`
554
+ # yourself for the new version and include the value in the request.
569
555
  #
570
556
  # </note>
571
557
  #
@@ -601,20 +587,21 @@ module Aws::SecretsManager
601
587
  # (Optional) Specifies a user-provided description of the secret.
602
588
  #
603
589
  # @option params [String] :kms_key_id
604
- # (Optional) Specifies the ARN, Key ID, or alias of the AWS KMS customer
605
- # master key (CMK) to be used to encrypt the `SecretString` or
606
- # `SecretBinary` values in the versions stored in this secret.
590
+ # (Optional) Specifies the ARN, Key ID, or alias of the Amazon Web
591
+ # Services KMS customer master key (CMK) to be used to encrypt the
592
+ # `SecretString` or `SecretBinary` values in the versions stored in this
593
+ # secret.
607
594
  #
608
- # You can specify any of the supported ways to identify a AWS KMS key
609
- # ID. If you need to reference a CMK in a different account, you can use
610
- # only the key ARN or the alias ARN.
595
+ # You can specify any of the supported ways to identify a Amazon Web
596
+ # Services KMS key ID. If you need to reference a CMK in a different
597
+ # account, you can use only the key ARN or the alias ARN.
611
598
  #
612
599
  # If you don't specify this value, then Secrets Manager defaults to
613
- # using the AWS account's default CMK (the one named
614
- # `aws/secretsmanager`). If a AWS KMS CMK with that name doesn't yet
615
- # exist, then Secrets Manager creates it for you automatically the first
616
- # time it needs to encrypt a version's `SecretString` or `SecretBinary`
617
- # fields.
600
+ # using the Amazon Web Services account's default CMK (the one named
601
+ # `aws/secretsmanager`). If a Amazon Web Services KMS CMK with that name
602
+ # doesn't yet exist, then Secrets Manager creates it for you
603
+ # automatically the first time it needs to encrypt a version's
604
+ # `SecretString` or `SecretBinary` fields.
618
605
  #
619
606
  # You can use the account default CMK to encrypt and decrypt only if you
620
607
  # call this operation using credentials from the same account that owns
@@ -632,7 +619,8 @@ module Aws::SecretsManager
632
619
  # both. They cannot both be empty.
633
620
  #
634
621
  # This parameter is not available using the Secrets Manager console. It
635
- # can be accessed only by using the AWS CLI or one of the AWS SDKs.
622
+ # can be accessed only by using the Amazon Web Services CLI or one of
623
+ # the Amazon Web Services SDKs.
636
624
  #
637
625
  # @option params [String] :secret_string
638
626
  # (Optional) Specifies text data that you want to encrypt and store in
@@ -648,20 +636,13 @@ module Aws::SecretsManager
648
636
  # rotation function knows how to parse.
649
637
  #
650
638
  # For storing multiple values, we recommend that you use a JSON text
651
- # string argument and specify key/value pairs. For information on how to
652
- # format a JSON parameter for the various command line tool
653
- # environments, see [Using JSON for Parameters][1] in the *AWS CLI User
654
- # Guide*. For example:
655
- #
656
- # `\{"username":"bob","password":"abc123xyz456"\}`
657
- #
658
- # If your command-line tool or SDK requires quotation marks around the
659
- # parameter, you should use single quotes to avoid confusion with the
660
- # double quotes required in the JSON text.
639
+ # string argument and specify key/value pairs. For more information, see
640
+ # [Specifying parameter values for the Amazon Web Services CLI][1] in
641
+ # the Amazon Web Services CLI User Guide.
661
642
  #
662
643
  #
663
644
  #
664
- # [1]: https://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html#cli-using-param-json
645
+ # [1]: https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-parameters.html
665
646
  #
666
647
  # @option params [Array<Types::Tag>] :tags
667
648
  # (Optional) Specifies a list of user-defined tags that are attached to
@@ -680,7 +661,7 @@ module Aws::SecretsManager
680
661
  #
681
662
  # This parameter requires a JSON text string argument. For information
682
663
  # on how to format a JSON parameter for the various command line tool
683
- # environments, see [Using JSON for Parameters][1] in the *AWS CLI User
664
+ # environments, see [Using JSON for Parameters][1] in the *CLI User
684
665
  # Guide*. For example:
685
666
  #
686
667
  # `[\{"Key":"CostCenter","Value":"12345"\},\{"Key":"environment","Value":"production"\}]`
@@ -699,10 +680,10 @@ module Aws::SecretsManager
699
680
  #
700
681
  # * Tag keys and values are case sensitive.
701
682
  #
702
- # * Do not use the `aws:` prefix in your tag names or values because AWS
703
- # reserves it for AWS use. You can't edit or delete tag names or
704
- # values with this prefix. Tags with this prefix do not count against
705
- # your tags per secret limit.
683
+ # * Do not use the `aws:` prefix in your tag names or values because
684
+ # Amazon Web Services reserves it for Amazon Web Services use. You
685
+ # can't edit or delete tag names or values with this prefix. Tags
686
+ # with this prefix do not count against your tags per secret limit.
706
687
  #
707
688
  # * If you use your tagging schema across multiple services and
708
689
  # resources, remember other services might have restrictions on
@@ -819,26 +800,8 @@ module Aws::SecretsManager
819
800
  # resource-based policy for. You can specify either the Amazon Resource
820
801
  # Name (ARN) or the friendly name of the secret.
821
802
  #
822
- # <note markdown="1"> If you specify an ARN, we generally recommend that you specify a
823
- # complete ARN. You can specify a partial ARN too—for example, if you
824
- # don’t include the final hyphen and six random characters that Secrets
825
- # Manager adds at the end of the ARN when you created the secret. A
826
- # partial ARN match can work as long as it uniquely matches only one
827
- # secret. However, if your secret has a name that ends in a hyphen
828
- # followed by six characters (before Secrets Manager adds the hyphen and
829
- # six characters to the ARN) and you try to use that as a partial ARN,
830
- # then those characters cause Secrets Manager to assume that you’re
831
- # specifying a complete ARN. This confusion can cause unexpected
832
- # results. To avoid this situation, we recommend that you don’t create
833
- # secret names ending with a hyphen followed by six characters.
834
- #
835
- # If you specify an incomplete ARN without the random suffix, and
836
- # instead provide the 'friendly name', you *must* not include the
837
- # random suffix. If you do include the random suffix added by Secrets
838
- # Manager, you receive either a *ResourceNotFoundException* or an
839
- # *AccessDeniedException* error, depending on your permissions.
840
- #
841
- # </note>
803
+ # For an ARN, we recommend that you specify a complete ARN rather than a
804
+ # partial ARN.
842
805
  #
843
806
  # @return [Types::DeleteResourcePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
844
807
  #
@@ -928,26 +891,8 @@ module Aws::SecretsManager
928
891
  # Specifies the secret to delete. You can specify either the Amazon
929
892
  # Resource Name (ARN) or the friendly name of the secret.
930
893
  #
931
- # <note markdown="1"> If you specify an ARN, we generally recommend that you specify a
932
- # complete ARN. You can specify a partial ARN too—for example, if you
933
- # don’t include the final hyphen and six random characters that Secrets
934
- # Manager adds at the end of the ARN when you created the secret. A
935
- # partial ARN match can work as long as it uniquely matches only one
936
- # secret. However, if your secret has a name that ends in a hyphen
937
- # followed by six characters (before Secrets Manager adds the hyphen and
938
- # six characters to the ARN) and you try to use that as a partial ARN,
939
- # then those characters cause Secrets Manager to assume that you’re
940
- # specifying a complete ARN. This confusion can cause unexpected
941
- # results. To avoid this situation, we recommend that you don’t create
942
- # secret names ending with a hyphen followed by six characters.
943
- #
944
- # If you specify an incomplete ARN without the random suffix, and
945
- # instead provide the 'friendly name', you *must* not include the
946
- # random suffix. If you do include the random suffix added by Secrets
947
- # Manager, you receive either a *ResourceNotFoundException* or an
948
- # *AccessDeniedException* error, depending on your permissions.
949
- #
950
- # </note>
894
+ # For an ARN, we recommend that you specify a complete ARN rather than a
895
+ # partial ARN.
951
896
  #
952
897
  # @option params [Integer] :recovery_window_in_days
953
898
  # (Optional) Specifies the number of days that Secrets Manager waits
@@ -970,10 +915,10 @@ module Aws::SecretsManager
970
915
  #
971
916
  # Use this parameter with caution. This parameter causes the operation
972
917
  # to skip the normal waiting period before the permanent deletion that
973
- # AWS would normally impose with the `RecoveryWindowInDays` parameter.
974
- # If you delete a secret with the `ForceDeleteWithouRecovery` parameter,
975
- # then you have no opportunity to recover the secret. You lose the
976
- # secret permanently.
918
+ # Amazon Web Services would normally impose with the
919
+ # `RecoveryWindowInDays` parameter. If you delete a secret with the
920
+ # `ForceDeleteWithouRecovery` parameter, then you have no opportunity to
921
+ # recover the secret. You lose the secret permanently.
977
922
  #
978
923
  # If you use this parameter and include a previously deleted or
979
924
  # nonexistent secret, the operation does not return the error
@@ -1048,33 +993,16 @@ module Aws::SecretsManager
1048
993
  # * To retrieve the encrypted secret information in a version of the
1049
994
  # secret, use GetSecretValue.
1050
995
  #
1051
- # * To list all of the secrets in the AWS account, use ListSecrets.
996
+ # * To list all of the secrets in the Amazon Web Services account, use
997
+ # ListSecrets.
1052
998
  #
1053
999
  # @option params [required, String] :secret_id
1054
1000
  # The identifier of the secret whose details you want to retrieve. You
1055
1001
  # can specify either the Amazon Resource Name (ARN) or the friendly name
1056
1002
  # of the secret.
1057
1003
  #
1058
- # <note markdown="1"> If you specify an ARN, we generally recommend that you specify a
1059
- # complete ARN. You can specify a partial ARN too—for example, if you
1060
- # don’t include the final hyphen and six random characters that Secrets
1061
- # Manager adds at the end of the ARN when you created the secret. A
1062
- # partial ARN match can work as long as it uniquely matches only one
1063
- # secret. However, if your secret has a name that ends in a hyphen
1064
- # followed by six characters (before Secrets Manager adds the hyphen and
1065
- # six characters to the ARN) and you try to use that as a partial ARN,
1066
- # then those characters cause Secrets Manager to assume that you’re
1067
- # specifying a complete ARN. This confusion can cause unexpected
1068
- # results. To avoid this situation, we recommend that you don’t create
1069
- # secret names ending with a hyphen followed by six characters.
1070
- #
1071
- # If you specify an incomplete ARN without the random suffix, and
1072
- # instead provide the 'friendly name', you *must* not include the
1073
- # random suffix. If you do include the random suffix added by Secrets
1074
- # Manager, you receive either a *ResourceNotFoundException* or an
1075
- # *AccessDeniedException* error, depending on your permissions.
1076
- #
1077
- # </note>
1004
+ # For an ARN, we recommend that you specify a complete ARN rather than a
1005
+ # partial ARN.
1078
1006
  #
1079
1007
  # @return [Types::DescribeSecretResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1080
1008
  #
@@ -1318,26 +1246,8 @@ module Aws::SecretsManager
1318
1246
  # resource-based policy for. You can specify either the Amazon Resource
1319
1247
  # Name (ARN) or the friendly name of the secret.
1320
1248
  #
1321
- # <note markdown="1"> If you specify an ARN, we generally recommend that you specify a
1322
- # complete ARN. You can specify a partial ARN too—for example, if you
1323
- # don’t include the final hyphen and six random characters that Secrets
1324
- # Manager adds at the end of the ARN when you created the secret. A
1325
- # partial ARN match can work as long as it uniquely matches only one
1326
- # secret. However, if your secret has a name that ends in a hyphen
1327
- # followed by six characters (before Secrets Manager adds the hyphen and
1328
- # six characters to the ARN) and you try to use that as a partial ARN,
1329
- # then those characters cause Secrets Manager to assume that you’re
1330
- # specifying a complete ARN. This confusion can cause unexpected
1331
- # results. To avoid this situation, we recommend that you don’t create
1332
- # secret names ending with a hyphen followed by six characters.
1333
- #
1334
- # If you specify an incomplete ARN without the random suffix, and
1335
- # instead provide the 'friendly name', you *must* not include the
1336
- # random suffix. If you do include the random suffix added by Secrets
1337
- # Manager, you receive either a *ResourceNotFoundException* or an
1338
- # *AccessDeniedException* error, depending on your permissions.
1339
- #
1340
- # </note>
1249
+ # For an ARN, we recommend that you specify a complete ARN rather than a
1250
+ # partial ARN.
1341
1251
  #
1342
1252
  # @return [Types::GetResourcePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1343
1253
  #
@@ -1392,9 +1302,10 @@ module Aws::SecretsManager
1392
1302
  #
1393
1303
  # * secretsmanager:GetSecretValue
1394
1304
  #
1395
- # * kms:Decrypt - required only if you use a customer-managed AWS KMS
1396
- # key to encrypt the secret. You do not need this permission to use
1397
- # the account's default AWS managed CMK for Secrets Manager.
1305
+ # * kms:Decrypt - required only if you use a customer-managed Amazon Web
1306
+ # Services KMS key to encrypt the secret. You do not need this
1307
+ # permission to use the account's default Amazon Web Services managed
1308
+ # CMK for Secrets Manager.
1398
1309
  #
1399
1310
  # **Related operations**
1400
1311
  #
@@ -1409,26 +1320,8 @@ module Aws::SecretsManager
1409
1320
  # You can specify either the Amazon Resource Name (ARN) or the friendly
1410
1321
  # name of the secret.
1411
1322
  #
1412
- # <note markdown="1"> If you specify an ARN, we generally recommend that you specify a
1413
- # complete ARN. You can specify a partial ARN too—for example, if you
1414
- # don’t include the final hyphen and six random characters that Secrets
1415
- # Manager adds at the end of the ARN when you created the secret. A
1416
- # partial ARN match can work as long as it uniquely matches only one
1417
- # secret. However, if your secret has a name that ends in a hyphen
1418
- # followed by six characters (before Secrets Manager adds the hyphen and
1419
- # six characters to the ARN) and you try to use that as a partial ARN,
1420
- # then those characters cause Secrets Manager to assume that you’re
1421
- # specifying a complete ARN. This confusion can cause unexpected
1422
- # results. To avoid this situation, we recommend that you don’t create
1423
- # secret names ending with a hyphen followed by six characters.
1424
- #
1425
- # If you specify an incomplete ARN without the random suffix, and
1426
- # instead provide the 'friendly name', you *must* not include the
1427
- # random suffix. If you do include the random suffix added by Secrets
1428
- # Manager, you receive either a *ResourceNotFoundException* or an
1429
- # *AccessDeniedException* error, depending on your permissions.
1430
- #
1431
- # </note>
1323
+ # For an ARN, we recommend that you specify a complete ARN rather than a
1324
+ # partial ARN.
1432
1325
  #
1433
1326
  # @option params [String] :version_id
1434
1327
  # Specifies the unique identifier of the version of the secret that you
@@ -1551,26 +1444,8 @@ module Aws::SecretsManager
1551
1444
  # list. You can specify either the Amazon Resource Name (ARN) or the
1552
1445
  # friendly name of the secret.
1553
1446
  #
1554
- # <note markdown="1"> If you specify an ARN, we generally recommend that you specify a
1555
- # complete ARN. You can specify a partial ARN too—for example, if you
1556
- # don’t include the final hyphen and six random characters that Secrets
1557
- # Manager adds at the end of the ARN when you created the secret. A
1558
- # partial ARN match can work as long as it uniquely matches only one
1559
- # secret. However, if your secret has a name that ends in a hyphen
1560
- # followed by six characters (before Secrets Manager adds the hyphen and
1561
- # six characters to the ARN) and you try to use that as a partial ARN,
1562
- # then those characters cause Secrets Manager to assume that you’re
1563
- # specifying a complete ARN. This confusion can cause unexpected
1564
- # results. To avoid this situation, we recommend that you don’t create
1565
- # secret names ending with a hyphen followed by six characters.
1566
- #
1567
- # If you specify an incomplete ARN without the random suffix, and
1568
- # instead provide the 'friendly name', you *must* not include the
1569
- # random suffix. If you do include the random suffix added by Secrets
1570
- # Manager, you receive either a *ResourceNotFoundException* or an
1571
- # *AccessDeniedException* error, depending on your permissions.
1572
- #
1573
- # </note>
1447
+ # For an ARN, we recommend that you specify a complete ARN rather than a
1448
+ # partial ARN.
1574
1449
  #
1575
1450
  # @option params [Integer] :max_results
1576
1451
  # (Optional) Limits the number of results you want to include in the
@@ -1660,6 +1535,8 @@ module Aws::SecretsManager
1660
1535
  # resp.versions[0].version_stages[0] #=> String
1661
1536
  # resp.versions[0].last_accessed_date #=> Time
1662
1537
  # resp.versions[0].created_date #=> Time
1538
+ # resp.versions[0].kms_key_ids #=> Array
1539
+ # resp.versions[0].kms_key_ids[0] #=> String
1663
1540
  # resp.next_token #=> String
1664
1541
  # resp.arn #=> String
1665
1542
  # resp.name #=> String
@@ -1673,11 +1550,11 @@ module Aws::SecretsManager
1673
1550
  req.send_request(options)
1674
1551
  end
1675
1552
 
1676
- # Lists all of the secrets that are stored by Secrets Manager in the AWS
1677
- # account. To list the versions currently stored for a specific secret,
1678
- # use ListSecretVersionIds. The encrypted fields `SecretString` and
1679
- # `SecretBinary` are not included in the output. To get that
1680
- # information, call the GetSecretValue operation.
1553
+ # Lists all of the secrets that are stored by Secrets Manager in the
1554
+ # Amazon Web Services account. To list the versions currently stored for
1555
+ # a specific secret, use ListSecretVersionIds. The encrypted fields
1556
+ # `SecretString` and `SecretBinary` are not included in the output. To
1557
+ # get that information, call the GetSecretValue operation.
1681
1558
  #
1682
1559
  # <note markdown="1"> Always check the `NextToken` response parameter when calling any of
1683
1560
  # the `List*` operations. These operations can occasionally return an
@@ -1826,9 +1703,9 @@ module Aws::SecretsManager
1826
1703
  # identity-based and resource-based policies. The affected users and
1827
1704
  # roles receive the permissions that are permitted by all of the
1828
1705
  # relevant policies. For more information, see [Using Resource-Based
1829
- # Policies for AWS Secrets Manager][1]. For the complete description of
1830
- # the AWS policy syntax and grammar, see [IAM JSON Policy Reference][2]
1831
- # in the *IAM User Guide*.
1706
+ # Policies for Amazon Web Services Secrets Manager][1]. For the complete
1707
+ # description of the Amazon Web Services policy syntax and grammar, see
1708
+ # [IAM JSON Policy Reference][2] in the *IAM User Guide*.
1832
1709
  #
1833
1710
  # **Minimum permissions**
1834
1711
  #
@@ -1858,34 +1735,16 @@ module Aws::SecretsManager
1858
1735
  # policy. You can specify either the ARN or the friendly name of the
1859
1736
  # secret.
1860
1737
  #
1861
- # <note markdown="1"> If you specify an ARN, we generally recommend that you specify a
1862
- # complete ARN. You can specify a partial ARN too—for example, if you
1863
- # don’t include the final hyphen and six random characters that Secrets
1864
- # Manager adds at the end of the ARN when you created the secret. A
1865
- # partial ARN match can work as long as it uniquely matches only one
1866
- # secret. However, if your secret has a name that ends in a hyphen
1867
- # followed by six characters (before Secrets Manager adds the hyphen and
1868
- # six characters to the ARN) and you try to use that as a partial ARN,
1869
- # then those characters cause Secrets Manager to assume that you’re
1870
- # specifying a complete ARN. This confusion can cause unexpected
1871
- # results. To avoid this situation, we recommend that you don’t create
1872
- # secret names ending with a hyphen followed by six characters.
1873
- #
1874
- # If you specify an incomplete ARN without the random suffix, and
1875
- # instead provide the 'friendly name', you *must* not include the
1876
- # random suffix. If you do include the random suffix added by Secrets
1877
- # Manager, you receive either a *ResourceNotFoundException* or an
1878
- # *AccessDeniedException* error, depending on your permissions.
1879
- #
1880
- # </note>
1738
+ # For an ARN, we recommend that you specify a complete ARN rather than a
1739
+ # partial ARN.
1881
1740
  #
1882
1741
  # @option params [required, String] :resource_policy
1883
1742
  # A JSON-formatted string constructed according to the grammar and
1884
- # syntax for an AWS resource-based policy. The policy in the string
1885
- # identifies who can access or manage this secret and its versions. For
1886
- # information on how to format a JSON parameter for the various command
1887
- # line tool environments, see [Using JSON for Parameters][1] in the *AWS
1888
- # CLI User Guide*.
1743
+ # syntax for an Amazon Web Services resource-based policy. The policy in
1744
+ # the string identifies who can access or manage this secret and its
1745
+ # versions. For information on how to format a JSON parameter for the
1746
+ # various command line tool environments, see [Using JSON for
1747
+ # Parameters][1] in the *CLI User Guide*.
1889
1748
  #
1890
1749
  #
1891
1750
  #
@@ -1945,11 +1804,14 @@ module Aws::SecretsManager
1945
1804
  # `SecretBinary` value. You can also specify the staging labels that are
1946
1805
  # initially attached to the new version.
1947
1806
  #
1948
- # <note markdown="1"> The Secrets Manager console uses only the `SecretString` field. To add
1949
- # binary data to a secret with the `SecretBinary` field you must use the
1950
- # AWS CLI or one of the AWS SDKs.
1951
- #
1952
- # </note>
1807
+ # We recommend you avoid calling `PutSecretValue` at a sustained rate of
1808
+ # more than once every 10 minutes. When you update the secret value,
1809
+ # Secrets Manager creates a new version of the secret. Secrets Manager
1810
+ # removes outdated versions when there are more than 100, but it does
1811
+ # not remove versions created less than 24 hours ago. If you call
1812
+ # `PutSecretValue` more than once every 10 minutes, you create more
1813
+ # versions than Secrets Manager removes, and you will reach the quota
1814
+ # for secret versions.
1953
1815
  #
1954
1816
  # * If this operation creates the first version for the secret then
1955
1817
  # Secrets Manager automatically attaches the staging label
@@ -1973,25 +1835,27 @@ module Aws::SecretsManager
1973
1835
  #
1974
1836
  # <note markdown="1"> * If you call an operation to encrypt or decrypt the `SecretString` or
1975
1837
  # `SecretBinary` for a secret in the same account as the calling user
1976
- # and that secret doesn't specify a AWS KMS encryption key, Secrets
1977
- # Manager uses the account's default AWS managed customer master key
1978
- # (CMK) with the alias `aws/secretsmanager`. If this key doesn't
1979
- # already exist in your account then Secrets Manager creates it for
1980
- # you automatically. All users and roles in the same AWS account
1838
+ # and that secret doesn't specify a Amazon Web Services KMS
1839
+ # encryption key, Secrets Manager uses the account's default Amazon
1840
+ # Web Services managed customer master key (CMK) with the alias
1841
+ # `aws/secretsmanager`. If this key doesn't already exist in your
1842
+ # account then Secrets Manager creates it for you automatically. All
1843
+ # users and roles in the same Amazon Web Services account
1981
1844
  # automatically have access to use the default CMK. Note that if an
1982
- # Secrets Manager API call results in AWS creating the account's
1983
- # AWS-managed CMK, it can result in a one-time significant delay in
1984
- # returning the result.
1985
- #
1986
- # * If the secret resides in a different AWS account from the
1987
- # credentials calling an API that requires encryption or decryption of
1988
- # the secret value then you must create and use a custom AWS KMS CMK
1989
- # because you can't access the default CMK for the account using
1990
- # credentials from a different AWS account. Store the ARN of the CMK
1991
- # in the secret when you create the secret or when you update it by
1992
- # including it in the `KMSKeyId`. If you call an API that must encrypt
1993
- # or decrypt `SecretString` or `SecretBinary` using credentials from a
1994
- # different account then the AWS KMS key policy must grant
1845
+ # Secrets Manager API call results in Amazon Web Services creating the
1846
+ # account's Amazon Web Services-managed CMK, it can result in a
1847
+ # one-time significant delay in returning the result.
1848
+ #
1849
+ # * If the secret resides in a different Amazon Web Services account
1850
+ # from the credentials calling an API that requires encryption or
1851
+ # decryption of the secret value then you must create and use a custom
1852
+ # Amazon Web Services KMS CMK because you can't access the default
1853
+ # CMK for the account using credentials from a different Amazon Web
1854
+ # Services account. Store the ARN of the CMK in the secret when you
1855
+ # create the secret or when you update it by including it in the
1856
+ # `KMSKeyId`. If you call an API that must encrypt or decrypt
1857
+ # `SecretString` or `SecretBinary` using credentials from a different
1858
+ # account then the Amazon Web Services KMS key policy must grant
1995
1859
  # cross-account access to that other account's user or role for both
1996
1860
  # the kms:GenerateDataKey and kms:Decrypt operations.
1997
1861
  #
@@ -2003,9 +1867,10 @@ module Aws::SecretsManager
2003
1867
  #
2004
1868
  # * secretsmanager:PutSecretValue
2005
1869
  #
2006
- # * kms:GenerateDataKey - needed only if you use a customer-managed AWS
2007
- # KMS key to encrypt the secret. You do not need this permission to
2008
- # use the account's default AWS managed CMK for Secrets Manager.
1870
+ # * kms:GenerateDataKey - needed only if you use a customer-managed
1871
+ # Amazon Web Services KMS key to encrypt the secret. You do not need
1872
+ # this permission to use the account's default Amazon Web Services
1873
+ # managed CMK for Secrets Manager.
2009
1874
  #
2010
1875
  # **Related operations**
2011
1876
  #
@@ -2023,38 +1888,20 @@ module Aws::SecretsManager
2023
1888
  # specify either the Amazon Resource Name (ARN) or the friendly name of
2024
1889
  # the secret. The secret must already exist.
2025
1890
  #
2026
- # <note markdown="1"> If you specify an ARN, we generally recommend that you specify a
2027
- # complete ARN. You can specify a partial ARN too—for example, if you
2028
- # don’t include the final hyphen and six random characters that Secrets
2029
- # Manager adds at the end of the ARN when you created the secret. A
2030
- # partial ARN match can work as long as it uniquely matches only one
2031
- # secret. However, if your secret has a name that ends in a hyphen
2032
- # followed by six characters (before Secrets Manager adds the hyphen and
2033
- # six characters to the ARN) and you try to use that as a partial ARN,
2034
- # then those characters cause Secrets Manager to assume that you’re
2035
- # specifying a complete ARN. This confusion can cause unexpected
2036
- # results. To avoid this situation, we recommend that you don’t create
2037
- # secret names ending with a hyphen followed by six characters.
2038
- #
2039
- # If you specify an incomplete ARN without the random suffix, and
2040
- # instead provide the 'friendly name', you *must* not include the
2041
- # random suffix. If you do include the random suffix added by Secrets
2042
- # Manager, you receive either a *ResourceNotFoundException* or an
2043
- # *AccessDeniedException* error, depending on your permissions.
2044
- #
2045
- # </note>
1891
+ # For an ARN, we recommend that you specify a complete ARN rather than a
1892
+ # partial ARN.
2046
1893
  #
2047
1894
  # @option params [String] :client_request_token
2048
1895
  # (Optional) Specifies a unique identifier for the new version of the
2049
1896
  # secret.
2050
1897
  #
2051
- # <note markdown="1"> If you use the AWS CLI or one of the AWS SDK to call this operation,
2052
- # then you can leave this parameter empty. The CLI or SDK generates a
2053
- # random UUID for you and includes that in the request. If you don't
2054
- # use the SDK and instead generate a raw HTTP request to the Secrets
2055
- # Manager service endpoint, then you must generate a
2056
- # `ClientRequestToken` yourself for new versions and include that value
2057
- # in the request.
1898
+ # <note markdown="1"> If you use the Amazon Web Services CLI or one of the Amazon Web
1899
+ # Services SDK to call this operation, then you can leave this parameter
1900
+ # empty. The CLI or SDK generates a random UUID for you and includes
1901
+ # that in the request. If you don't use the SDK and instead generate a
1902
+ # raw HTTP request to the Secrets Manager service endpoint, then you
1903
+ # must generate a `ClientRequestToken` yourself for new versions and
1904
+ # include that value in the request.
2058
1905
  #
2059
1906
  # </note>
2060
1907
  #
@@ -2111,22 +1958,13 @@ module Aws::SecretsManager
2111
1958
  # Lambda rotation function knows how to parse.
2112
1959
  #
2113
1960
  # For storing multiple values, we recommend that you use a JSON text
2114
- # string argument and specify key/value pairs. For information on how to
2115
- # format a JSON parameter for the various command line tool
2116
- # environments, see [Using JSON for Parameters][1] in the *AWS CLI User
2117
- # Guide*.
2118
- #
2119
- # For example:
2120
- #
2121
- # `[\{"username":"bob"\},\{"password":"abc123xyz456"\}]`
2122
- #
2123
- # If your command-line tool or SDK requires quotation marks around the
2124
- # parameter, you should use single quotes to avoid confusion with the
2125
- # double quotes required in the JSON text.
1961
+ # string argument and specify key/value pairs. For more information, see
1962
+ # [Specifying parameter values for the Amazon Web Services CLI][1] in
1963
+ # the Amazon Web Services CLI User Guide.
2126
1964
  #
2127
1965
  #
2128
1966
  #
2129
- # [1]: https://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html#cli-using-param-json
1967
+ # [1]: https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-parameters.html
2130
1968
  #
2131
1969
  # @option params [Array<String>] :version_stages
2132
1970
  # (Optional) Specifies a list of staging labels that are attached to
@@ -2311,26 +2149,8 @@ module Aws::SecretsManager
2311
2149
  # scheduled deletion. You can specify either the Amazon Resource Name
2312
2150
  # (ARN) or the friendly name of the secret.
2313
2151
  #
2314
- # <note markdown="1"> If you specify an ARN, we generally recommend that you specify a
2315
- # complete ARN. You can specify a partial ARN too—for example, if you
2316
- # don’t include the final hyphen and six random characters that Secrets
2317
- # Manager adds at the end of the ARN when you created the secret. A
2318
- # partial ARN match can work as long as it uniquely matches only one
2319
- # secret. However, if your secret has a name that ends in a hyphen
2320
- # followed by six characters (before Secrets Manager adds the hyphen and
2321
- # six characters to the ARN) and you try to use that as a partial ARN,
2322
- # then those characters cause Secrets Manager to assume that you’re
2323
- # specifying a complete ARN. This confusion can cause unexpected
2324
- # results. To avoid this situation, we recommend that you don’t create
2325
- # secret names ending with a hyphen followed by six characters.
2326
- #
2327
- # If you specify an incomplete ARN without the random suffix, and
2328
- # instead provide the 'friendly name', you *must* not include the
2329
- # random suffix. If you do include the random suffix added by Secrets
2330
- # Manager, you receive either a *ResourceNotFoundException* or an
2331
- # *AccessDeniedException* error, depending on your permissions.
2332
- #
2333
- # </note>
2152
+ # For an ARN, we recommend that you specify a complete ARN rather than a
2153
+ # partial ARN.
2334
2154
  #
2335
2155
  # @return [Types::RestoreSecretResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2336
2156
  #
@@ -2380,16 +2200,17 @@ module Aws::SecretsManager
2380
2200
  # secret. After the rotation completes, the protected service and its
2381
2201
  # clients all use the new version of the secret.
2382
2202
  #
2383
- # This required configuration information includes the ARN of an AWS
2384
- # Lambda function and the time between scheduled rotations. The Lambda
2385
- # rotation function creates a new version of the secret and creates or
2386
- # updates the credentials on the protected service to match. After
2387
- # testing the new credentials, the function marks the new secret with
2388
- # the staging label `AWSCURRENT` so that your clients all immediately
2389
- # begin to use the new version. For more information about rotating
2390
- # secrets and how to configure a Lambda function to rotate the secrets
2391
- # for your protected service, see [Rotating Secrets in AWS Secrets
2392
- # Manager][1] in the *AWS Secrets Manager User Guide*.
2203
+ # This required configuration information includes the ARN of an Amazon
2204
+ # Web Services Lambda function and optionally, the time between
2205
+ # scheduled rotations. The Lambda rotation function creates a new
2206
+ # version of the secret and creates or updates the credentials on the
2207
+ # protected service to match. After testing the new credentials, the
2208
+ # function marks the new secret with the staging label `AWSCURRENT` so
2209
+ # that your clients all immediately begin to use the new version. For
2210
+ # more information about rotating secrets and how to configure a Lambda
2211
+ # function to rotate the secrets for your protected service, see
2212
+ # [Rotating Secrets in Amazon Web Services Secrets Manager][1] in the
2213
+ # *Amazon Web Services Secrets Manager User Guide*.
2393
2214
  #
2394
2215
  # Secrets Manager schedules the next rotation when the previous one
2395
2216
  # completes. Secrets Manager schedules the date by adding the rotation
@@ -2441,38 +2262,20 @@ module Aws::SecretsManager
2441
2262
  # Specifies the secret that you want to rotate. You can specify either
2442
2263
  # the Amazon Resource Name (ARN) or the friendly name of the secret.
2443
2264
  #
2444
- # <note markdown="1"> If you specify an ARN, we generally recommend that you specify a
2445
- # complete ARN. You can specify a partial ARN too—for example, if you
2446
- # don’t include the final hyphen and six random characters that Secrets
2447
- # Manager adds at the end of the ARN when you created the secret. A
2448
- # partial ARN match can work as long as it uniquely matches only one
2449
- # secret. However, if your secret has a name that ends in a hyphen
2450
- # followed by six characters (before Secrets Manager adds the hyphen and
2451
- # six characters to the ARN) and you try to use that as a partial ARN,
2452
- # then those characters cause Secrets Manager to assume that you’re
2453
- # specifying a complete ARN. This confusion can cause unexpected
2454
- # results. To avoid this situation, we recommend that you don’t create
2455
- # secret names ending with a hyphen followed by six characters.
2456
- #
2457
- # If you specify an incomplete ARN without the random suffix, and
2458
- # instead provide the 'friendly name', you *must* not include the
2459
- # random suffix. If you do include the random suffix added by Secrets
2460
- # Manager, you receive either a *ResourceNotFoundException* or an
2461
- # *AccessDeniedException* error, depending on your permissions.
2462
- #
2463
- # </note>
2265
+ # For an ARN, we recommend that you specify a complete ARN rather than a
2266
+ # partial ARN.
2464
2267
  #
2465
2268
  # @option params [String] :client_request_token
2466
2269
  # (Optional) Specifies a unique identifier for the new version of the
2467
2270
  # secret that helps ensure idempotency.
2468
2271
  #
2469
- # If you use the AWS CLI or one of the AWS SDK to call this operation,
2470
- # then you can leave this parameter empty. The CLI or SDK generates a
2471
- # random UUID for you and includes that in the request for this
2472
- # parameter. If you don't use the SDK and instead generate a raw HTTP
2473
- # request to the Secrets Manager service endpoint, then you must
2474
- # generate a `ClientRequestToken` yourself for new versions and include
2475
- # that value in the request.
2272
+ # If you use the Amazon Web Services CLI or one of the Amazon Web
2273
+ # Services SDK to call this operation, then you can leave this parameter
2274
+ # empty. The CLI or SDK generates a random UUID for you and includes
2275
+ # that in the request for this parameter. If you don't use the SDK and
2276
+ # instead generate a raw HTTP request to the Secrets Manager service
2277
+ # endpoint, then you must generate a `ClientRequestToken` yourself for
2278
+ # new versions and include that value in the request.
2476
2279
  #
2477
2280
  # You only need to specify your own value if you implement your own
2478
2281
  # retry logic and want to ensure that a given secret is not created
@@ -2576,10 +2379,10 @@ module Aws::SecretsManager
2576
2379
  #
2577
2380
  # * Tag keys and values are case sensitive.
2578
2381
  #
2579
- # * Do not use the `aws:` prefix in your tag names or values because AWS
2580
- # reserves it for AWS use. You can't edit or delete tag names or
2581
- # values with this prefix. Tags with this prefix do not count against
2582
- # your tags per secret limit.
2382
+ # * Do not use the `aws:` prefix in your tag names or values because
2383
+ # Amazon Web Services reserves it for Amazon Web Services use. You
2384
+ # can't edit or delete tag names or values with this prefix. Tags
2385
+ # with this prefix do not count against your tags per secret limit.
2583
2386
  #
2584
2387
  # * If you use your tagging schema across multiple services and
2585
2388
  # resources, remember other services might have restrictions on
@@ -2612,40 +2415,23 @@ module Aws::SecretsManager
2612
2415
  # specify either the Amazon Resource Name (ARN) or the friendly name of
2613
2416
  # the secret.
2614
2417
  #
2615
- # <note markdown="1"> If you specify an ARN, we generally recommend that you specify a
2616
- # complete ARN. You can specify a partial ARN too—for example, if you
2617
- # don’t include the final hyphen and six random characters that Secrets
2618
- # Manager adds at the end of the ARN when you created the secret. A
2619
- # partial ARN match can work as long as it uniquely matches only one
2620
- # secret. However, if your secret has a name that ends in a hyphen
2621
- # followed by six characters (before Secrets Manager adds the hyphen and
2622
- # six characters to the ARN) and you try to use that as a partial ARN,
2623
- # then those characters cause Secrets Manager to assume that you’re
2624
- # specifying a complete ARN. This confusion can cause unexpected
2625
- # results. To avoid this situation, we recommend that you don’t create
2626
- # secret names ending with a hyphen followed by six characters.
2627
- #
2628
- # If you specify an incomplete ARN without the random suffix, and
2629
- # instead provide the 'friendly name', you *must* not include the
2630
- # random suffix. If you do include the random suffix added by Secrets
2631
- # Manager, you receive either a *ResourceNotFoundException* or an
2632
- # *AccessDeniedException* error, depending on your permissions.
2633
- #
2634
- # </note>
2418
+ # For an ARN, we recommend that you specify a complete ARN rather than a
2419
+ # partial ARN.
2635
2420
  #
2636
2421
  # @option params [required, Array<Types::Tag>] :tags
2637
2422
  # The tags to attach to the secret. Each element in the list consists of
2638
2423
  # a `Key` and a `Value`.
2639
2424
  #
2640
- # This parameter to the API requires a JSON text string argument. For
2641
- # information on how to format a JSON parameter for the various command
2642
- # line tool environments, see [Using JSON for Parameters][1] in the *AWS
2643
- # CLI User Guide*. For the AWS CLI, you can also use the syntax: `--Tags
2644
- # Key="Key1",Value="Value1" Key="Key2",Value="Value2"[,…]`
2425
+ # This parameter to the API requires a JSON text string argument.
2426
+ #
2427
+ # For storing multiple values, we recommend that you use a JSON text
2428
+ # string argument and specify key/value pairs. For more information, see
2429
+ # [Specifying parameter values for the Amazon Web Services CLI][1] in
2430
+ # the Amazon Web Services CLI User Guide.
2645
2431
  #
2646
2432
  #
2647
2433
  #
2648
- # [1]: https://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html#cli-using-param-json
2434
+ # [1]: https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-parameters.html
2649
2435
  #
2650
2436
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2651
2437
  #
@@ -2720,39 +2506,23 @@ module Aws::SecretsManager
2720
2506
  # can specify either the Amazon Resource Name (ARN) or the friendly name
2721
2507
  # of the secret.
2722
2508
  #
2723
- # <note markdown="1"> If you specify an ARN, we generally recommend that you specify a
2724
- # complete ARN. You can specify a partial ARN too—for example, if you
2725
- # don’t include the final hyphen and six random characters that Secrets
2726
- # Manager adds at the end of the ARN when you created the secret. A
2727
- # partial ARN match can work as long as it uniquely matches only one
2728
- # secret. However, if your secret has a name that ends in a hyphen
2729
- # followed by six characters (before Secrets Manager adds the hyphen and
2730
- # six characters to the ARN) and you try to use that as a partial ARN,
2731
- # then those characters cause Secrets Manager to assume that you’re
2732
- # specifying a complete ARN. This confusion can cause unexpected
2733
- # results. To avoid this situation, we recommend that you don’t create
2734
- # secret names ending with a hyphen followed by six characters.
2735
- #
2736
- # If you specify an incomplete ARN without the random suffix, and
2737
- # instead provide the 'friendly name', you *must* not include the
2738
- # random suffix. If you do include the random suffix added by Secrets
2739
- # Manager, you receive either a *ResourceNotFoundException* or an
2740
- # *AccessDeniedException* error, depending on your permissions.
2741
- #
2742
- # </note>
2509
+ # For an ARN, we recommend that you specify a complete ARN rather than a
2510
+ # partial ARN.
2743
2511
  #
2744
2512
  # @option params [required, Array<String>] :tag_keys
2745
2513
  # A list of tag key names to remove from the secret. You don't specify
2746
2514
  # the value. Both the key and its associated value are removed.
2747
2515
  #
2748
- # This parameter to the API requires a JSON text string argument. For
2749
- # information on how to format a JSON parameter for the various command
2750
- # line tool environments, see [Using JSON for Parameters][1] in the *AWS
2751
- # CLI User Guide*.
2516
+ # This parameter to the API requires a JSON text string argument.
2752
2517
  #
2518
+ # For storing multiple values, we recommend that you use a JSON text
2519
+ # string argument and specify key/value pairs. For more information, see
2520
+ # [Specifying parameter values for the Amazon Web Services CLI][1] in
2521
+ # the Amazon Web Services CLI User Guide.
2753
2522
  #
2754
2523
  #
2755
- # [1]: https://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html#cli-using-param-json
2524
+ #
2525
+ # [1]: https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-parameters.html
2756
2526
  #
2757
2527
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2758
2528
  #
@@ -2786,17 +2556,27 @@ module Aws::SecretsManager
2786
2556
  req.send_request(options)
2787
2557
  end
2788
2558
 
2789
- # Modifies many of the details of the specified secret. If you include a
2790
- # `ClientRequestToken` and *either* `SecretString` or `SecretBinary`
2791
- # then it also creates a new version attached to the secret.
2559
+ # Modifies many of the details of the specified secret.
2792
2560
  #
2793
- # To modify the rotation configuration of a secret, use RotateSecret
2561
+ # To change the secret value, you can also use PutSecretValue.
2562
+ #
2563
+ # To change the rotation configuration of a secret, use RotateSecret
2794
2564
  # instead.
2795
2565
  #
2566
+ # We recommend you avoid calling `UpdateSecret` at a sustained rate of
2567
+ # more than once every 10 minutes. When you call `UpdateSecret` to
2568
+ # update the secret value, Secrets Manager creates a new version of the
2569
+ # secret. Secrets Manager removes outdated versions when there are more
2570
+ # than 100, but it does not remove versions created less than 24 hours
2571
+ # ago. If you update the secret value more than once every 10 minutes,
2572
+ # you create more versions than Secrets Manager removes, and you will
2573
+ # reach the quota for secret versions.
2574
+ #
2796
2575
  # <note markdown="1"> The Secrets Manager console uses only the `SecretString` parameter and
2797
2576
  # therefore limits you to encrypting and storing only a text string. To
2798
2577
  # encrypt and store binary data as part of the version of a secret, you
2799
- # must use either the AWS CLI or one of the AWS SDKs.
2578
+ # must use either the Amazon Web Services CLI or one of the Amazon Web
2579
+ # Services SDKs.
2800
2580
  #
2801
2581
  # </note>
2802
2582
  #
@@ -2811,25 +2591,27 @@ module Aws::SecretsManager
2811
2591
  #
2812
2592
  # <note markdown="1"> * If you call an operation to encrypt or decrypt the `SecretString` or
2813
2593
  # `SecretBinary` for a secret in the same account as the calling user
2814
- # and that secret doesn't specify a AWS KMS encryption key, Secrets
2815
- # Manager uses the account's default AWS managed customer master key
2816
- # (CMK) with the alias `aws/secretsmanager`. If this key doesn't
2817
- # already exist in your account then Secrets Manager creates it for
2818
- # you automatically. All users and roles in the same AWS account
2594
+ # and that secret doesn't specify a Amazon Web Services KMS
2595
+ # encryption key, Secrets Manager uses the account's default Amazon
2596
+ # Web Services managed customer master key (CMK) with the alias
2597
+ # `aws/secretsmanager`. If this key doesn't already exist in your
2598
+ # account then Secrets Manager creates it for you automatically. All
2599
+ # users and roles in the same Amazon Web Services account
2819
2600
  # automatically have access to use the default CMK. Note that if an
2820
- # Secrets Manager API call results in AWS creating the account's
2821
- # AWS-managed CMK, it can result in a one-time significant delay in
2822
- # returning the result.
2823
- #
2824
- # * If the secret resides in a different AWS account from the
2825
- # credentials calling an API that requires encryption or decryption of
2826
- # the secret value then you must create and use a custom AWS KMS CMK
2827
- # because you can't access the default CMK for the account using
2828
- # credentials from a different AWS account. Store the ARN of the CMK
2829
- # in the secret when you create the secret or when you update it by
2830
- # including it in the `KMSKeyId`. If you call an API that must encrypt
2831
- # or decrypt `SecretString` or `SecretBinary` using credentials from a
2832
- # different account then the AWS KMS key policy must grant
2601
+ # Secrets Manager API call results in Amazon Web Services creating the
2602
+ # account's Amazon Web Services-managed CMK, it can result in a
2603
+ # one-time significant delay in returning the result.
2604
+ #
2605
+ # * If the secret resides in a different Amazon Web Services account
2606
+ # from the credentials calling an API that requires encryption or
2607
+ # decryption of the secret value then you must create and use a custom
2608
+ # Amazon Web Services KMS CMK because you can't access the default
2609
+ # CMK for the account using credentials from a different Amazon Web
2610
+ # Services account. Store the ARN of the CMK in the secret when you
2611
+ # create the secret or when you update it by including it in the
2612
+ # `KMSKeyId`. If you call an API that must encrypt or decrypt
2613
+ # `SecretString` or `SecretBinary` using credentials from a different
2614
+ # account then the Amazon Web Services KMS key policy must grant
2833
2615
  # cross-account access to that other account's user or role for both
2834
2616
  # the kms:GenerateDataKey and kms:Decrypt operations.
2835
2617
  #
@@ -2841,13 +2623,15 @@ module Aws::SecretsManager
2841
2623
  #
2842
2624
  # * secretsmanager:UpdateSecret
2843
2625
  #
2844
- # * kms:GenerateDataKey - needed only if you use a custom AWS KMS key to
2845
- # encrypt the secret. You do not need this permission to use the
2846
- # account's AWS managed CMK for Secrets Manager.
2626
+ # * kms:GenerateDataKey - needed only if you use a custom Amazon Web
2627
+ # Services KMS key to encrypt the secret. You do not need this
2628
+ # permission to use the account's Amazon Web Services managed CMK for
2629
+ # Secrets Manager.
2847
2630
  #
2848
- # * kms:Decrypt - needed only if you use a custom AWS KMS key to encrypt
2849
- # the secret. You do not need this permission to use the account's
2850
- # AWS managed CMK for Secrets Manager.
2631
+ # * kms:Decrypt - needed only if you use a custom Amazon Web Services
2632
+ # KMS key to encrypt the secret. You do not need this permission to
2633
+ # use the account's Amazon Web Services managed CMK for Secrets
2634
+ # Manager.
2851
2635
  #
2852
2636
  # **Related operations**
2853
2637
  #
@@ -2865,39 +2649,21 @@ module Aws::SecretsManager
2865
2649
  # add a new version. You can specify either the Amazon Resource Name
2866
2650
  # (ARN) or the friendly name of the secret.
2867
2651
  #
2868
- # <note markdown="1"> If you specify an ARN, we generally recommend that you specify a
2869
- # complete ARN. You can specify a partial ARN too—for example, if you
2870
- # don’t include the final hyphen and six random characters that Secrets
2871
- # Manager adds at the end of the ARN when you created the secret. A
2872
- # partial ARN match can work as long as it uniquely matches only one
2873
- # secret. However, if your secret has a name that ends in a hyphen
2874
- # followed by six characters (before Secrets Manager adds the hyphen and
2875
- # six characters to the ARN) and you try to use that as a partial ARN,
2876
- # then those characters cause Secrets Manager to assume that you’re
2877
- # specifying a complete ARN. This confusion can cause unexpected
2878
- # results. To avoid this situation, we recommend that you don’t create
2879
- # secret names ending with a hyphen followed by six characters.
2880
- #
2881
- # If you specify an incomplete ARN without the random suffix, and
2882
- # instead provide the 'friendly name', you *must* not include the
2883
- # random suffix. If you do include the random suffix added by Secrets
2884
- # Manager, you receive either a *ResourceNotFoundException* or an
2885
- # *AccessDeniedException* error, depending on your permissions.
2886
- #
2887
- # </note>
2652
+ # For an ARN, we recommend that you specify a complete ARN rather than a
2653
+ # partial ARN.
2888
2654
  #
2889
2655
  # @option params [String] :client_request_token
2890
2656
  # (Optional) If you want to add a new version to the secret, this
2891
2657
  # parameter specifies a unique identifier for the new version that helps
2892
2658
  # ensure idempotency.
2893
2659
  #
2894
- # If you use the AWS CLI or one of the AWS SDK to call this operation,
2895
- # then you can leave this parameter empty. The CLI or SDK generates a
2896
- # random UUID for you and includes that in the request. If you don't
2897
- # use the SDK and instead generate a raw HTTP request to the Secrets
2898
- # Manager service endpoint, then you must generate a
2899
- # `ClientRequestToken` yourself for new versions and include that value
2900
- # in the request.
2660
+ # If you use the Amazon Web Services CLI or one of the Amazon Web
2661
+ # Services SDK to call this operation, then you can leave this parameter
2662
+ # empty. The CLI or SDK generates a random UUID for you and includes
2663
+ # that in the request. If you don't use the SDK and instead generate a
2664
+ # raw HTTP request to the Secrets Manager service endpoint, then you
2665
+ # must generate a `ClientRequestToken` yourself for new versions and
2666
+ # include that value in the request.
2901
2667
  #
2902
2668
  # You typically only need to interact with this value if you implement
2903
2669
  # your own retry logic and want to ensure that a given secret is not
@@ -2935,9 +2701,13 @@ module Aws::SecretsManager
2935
2701
  # secret.
2936
2702
  #
2937
2703
  # @option params [String] :kms_key_id
2938
- # (Optional) Specifies an updated ARN or alias of the AWS KMS customer
2939
- # master key (CMK) to be used to encrypt the protected text in new
2940
- # versions of this secret.
2704
+ # (Optional) Specifies an updated ARN or alias of the Amazon Web
2705
+ # Services KMS customer master key (CMK) that Secrets Manager uses to
2706
+ # encrypt the protected text in new versions of this secret as well as
2707
+ # any existing versions of this secret that have the staging labels
2708
+ # AWSCURRENT, AWSPENDING, or AWSPREVIOUS. For more information about
2709
+ # staging labels, see [Staging Labels][1] in the *Amazon Web Services
2710
+ # Secrets Manager User Guide*.
2941
2711
  #
2942
2712
  # You can only use the account's default CMK to encrypt and decrypt if
2943
2713
  # you call this operation using credentials from the same account that
@@ -2946,6 +2716,10 @@ module Aws::SecretsManager
2946
2716
  # field. The user making the call must have permissions to both the
2947
2717
  # secret and the CMK in their respective accounts.
2948
2718
  #
2719
+ #
2720
+ #
2721
+ # [1]: https://docs.aws.amazon.com/secretsmanager/latest/userguide/terms-concepts.html#term_staging-label
2722
+ #
2949
2723
  # @option params [String, StringIO, File] :secret_binary
2950
2724
  # (Optional) Specifies updated binary data that you want to encrypt and
2951
2725
  # store in the new version of the secret. To use this parameter in the
@@ -2970,25 +2744,13 @@ module Aws::SecretsManager
2970
2744
  # Lambda rotation function knows how to parse.
2971
2745
  #
2972
2746
  # For storing multiple values, we recommend that you use a JSON text
2973
- # string argument and specify key/value pairs. For information on how to
2974
- # format a JSON parameter for the various command line tool
2975
- # environments, see [Using JSON for Parameters][1] in the *AWS CLI User
2976
- # Guide*. For example:
2747
+ # string argument and specify key/value pairs. For more information, see
2748
+ # [Specifying parameter values for the Amazon Web Services CLI][1] in
2749
+ # the Amazon Web Services CLI User Guide.
2977
2750
  #
2978
- # `[\{"username":"bob"\},\{"password":"abc123xyz456"\}]`
2979
2751
  #
2980
- # If your command-line tool or SDK requires quotation marks around the
2981
- # parameter, you should use single quotes to avoid confusion with the
2982
- # double quotes required in the JSON text. You can also 'escape' the
2983
- # double quote character in the embedded JSON text by prefacing each
2984
- # with a backslash. For example, the following string is surrounded by
2985
- # double-quotes. All of the embedded double quotes are escaped:
2986
2752
  #
2987
- # `"[\{"username":"bob"\},\{"password":"abc123xyz456"\}]"`
2988
- #
2989
- #
2990
- #
2991
- # [1]: https://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html#cli-using-param-json
2753
+ # [1]: https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-parameters.html
2992
2754
  #
2993
2755
  # @return [Types::UpdateSecretResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2994
2756
  #
@@ -3078,8 +2840,8 @@ module Aws::SecretsManager
3078
2840
  # of a secret at a time. If a staging label to be added is already
3079
2841
  # attached to another version, then it is moved--removed from the other
3080
2842
  # version first and then attached to this one. For more information
3081
- # about staging labels, see [Staging Labels][1] in the *AWS Secrets
3082
- # Manager User Guide*.
2843
+ # about staging labels, see [Staging Labels][1] in the *Amazon Web
2844
+ # Services Secrets Manager User Guide*.
3083
2845
  #
3084
2846
  # The staging labels that you specify in the `VersionStage` parameter
3085
2847
  # are added to the existing list of staging labels--they don't replace
@@ -3123,26 +2885,8 @@ module Aws::SecretsManager
3123
2885
  # you want to modify. You can specify either the Amazon Resource Name
3124
2886
  # (ARN) or the friendly name of the secret.
3125
2887
  #
3126
- # <note markdown="1"> If you specify an ARN, we generally recommend that you specify a
3127
- # complete ARN. You can specify a partial ARN too—for example, if you
3128
- # don’t include the final hyphen and six random characters that Secrets
3129
- # Manager adds at the end of the ARN when you created the secret. A
3130
- # partial ARN match can work as long as it uniquely matches only one
3131
- # secret. However, if your secret has a name that ends in a hyphen
3132
- # followed by six characters (before Secrets Manager adds the hyphen and
3133
- # six characters to the ARN) and you try to use that as a partial ARN,
3134
- # then those characters cause Secrets Manager to assume that you’re
3135
- # specifying a complete ARN. This confusion can cause unexpected
3136
- # results. To avoid this situation, we recommend that you don’t create
3137
- # secret names ending with a hyphen followed by six characters.
3138
- #
3139
- # If you specify an incomplete ARN without the random suffix, and
3140
- # instead provide the 'friendly name', you *must* not include the
3141
- # random suffix. If you do include the random suffix added by Secrets
3142
- # Manager, you receive either a *ResourceNotFoundException* or an
3143
- # *AccessDeniedException* error, depending on your permissions.
3144
- #
3145
- # </note>
2888
+ # For an ARN, we recommend that you specify a complete ARN rather than a
2889
+ # partial ARN.
3146
2890
  #
3147
2891
  # @option params [required, String] :version_stage
3148
2892
  # The staging label to add to this version.
@@ -3281,34 +3025,16 @@ module Aws::SecretsManager
3281
3025
  # you want to validate. You can specify either the Amazon Resource Name
3282
3026
  # (ARN) or the friendly name of the secret.
3283
3027
  #
3284
- # <note markdown="1"> If you specify an ARN, we generally recommend that you specify a
3285
- # complete ARN. You can specify a partial ARN too—for example, if you
3286
- # don’t include the final hyphen and six random characters that Secrets
3287
- # Manager adds at the end of the ARN when you created the secret. A
3288
- # partial ARN match can work as long as it uniquely matches only one
3289
- # secret. However, if your secret has a name that ends in a hyphen
3290
- # followed by six characters (before Secrets Manager adds the hyphen and
3291
- # six characters to the ARN) and you try to use that as a partial ARN,
3292
- # then those characters cause Secrets Manager to assume that you’re
3293
- # specifying a complete ARN. This confusion can cause unexpected
3294
- # results. To avoid this situation, we recommend that you don’t create
3295
- # secret names ending with a hyphen followed by six characters.
3296
- #
3297
- # If you specify an incomplete ARN without the random suffix, and
3298
- # instead provide the 'friendly name', you *must* not include the
3299
- # random suffix. If you do include the random suffix added by Secrets
3300
- # Manager, you receive either a *ResourceNotFoundException* or an
3301
- # *AccessDeniedException* error, depending on your permissions.
3302
- #
3303
- # </note>
3028
+ # For an ARN, we recommend that you specify a complete ARN rather than a
3029
+ # partial ARN.
3304
3030
  #
3305
3031
  # @option params [required, String] :resource_policy
3306
3032
  # A JSON-formatted string constructed according to the grammar and
3307
- # syntax for an AWS resource-based policy. The policy in the string
3308
- # identifies who can access or manage this secret and its versions. For
3309
- # information on how to format a JSON parameter for the various command
3310
- # line tool environments, see [Using JSON for Parameters][1] in the *AWS
3311
- # CLI User Guide*.publi
3033
+ # syntax for an Amazon Web Services resource-based policy. The policy in
3034
+ # the string identifies who can access or manage this secret and its
3035
+ # versions. For information on how to format a JSON parameter for the
3036
+ # various command line tool environments, see [Using JSON for
3037
+ # Parameters][1] in the *CLI User Guide*.publi
3312
3038
  #
3313
3039
  #
3314
3040
  #
@@ -3372,7 +3098,7 @@ module Aws::SecretsManager
3372
3098
  params: params,
3373
3099
  config: config)
3374
3100
  context[:gem_name] = 'aws-sdk-secretsmanager'
3375
- context[:gem_version] = '1.47.0'
3101
+ context[:gem_version] = '1.51.0'
3376
3102
  Seahorse::Client::Request.new(handlers, context)
3377
3103
  end
3378
3104