aws-sdk-secretsmanager 1.37.1 → 1.42.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/aws-sdk-secretsmanager.rb +5 -2
- data/lib/aws-sdk-secretsmanager/client.rb +398 -194
- data/lib/aws-sdk-secretsmanager/client_api.rb +58 -0
- data/lib/aws-sdk-secretsmanager/errors.rb +18 -0
- data/lib/aws-sdk-secretsmanager/resource.rb +2 -0
- data/lib/aws-sdk-secretsmanager/types.rb +397 -97
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 27bde9c73e8932de364c630b52db249ab97730193b05cfcd77d0f48ba4dff85c
|
4
|
+
data.tar.gz: 383c505042824f7adb3b462e03d7be719ff4e18b6da6232cdfb4a4d3ddd8f304
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 64cbcc749e96e300c06d603ebb77a9441d6f1bd3643ea4b6cafc73da0f9d053bbe5b719e49aaca878186fad94c42bf493dbe67d42cdfa369757e7d5dd1b6facd
|
7
|
+
data.tar.gz: 7b6979622238a0b9ab172539c82f36626c3bdc6622b70f91ae3e121008e4938b5e917495499b0ac82b2e50965538606d41664889d853804cdbf710c22b2cfe31
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
# WARNING ABOUT GENERATED CODE
|
2
4
|
#
|
3
5
|
# This file is generated. See the contributing guide for more information:
|
@@ -5,6 +7,7 @@
|
|
5
7
|
#
|
6
8
|
# WARNING ABOUT GENERATED CODE
|
7
9
|
|
10
|
+
|
8
11
|
require 'aws-sdk-core'
|
9
12
|
require 'aws-sigv4'
|
10
13
|
|
@@ -42,9 +45,9 @@ require_relative 'aws-sdk-secretsmanager/customizations'
|
|
42
45
|
#
|
43
46
|
# See {Errors} for more information.
|
44
47
|
#
|
45
|
-
#
|
48
|
+
# @!group service
|
46
49
|
module Aws::SecretsManager
|
47
50
|
|
48
|
-
GEM_VERSION = '1.
|
51
|
+
GEM_VERSION = '1.42.0'
|
49
52
|
|
50
53
|
end
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
# WARNING ABOUT GENERATED CODE
|
2
4
|
#
|
3
5
|
# This file is generated. See the contributing guide for more information:
|
@@ -83,13 +85,28 @@ module Aws::SecretsManager
|
|
83
85
|
# * `Aws::Credentials` - Used for configuring static, non-refreshing
|
84
86
|
# credentials.
|
85
87
|
#
|
88
|
+
# * `Aws::SharedCredentials` - Used for loading static credentials from a
|
89
|
+
# shared file, such as `~/.aws/config`.
|
90
|
+
#
|
91
|
+
# * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
|
92
|
+
#
|
93
|
+
# * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
|
94
|
+
# assume a role after providing credentials via the web.
|
95
|
+
#
|
96
|
+
# * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
|
97
|
+
# access token generated from `aws login`.
|
98
|
+
#
|
99
|
+
# * `Aws::ProcessCredentials` - Used for loading credentials from a
|
100
|
+
# process that outputs to stdout.
|
101
|
+
#
|
86
102
|
# * `Aws::InstanceProfileCredentials` - Used for loading credentials
|
87
103
|
# from an EC2 IMDS on an EC2 instance.
|
88
104
|
#
|
89
|
-
# * `Aws::
|
90
|
-
#
|
105
|
+
# * `Aws::ECSCredentials` - Used for loading credentials from
|
106
|
+
# instances running in ECS.
|
91
107
|
#
|
92
|
-
# * `Aws::
|
108
|
+
# * `Aws::CognitoIdentityCredentials` - Used for loading credentials
|
109
|
+
# from the Cognito Identity service.
|
93
110
|
#
|
94
111
|
# When `:credentials` are not configured directly, the following
|
95
112
|
# locations will be searched for credentials:
|
@@ -99,10 +116,10 @@ module Aws::SecretsManager
|
|
99
116
|
# * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
|
100
117
|
# * `~/.aws/credentials`
|
101
118
|
# * `~/.aws/config`
|
102
|
-
# * EC2 IMDS instance profile - When used by default, the timeouts
|
103
|
-
# very aggressive. Construct and pass an instance of
|
104
|
-
# `Aws::InstanceProfileCredentails`
|
105
|
-
# timeouts.
|
119
|
+
# * EC2/ECS IMDS instance profile - When used by default, the timeouts
|
120
|
+
# are very aggressive. Construct and pass an instance of
|
121
|
+
# `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
|
122
|
+
# enable retries and extended timeouts.
|
106
123
|
#
|
107
124
|
# @option options [required, String] :region
|
108
125
|
# The AWS region to connect to. The configured `:region` is
|
@@ -321,20 +338,20 @@ module Aws::SecretsManager
|
|
321
338
|
# @!group API Operations
|
322
339
|
|
323
340
|
# Disables automatic scheduled rotation and cancels the rotation of a
|
324
|
-
# secret if
|
341
|
+
# secret if currently in progress.
|
325
342
|
#
|
326
343
|
# To re-enable scheduled rotation, call RotateSecret with
|
327
344
|
# `AutomaticallyRotateAfterDays` set to a value greater than 0. This
|
328
|
-
#
|
345
|
+
# immediately rotates your secret and then enables the automatic
|
329
346
|
# schedule.
|
330
347
|
#
|
331
|
-
# <note markdown="1"> If you cancel a rotation
|
332
|
-
# `VersionStage` labels in an unexpected state. Depending on
|
333
|
-
#
|
334
|
-
#
|
335
|
-
#
|
348
|
+
# <note markdown="1"> If you cancel a rotation while in progress, it can leave the
|
349
|
+
# `VersionStage` labels in an unexpected state. Depending on the step of
|
350
|
+
# the rotation in progress, you might need to remove the staging label
|
351
|
+
# `AWSPENDING` from the partially created version, specified by the
|
352
|
+
# `VersionId` response value. You should also evaluate the partially
|
336
353
|
# rotated new version to see if it should be deleted, which you can do
|
337
|
-
# by removing all staging labels from the new version
|
354
|
+
# by removing all staging labels from the new version `VersionStage`
|
338
355
|
# field.
|
339
356
|
#
|
340
357
|
# </note>
|
@@ -342,12 +359,12 @@ module Aws::SecretsManager
|
|
342
359
|
# To successfully start a rotation, the staging label `AWSPENDING` must
|
343
360
|
# be in one of the following states:
|
344
361
|
#
|
345
|
-
# * Not
|
362
|
+
# * Not attached to any version at all
|
346
363
|
#
|
347
364
|
# * Attached to the same version as the staging label `AWSCURRENT`
|
348
365
|
#
|
349
|
-
# If the staging label `AWSPENDING`
|
350
|
-
#
|
366
|
+
# If the staging label `AWSPENDING` attached to a different version than
|
367
|
+
# the version with `AWSCURRENT` then the attempt to rotate fails.
|
351
368
|
#
|
352
369
|
# **Minimum permissions**
|
353
370
|
#
|
@@ -371,9 +388,9 @@ module Aws::SecretsManager
|
|
371
388
|
# ListSecretVersionIds.
|
372
389
|
#
|
373
390
|
# @option params [required, String] :secret_id
|
374
|
-
# Specifies the secret
|
375
|
-
#
|
376
|
-
#
|
391
|
+
# Specifies the secret to cancel a rotation request. You can specify
|
392
|
+
# either the Amazon Resource Name (ARN) or the friendly name of the
|
393
|
+
# secret.
|
377
394
|
#
|
378
395
|
# <note markdown="1"> If you specify an ARN, we generally recommend that you specify a
|
379
396
|
# complete ARN. You can specify a partial ARN too—for example, if you
|
@@ -386,7 +403,13 @@ module Aws::SecretsManager
|
|
386
403
|
# then those characters cause Secrets Manager to assume that you’re
|
387
404
|
# specifying a complete ARN. This confusion can cause unexpected
|
388
405
|
# results. To avoid this situation, we recommend that you don’t create
|
389
|
-
# secret names
|
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.
|
390
413
|
#
|
391
414
|
# </note>
|
392
415
|
#
|
@@ -445,7 +468,7 @@ module Aws::SecretsManager
|
|
445
468
|
# version is in the rotation cycle. The `SecretVersionsToStages` field
|
446
469
|
# of the secret contains the mapping of staging labels to the active
|
447
470
|
# versions of the secret. Versions without a staging label are
|
448
|
-
# considered deprecated and
|
471
|
+
# considered deprecated and not included in the list.
|
449
472
|
#
|
450
473
|
# You provide the secret data to be encrypted by putting text in either
|
451
474
|
# the `SecretString` parameter or binary data in the `SecretBinary`
|
@@ -454,29 +477,29 @@ module Aws::SecretsManager
|
|
454
477
|
# version and automatically attaches the staging label `AWSCURRENT` to
|
455
478
|
# the new version.
|
456
479
|
#
|
457
|
-
# <note markdown="1"> * If you call an operation
|
458
|
-
# `
|
459
|
-
#
|
460
|
-
#
|
461
|
-
#
|
462
|
-
#
|
463
|
-
#
|
464
|
-
#
|
465
|
-
#
|
466
|
-
#
|
467
|
-
#
|
468
|
-
#
|
469
|
-
# * If the secret
|
470
|
-
# calling an API that requires encryption or decryption of
|
471
|
-
# value then you must create and use a custom AWS KMS CMK
|
472
|
-
# can't access the default CMK for the account using
|
473
|
-
# a different AWS account. Store the ARN of the CMK
|
474
|
-
# you create the secret or when you update it by
|
475
|
-
# `KMSKeyId`. If you call an API that must encrypt
|
476
|
-
# `SecretString` or `SecretBinary` using credentials from a
|
477
|
-
# account then the AWS KMS key policy must grant
|
478
|
-
# to that other account's user or role for both
|
479
|
-
# kms:GenerateDataKey and kms:Decrypt operations.
|
480
|
+
# <note markdown="1"> * If you call an operation to encrypt or decrypt the `SecretString` or
|
481
|
+
# `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
|
487
|
+
# 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
|
501
|
+
# cross-account access to that other account's user or role for both
|
502
|
+
# the kms:GenerateDataKey and kms:Decrypt operations.
|
480
503
|
#
|
481
504
|
# </note>
|
482
505
|
#
|
@@ -490,11 +513,11 @@ module Aws::SecretsManager
|
|
490
513
|
#
|
491
514
|
# * kms:GenerateDataKey - needed only if you use a customer-managed AWS
|
492
515
|
# KMS key to encrypt the secret. You do not need this permission to
|
493
|
-
# use the account
|
516
|
+
# use the account default AWS managed CMK for Secrets Manager.
|
494
517
|
#
|
495
518
|
# * kms:Decrypt - needed only if you use a customer-managed AWS KMS key
|
496
519
|
# to encrypt the secret. You do not need this permission to use the
|
497
|
-
# account
|
520
|
+
# account default AWS managed CMK for Secrets Manager.
|
498
521
|
#
|
499
522
|
# * secretsmanager:TagResource - needed only if you include the `Tags`
|
500
523
|
# parameter.
|
@@ -524,11 +547,10 @@ module Aws::SecretsManager
|
|
524
547
|
# The secret name must be ASCII letters, digits, or the following
|
525
548
|
# characters : /\_+=.@-
|
526
549
|
#
|
527
|
-
# <note markdown="1">
|
550
|
+
# <note markdown="1"> Do not end your secret name with a hyphen followed by six characters.
|
528
551
|
# If you do so, you risk confusion and unexpected results when searching
|
529
|
-
# for a secret by partial ARN.
|
530
|
-
#
|
531
|
-
# the ARN.
|
552
|
+
# for a secret by partial ARN. Secrets Manager automatically adds a
|
553
|
+
# hyphen and six random characters at the end of the ARN.
|
532
554
|
#
|
533
555
|
# </note>
|
534
556
|
#
|
@@ -543,7 +565,7 @@ module Aws::SecretsManager
|
|
543
565
|
# the request. If you don't use the SDK and instead generate a raw HTTP
|
544
566
|
# request to the Secrets Manager service endpoint, then you must
|
545
567
|
# generate a `ClientRequestToken` yourself for the new version and
|
546
|
-
# include
|
568
|
+
# include the value in the request.
|
547
569
|
#
|
548
570
|
# </note>
|
549
571
|
#
|
@@ -556,10 +578,9 @@ module Aws::SecretsManager
|
|
556
578
|
# * If the `ClientRequestToken` value isn't already associated with a
|
557
579
|
# version of the secret then a new version of the secret is created.
|
558
580
|
#
|
559
|
-
# * If a version with this value already exists and
|
581
|
+
# * If a version with this value already exists and the version
|
560
582
|
# `SecretString` and `SecretBinary` values are the same as those in
|
561
|
-
# the request, then the request is ignored
|
562
|
-
# idempotent).
|
583
|
+
# the request, then the request is ignored.
|
563
584
|
#
|
564
585
|
# * If a version with this value already exists and that version's
|
565
586
|
# `SecretString` and `SecretBinary` values are different from those in
|
@@ -595,12 +616,12 @@ module Aws::SecretsManager
|
|
595
616
|
# time it needs to encrypt a version's `SecretString` or `SecretBinary`
|
596
617
|
# fields.
|
597
618
|
#
|
598
|
-
# You can use the account
|
599
|
-
#
|
600
|
-
#
|
619
|
+
# You can use the account default CMK to encrypt and decrypt only if you
|
620
|
+
# call this operation using credentials from the same account that owns
|
621
|
+
# the secret. If the secret resides in a different account, then you
|
601
622
|
# must create a custom CMK and specify the ARN in this field.
|
602
623
|
#
|
603
|
-
# @option params [String,
|
624
|
+
# @option params [String, StringIO, File] :secret_binary
|
604
625
|
# (Optional) Specifies binary data that you want to encrypt and store in
|
605
626
|
# the new version of the secret. To use this parameter in the
|
606
627
|
# command-line tools, we recommend that you store your binary data in a
|
@@ -632,7 +653,7 @@ module Aws::SecretsManager
|
|
632
653
|
# environments, see [Using JSON for Parameters][1] in the *AWS CLI User
|
633
654
|
# Guide*. For example:
|
634
655
|
#
|
635
|
-
#
|
656
|
+
# `\{"username":"bob","password":"abc123xyz456"\}`
|
636
657
|
#
|
637
658
|
# If your command-line tool or SDK requires quotation marks around the
|
638
659
|
# parameter, you should use single quotes to avoid confusion with the
|
@@ -678,16 +699,16 @@ module Aws::SecretsManager
|
|
678
699
|
#
|
679
700
|
# * Tag keys and values are case sensitive.
|
680
701
|
#
|
681
|
-
# * Do not use the `aws:` prefix in your tag names or values because
|
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
|
683
704
|
# values with this prefix. Tags with this prefix do not count against
|
684
705
|
# your tags per secret limit.
|
685
706
|
#
|
686
|
-
# * If your tagging schema
|
687
|
-
# resources, remember
|
688
|
-
# allowed characters. Generally allowed characters
|
689
|
-
#
|
690
|
-
#
|
707
|
+
# * If you use your tagging schema across multiple services and
|
708
|
+
# resources, remember other services might have restrictions on
|
709
|
+
# allowed characters. Generally allowed characters: letters, spaces,
|
710
|
+
# and numbers representable in UTF-8, plus the following special
|
711
|
+
# characters: + - = . \_ : / @.
|
691
712
|
#
|
692
713
|
#
|
693
714
|
#
|
@@ -751,8 +772,7 @@ module Aws::SecretsManager
|
|
751
772
|
req.send_request(options)
|
752
773
|
end
|
753
774
|
|
754
|
-
# Deletes the resource-based permission policy
|
755
|
-
# secret.
|
775
|
+
# Deletes the resource-based permission policy attached to the secret.
|
756
776
|
#
|
757
777
|
# **Minimum permissions**
|
758
778
|
#
|
@@ -787,7 +807,13 @@ module Aws::SecretsManager
|
|
787
807
|
# then those characters cause Secrets Manager to assume that you’re
|
788
808
|
# specifying a complete ARN. This confusion can cause unexpected
|
789
809
|
# results. To avoid this situation, we recommend that you don’t create
|
790
|
-
# secret names
|
810
|
+
# secret names ending with a hyphen followed by six characters.
|
811
|
+
#
|
812
|
+
# If you specify an incomplete ARN without the random suffix, and
|
813
|
+
# instead provide the 'friendly name', you *must* not include the
|
814
|
+
# random suffix. If you do include the random suffix added by Secrets
|
815
|
+
# Manager, you receive either a *ResourceNotFoundException* or an
|
816
|
+
# *AccessDeniedException* error, depending on your permissions.
|
791
817
|
#
|
792
818
|
# </note>
|
793
819
|
#
|
@@ -890,7 +916,13 @@ module Aws::SecretsManager
|
|
890
916
|
# then those characters cause Secrets Manager to assume that you’re
|
891
917
|
# specifying a complete ARN. This confusion can cause unexpected
|
892
918
|
# results. To avoid this situation, we recommend that you don’t create
|
893
|
-
# secret names
|
919
|
+
# secret names ending with a hyphen followed by six characters.
|
920
|
+
#
|
921
|
+
# If you specify an incomplete ARN without the random suffix, and
|
922
|
+
# instead provide the 'friendly name', you *must* not include the
|
923
|
+
# random suffix. If you do include the random suffix added by Secrets
|
924
|
+
# Manager, you receive either a *ResourceNotFoundException* or an
|
925
|
+
# *AccessDeniedException* error, depending on your permissions.
|
894
926
|
#
|
895
927
|
# </note>
|
896
928
|
#
|
@@ -968,8 +1000,8 @@ module Aws::SecretsManager
|
|
968
1000
|
end
|
969
1001
|
|
970
1002
|
# Retrieves the details of a secret. It does not include the encrypted
|
971
|
-
# fields.
|
972
|
-
#
|
1003
|
+
# fields. Secrets Manager only returns fields populated with a value in
|
1004
|
+
# the response.
|
973
1005
|
#
|
974
1006
|
# **Minimum permissions**
|
975
1007
|
#
|
@@ -1006,7 +1038,13 @@ module Aws::SecretsManager
|
|
1006
1038
|
# then those characters cause Secrets Manager to assume that you’re
|
1007
1039
|
# specifying a complete ARN. This confusion can cause unexpected
|
1008
1040
|
# results. To avoid this situation, we recommend that you don’t create
|
1009
|
-
# secret names
|
1041
|
+
# secret names ending with a hyphen followed by six characters.
|
1042
|
+
#
|
1043
|
+
# If you specify an incomplete ARN without the random suffix, and
|
1044
|
+
# instead provide the 'friendly name', you *must* not include the
|
1045
|
+
# random suffix. If you do include the random suffix added by Secrets
|
1046
|
+
# Manager, you receive either a *ResourceNotFoundException* or an
|
1047
|
+
# *AccessDeniedException* error, depending on your permissions.
|
1010
1048
|
#
|
1011
1049
|
# </note>
|
1012
1050
|
#
|
@@ -1026,6 +1064,7 @@ module Aws::SecretsManager
|
|
1026
1064
|
# * {Types::DescribeSecretResponse#tags #tags} => Array<Types::Tag>
|
1027
1065
|
# * {Types::DescribeSecretResponse#version_ids_to_stages #version_ids_to_stages} => Hash<String,Array<String>>
|
1028
1066
|
# * {Types::DescribeSecretResponse#owning_service #owning_service} => String
|
1067
|
+
# * {Types::DescribeSecretResponse#created_date #created_date} => Time
|
1029
1068
|
#
|
1030
1069
|
#
|
1031
1070
|
# @example Example: To retrieve the details of a secret
|
@@ -1096,6 +1135,7 @@ module Aws::SecretsManager
|
|
1096
1135
|
# resp.version_ids_to_stages["SecretVersionIdType"] #=> Array
|
1097
1136
|
# resp.version_ids_to_stages["SecretVersionIdType"][0] #=> String
|
1098
1137
|
# resp.owning_service #=> String
|
1138
|
+
# resp.created_date #=> Time
|
1099
1139
|
#
|
1100
1140
|
# @see http://docs.aws.amazon.com/goto/WebAPI/secretsmanager-2017-10-17/DescribeSecret AWS API Documentation
|
1101
1141
|
#
|
@@ -1214,11 +1254,10 @@ module Aws::SecretsManager
|
|
1214
1254
|
req.send_request(options)
|
1215
1255
|
end
|
1216
1256
|
|
1217
|
-
# Retrieves the JSON text of the resource-based policy document
|
1218
|
-
#
|
1219
|
-
#
|
1220
|
-
#
|
1221
|
-
# string.
|
1257
|
+
# Retrieves the JSON text of the resource-based policy document attached
|
1258
|
+
# to the specified secret. The JSON request string input and response
|
1259
|
+
# output displays formatted code with white space and line breaks for
|
1260
|
+
# better readability. Submit your input as a single line JSON string.
|
1222
1261
|
#
|
1223
1262
|
# **Minimum permissions**
|
1224
1263
|
#
|
@@ -1232,8 +1271,8 @@ module Aws::SecretsManager
|
|
1232
1271
|
#
|
1233
1272
|
# * To attach a resource policy to a secret, use PutResourcePolicy.
|
1234
1273
|
#
|
1235
|
-
# * To delete the resource-based policy
|
1236
|
-
#
|
1274
|
+
# * To delete the resource-based policy attached to a secret, use
|
1275
|
+
# DeleteResourcePolicy.
|
1237
1276
|
#
|
1238
1277
|
# * To list all of the currently available secrets, use ListSecrets.
|
1239
1278
|
#
|
@@ -1253,7 +1292,13 @@ module Aws::SecretsManager
|
|
1253
1292
|
# then those characters cause Secrets Manager to assume that you’re
|
1254
1293
|
# specifying a complete ARN. This confusion can cause unexpected
|
1255
1294
|
# results. To avoid this situation, we recommend that you don’t create
|
1256
|
-
# secret names
|
1295
|
+
# secret names ending with a hyphen followed by six characters.
|
1296
|
+
#
|
1297
|
+
# If you specify an incomplete ARN without the random suffix, and
|
1298
|
+
# instead provide the 'friendly name', you *must* not include the
|
1299
|
+
# random suffix. If you do include the random suffix added by Secrets
|
1300
|
+
# Manager, you receive either a *ResourceNotFoundException* or an
|
1301
|
+
# *AccessDeniedException* error, depending on your permissions.
|
1257
1302
|
#
|
1258
1303
|
# </note>
|
1259
1304
|
#
|
@@ -1338,7 +1383,13 @@ module Aws::SecretsManager
|
|
1338
1383
|
# then those characters cause Secrets Manager to assume that you’re
|
1339
1384
|
# specifying a complete ARN. This confusion can cause unexpected
|
1340
1385
|
# results. To avoid this situation, we recommend that you don’t create
|
1341
|
-
# secret names
|
1386
|
+
# secret names ending with a hyphen followed by six characters.
|
1387
|
+
#
|
1388
|
+
# If you specify an incomplete ARN without the random suffix, and
|
1389
|
+
# instead provide the 'friendly name', you *must* not include the
|
1390
|
+
# random suffix. If you do include the random suffix added by Secrets
|
1391
|
+
# Manager, you receive either a *ResourceNotFoundException* or an
|
1392
|
+
# *AccessDeniedException* error, depending on your permissions.
|
1342
1393
|
#
|
1343
1394
|
# </note>
|
1344
1395
|
#
|
@@ -1435,8 +1486,8 @@ module Aws::SecretsManager
|
|
1435
1486
|
#
|
1436
1487
|
# <note markdown="1"> Always check the `NextToken` response parameter when calling any of
|
1437
1488
|
# the `List*` operations. These operations can occasionally return an
|
1438
|
-
# empty or shorter than expected list of results even when there
|
1439
|
-
#
|
1489
|
+
# empty or shorter than expected list of results even when there more
|
1490
|
+
# results become available. When this happens, the `NextToken` response
|
1440
1491
|
# parameter contains a value to pass to the next call to the same API to
|
1441
1492
|
# request the next part of the list.
|
1442
1493
|
#
|
@@ -1472,28 +1523,34 @@ module Aws::SecretsManager
|
|
1472
1523
|
# then those characters cause Secrets Manager to assume that you’re
|
1473
1524
|
# specifying a complete ARN. This confusion can cause unexpected
|
1474
1525
|
# results. To avoid this situation, we recommend that you don’t create
|
1475
|
-
# secret names
|
1526
|
+
# secret names ending with a hyphen followed by six characters.
|
1527
|
+
#
|
1528
|
+
# If you specify an incomplete ARN without the random suffix, and
|
1529
|
+
# instead provide the 'friendly name', you *must* not include the
|
1530
|
+
# random suffix. If you do include the random suffix added by Secrets
|
1531
|
+
# Manager, you receive either a *ResourceNotFoundException* or an
|
1532
|
+
# *AccessDeniedException* error, depending on your permissions.
|
1476
1533
|
#
|
1477
1534
|
# </note>
|
1478
1535
|
#
|
1479
1536
|
# @option params [Integer] :max_results
|
1480
|
-
# (Optional) Limits the number of results
|
1481
|
-
#
|
1482
|
-
#
|
1483
|
-
#
|
1484
|
-
#
|
1485
|
-
#
|
1486
|
-
#
|
1487
|
-
#
|
1488
|
-
#
|
1489
|
-
#
|
1537
|
+
# (Optional) Limits the number of results you want to include in the
|
1538
|
+
# response. If you don't include this parameter, it defaults to a value
|
1539
|
+
# that's specific to the operation. If additional items exist beyond
|
1540
|
+
# the maximum you specify, the `NextToken` response element is present
|
1541
|
+
# and has a value (isn't null). Include that value as the `NextToken`
|
1542
|
+
# request parameter in the next call to the operation to get the next
|
1543
|
+
# part of the results. Note that Secrets Manager might return fewer
|
1544
|
+
# results than the maximum even when there are more results available.
|
1545
|
+
# You should check `NextToken` after every operation to ensure that you
|
1546
|
+
# receive all of the results.
|
1490
1547
|
#
|
1491
1548
|
# @option params [String] :next_token
|
1492
1549
|
# (Optional) Use this parameter in a request if you receive a
|
1493
|
-
# `NextToken` response in a previous request
|
1494
|
-
#
|
1495
|
-
#
|
1496
|
-
#
|
1550
|
+
# `NextToken` response in a previous request indicating there's more
|
1551
|
+
# output available. In a subsequent call, set it to the value of the
|
1552
|
+
# previous call `NextToken` response to indicate where the output should
|
1553
|
+
# continue from.
|
1497
1554
|
#
|
1498
1555
|
# @option params [Boolean] :include_deprecated
|
1499
1556
|
# (Optional) Specifies that you want the results to include versions
|
@@ -1585,8 +1642,8 @@ module Aws::SecretsManager
|
|
1585
1642
|
#
|
1586
1643
|
# <note markdown="1"> Always check the `NextToken` response parameter when calling any of
|
1587
1644
|
# the `List*` operations. These operations can occasionally return an
|
1588
|
-
# empty or shorter than expected list of results even when there
|
1589
|
-
#
|
1645
|
+
# empty or shorter than expected list of results even when there more
|
1646
|
+
# results become available. When this happens, the `NextToken` response
|
1590
1647
|
# parameter contains a value to pass to the next call to the same API to
|
1591
1648
|
# request the next part of the list.
|
1592
1649
|
#
|
@@ -1607,23 +1664,29 @@ module Aws::SecretsManager
|
|
1607
1664
|
# ^
|
1608
1665
|
#
|
1609
1666
|
# @option params [Integer] :max_results
|
1610
|
-
# (Optional) Limits the number of results
|
1611
|
-
#
|
1612
|
-
#
|
1613
|
-
#
|
1614
|
-
#
|
1615
|
-
#
|
1616
|
-
#
|
1617
|
-
#
|
1618
|
-
#
|
1619
|
-
#
|
1667
|
+
# (Optional) Limits the number of results you want to include in the
|
1668
|
+
# response. If you don't include this parameter, it defaults to a value
|
1669
|
+
# that's specific to the operation. If additional items exist beyond
|
1670
|
+
# the maximum you specify, the `NextToken` response element is present
|
1671
|
+
# and has a value (isn't null). Include that value as the `NextToken`
|
1672
|
+
# request parameter in the next call to the operation to get the next
|
1673
|
+
# part of the results. Note that Secrets Manager might return fewer
|
1674
|
+
# results than the maximum even when there are more results available.
|
1675
|
+
# You should check `NextToken` after every operation to ensure that you
|
1676
|
+
# receive all of the results.
|
1620
1677
|
#
|
1621
1678
|
# @option params [String] :next_token
|
1622
1679
|
# (Optional) Use this parameter in a request if you receive a
|
1623
|
-
# `NextToken` response in a previous request
|
1624
|
-
#
|
1625
|
-
#
|
1626
|
-
#
|
1680
|
+
# `NextToken` response in a previous request indicating there's more
|
1681
|
+
# output available. In a subsequent call, set it to the value of the
|
1682
|
+
# previous call `NextToken` response to indicate where the output should
|
1683
|
+
# continue from.
|
1684
|
+
#
|
1685
|
+
# @option params [Array<Types::Filter>] :filters
|
1686
|
+
# Lists the secret request filters.
|
1687
|
+
#
|
1688
|
+
# @option params [String] :sort_order
|
1689
|
+
# Lists secrets in the requested order.
|
1627
1690
|
#
|
1628
1691
|
# @return [Types::ListSecretsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
1629
1692
|
#
|
@@ -1673,6 +1736,13 @@ module Aws::SecretsManager
|
|
1673
1736
|
# resp = client.list_secrets({
|
1674
1737
|
# max_results: 1,
|
1675
1738
|
# next_token: "NextTokenType",
|
1739
|
+
# filters: [
|
1740
|
+
# {
|
1741
|
+
# key: "description", # accepts description, name, tag-key, tag-value, all
|
1742
|
+
# values: ["FilterValueStringType"],
|
1743
|
+
# },
|
1744
|
+
# ],
|
1745
|
+
# sort_order: "asc", # accepts asc, desc
|
1676
1746
|
# })
|
1677
1747
|
#
|
1678
1748
|
# @example Response structure
|
@@ -1696,6 +1766,7 @@ module Aws::SecretsManager
|
|
1696
1766
|
# resp.secret_list[0].secret_versions_to_stages["SecretVersionIdType"] #=> Array
|
1697
1767
|
# resp.secret_list[0].secret_versions_to_stages["SecretVersionIdType"][0] #=> String
|
1698
1768
|
# resp.secret_list[0].owning_service #=> String
|
1769
|
+
# resp.secret_list[0].created_date #=> Time
|
1699
1770
|
# resp.next_token #=> String
|
1700
1771
|
#
|
1701
1772
|
# @see http://docs.aws.amazon.com/goto/WebAPI/secretsmanager-2017-10-17/ListSecrets AWS API Documentation
|
@@ -1729,7 +1800,7 @@ module Aws::SecretsManager
|
|
1729
1800
|
#
|
1730
1801
|
# **Related operations**
|
1731
1802
|
#
|
1732
|
-
# * To retrieve the resource policy
|
1803
|
+
# * To retrieve the resource policy attached to a secret, use
|
1733
1804
|
# GetResourcePolicy.
|
1734
1805
|
#
|
1735
1806
|
# * To delete the resource-based policy that's attached to a secret,
|
@@ -1757,7 +1828,13 @@ module Aws::SecretsManager
|
|
1757
1828
|
# then those characters cause Secrets Manager to assume that you’re
|
1758
1829
|
# specifying a complete ARN. This confusion can cause unexpected
|
1759
1830
|
# results. To avoid this situation, we recommend that you don’t create
|
1760
|
-
# secret names
|
1831
|
+
# secret names ending with a hyphen followed by six characters.
|
1832
|
+
#
|
1833
|
+
# If you specify an incomplete ARN without the random suffix, and
|
1834
|
+
# instead provide the 'friendly name', you *must* not include the
|
1835
|
+
# random suffix. If you do include the random suffix added by Secrets
|
1836
|
+
# Manager, you receive either a *ResourceNotFoundException* or an
|
1837
|
+
# *AccessDeniedException* error, depending on your permissions.
|
1761
1838
|
#
|
1762
1839
|
# </note>
|
1763
1840
|
#
|
@@ -1773,6 +1850,10 @@ module Aws::SecretsManager
|
|
1773
1850
|
#
|
1774
1851
|
# [1]: http://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html#cli-using-param-json
|
1775
1852
|
#
|
1853
|
+
# @option params [Boolean] :block_public_policy
|
1854
|
+
# Makes an optional API call to Zelkova to validate the Resource Policy
|
1855
|
+
# to prevent broad access to your secret.
|
1856
|
+
#
|
1776
1857
|
# @return [Types::PutResourcePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
1777
1858
|
#
|
1778
1859
|
# * {Types::PutResourcePolicyResponse#arn #arn} => String
|
@@ -1799,6 +1880,7 @@ module Aws::SecretsManager
|
|
1799
1880
|
# resp = client.put_resource_policy({
|
1800
1881
|
# secret_id: "SecretIdType", # required
|
1801
1882
|
# resource_policy: "NonEmptyResourcePolicyType", # required
|
1883
|
+
# block_public_policy: false,
|
1802
1884
|
# })
|
1803
1885
|
#
|
1804
1886
|
# @example Response structure
|
@@ -1848,29 +1930,29 @@ module Aws::SecretsManager
|
|
1848
1930
|
# operation fails because you cannot modify an existing version; you
|
1849
1931
|
# can only create new ones.
|
1850
1932
|
#
|
1851
|
-
# <note markdown="1"> * If you call an operation
|
1852
|
-
# `
|
1853
|
-
#
|
1854
|
-
#
|
1855
|
-
#
|
1856
|
-
#
|
1857
|
-
#
|
1858
|
-
#
|
1859
|
-
#
|
1860
|
-
#
|
1861
|
-
#
|
1862
|
-
#
|
1863
|
-
# * If the secret
|
1864
|
-
# calling an API that requires encryption or decryption of
|
1865
|
-
# value then you must create and use a custom AWS KMS CMK
|
1866
|
-
# can't access the default CMK for the account using
|
1867
|
-
# a different AWS account. Store the ARN of the CMK
|
1868
|
-
# you create the secret or when you update it by
|
1869
|
-
# `KMSKeyId`. If you call an API that must encrypt
|
1870
|
-
# `SecretString` or `SecretBinary` using credentials from a
|
1871
|
-
# account then the AWS KMS key policy must grant
|
1872
|
-
# to that other account's user or role for both
|
1873
|
-
# kms:GenerateDataKey and kms:Decrypt operations.
|
1933
|
+
# <note markdown="1"> * If you call an operation to encrypt or decrypt the `SecretString` or
|
1934
|
+
# `SecretBinary` for a secret in the same account as the calling user
|
1935
|
+
# and that secret doesn't specify a AWS KMS encryption key, Secrets
|
1936
|
+
# Manager uses the account's default AWS managed customer master key
|
1937
|
+
# (CMK) with the alias `aws/secretsmanager`. If this key doesn't
|
1938
|
+
# already exist in your account then Secrets Manager creates it for
|
1939
|
+
# you automatically. All users and roles in the same AWS account
|
1940
|
+
# automatically have access to use the default CMK. Note that if an
|
1941
|
+
# Secrets Manager API call results in AWS creating the account's
|
1942
|
+
# AWS-managed CMK, it can result in a one-time significant delay in
|
1943
|
+
# returning the result.
|
1944
|
+
#
|
1945
|
+
# * If the secret resides in a different AWS account from the
|
1946
|
+
# credentials calling an API that requires encryption or decryption of
|
1947
|
+
# the secret value then you must create and use a custom AWS KMS CMK
|
1948
|
+
# because you can't access the default CMK for the account using
|
1949
|
+
# credentials from a different AWS account. Store the ARN of the CMK
|
1950
|
+
# in the secret when you create the secret or when you update it by
|
1951
|
+
# including it in the `KMSKeyId`. If you call an API that must encrypt
|
1952
|
+
# or decrypt `SecretString` or `SecretBinary` using credentials from a
|
1953
|
+
# different account then the AWS KMS key policy must grant
|
1954
|
+
# cross-account access to that other account's user or role for both
|
1955
|
+
# the kms:GenerateDataKey and kms:Decrypt operations.
|
1874
1956
|
#
|
1875
1957
|
# </note>
|
1876
1958
|
#
|
@@ -1911,7 +1993,13 @@ module Aws::SecretsManager
|
|
1911
1993
|
# then those characters cause Secrets Manager to assume that you’re
|
1912
1994
|
# specifying a complete ARN. This confusion can cause unexpected
|
1913
1995
|
# results. To avoid this situation, we recommend that you don’t create
|
1914
|
-
# secret names
|
1996
|
+
# secret names ending with a hyphen followed by six characters.
|
1997
|
+
#
|
1998
|
+
# If you specify an incomplete ARN without the random suffix, and
|
1999
|
+
# instead provide the 'friendly name', you *must* not include the
|
2000
|
+
# random suffix. If you do include the random suffix added by Secrets
|
2001
|
+
# Manager, you receive either a *ResourceNotFoundException* or an
|
2002
|
+
# *AccessDeniedException* error, depending on your permissions.
|
1915
2003
|
#
|
1916
2004
|
# </note>
|
1917
2005
|
#
|
@@ -1942,7 +2030,7 @@ module Aws::SecretsManager
|
|
1942
2030
|
# `SecretString` or `SecretBinary` values are the same as those in the
|
1943
2031
|
# request then the request is ignored (the operation is idempotent).
|
1944
2032
|
#
|
1945
|
-
# * If a version with this value already exists and
|
2033
|
+
# * If a version with this value already exists and the version of the
|
1946
2034
|
# `SecretString` and `SecretBinary` values are different from those in
|
1947
2035
|
# the request then the request fails because you cannot modify an
|
1948
2036
|
# existing secret version. You can only create new versions to store
|
@@ -1957,7 +2045,7 @@ module Aws::SecretsManager
|
|
1957
2045
|
#
|
1958
2046
|
# [1]: https://wikipedia.org/wiki/Universally_unique_identifier
|
1959
2047
|
#
|
1960
|
-
# @option params [String,
|
2048
|
+
# @option params [String, StringIO, File] :secret_binary
|
1961
2049
|
# (Optional) Specifies binary data that you want to encrypt and store in
|
1962
2050
|
# the new version of the secret. To use this parameter in the
|
1963
2051
|
# command-line tools, we recommend that you store your binary data in a
|
@@ -2104,7 +2192,13 @@ module Aws::SecretsManager
|
|
2104
2192
|
# then those characters cause Secrets Manager to assume that you’re
|
2105
2193
|
# specifying a complete ARN. This confusion can cause unexpected
|
2106
2194
|
# results. To avoid this situation, we recommend that you don’t create
|
2107
|
-
# secret names
|
2195
|
+
# secret names ending with a hyphen followed by six characters.
|
2196
|
+
#
|
2197
|
+
# If you specify an incomplete ARN without the random suffix, and
|
2198
|
+
# instead provide the 'friendly name', you *must* not include the
|
2199
|
+
# random suffix. If you do include the random suffix added by Secrets
|
2200
|
+
# Manager, you receive either a *ResourceNotFoundException* or an
|
2201
|
+
# *AccessDeniedException* error, depending on your permissions.
|
2108
2202
|
#
|
2109
2203
|
# </note>
|
2110
2204
|
#
|
@@ -2167,8 +2261,8 @@ module Aws::SecretsManager
|
|
2167
2261
|
# for your protected service, see [Rotating Secrets in AWS Secrets
|
2168
2262
|
# Manager][1] in the *AWS Secrets Manager User Guide*.
|
2169
2263
|
#
|
2170
|
-
# Secrets Manager schedules the next rotation when the previous one
|
2171
|
-
#
|
2264
|
+
# Secrets Manager schedules the next rotation when the previous one
|
2265
|
+
# completes. Secrets Manager schedules the date by adding the rotation
|
2172
2266
|
# interval (number of days) to the actual date of the last rotation. The
|
2173
2267
|
# service chooses the hour within that 24-hour date window randomly. The
|
2174
2268
|
# minute is also chosen somewhat randomly, but weighted towards the top
|
@@ -2184,9 +2278,9 @@ module Aws::SecretsManager
|
|
2184
2278
|
# * The `AWSPENDING` staging label is not attached to any version of the
|
2185
2279
|
# secret.
|
2186
2280
|
#
|
2187
|
-
# If
|
2188
|
-
#
|
2189
|
-
#
|
2281
|
+
# If the `AWSPENDING` staging label is present but not attached to the
|
2282
|
+
# same version as `AWSCURRENT` then any later invocation of
|
2283
|
+
# `RotateSecret` assumes that a previous rotation request is still in
|
2190
2284
|
# progress and returns an error.
|
2191
2285
|
#
|
2192
2286
|
# **Minimum permissions**
|
@@ -2228,7 +2322,13 @@ module Aws::SecretsManager
|
|
2228
2322
|
# then those characters cause Secrets Manager to assume that you’re
|
2229
2323
|
# specifying a complete ARN. This confusion can cause unexpected
|
2230
2324
|
# results. To avoid this situation, we recommend that you don’t create
|
2231
|
-
# secret names
|
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.
|
2232
2332
|
#
|
2233
2333
|
# </note>
|
2234
2334
|
#
|
@@ -2244,8 +2344,8 @@ module Aws::SecretsManager
|
|
2244
2344
|
# generate a `ClientRequestToken` yourself for new versions and include
|
2245
2345
|
# that value in the request.
|
2246
2346
|
#
|
2247
|
-
# You only need to specify your own value if you
|
2248
|
-
#
|
2347
|
+
# You only need to specify your own value if you implement your own
|
2348
|
+
# retry logic and want to ensure that a given secret is not created
|
2249
2349
|
# twice. We recommend that you generate a [UUID-type][1] value to ensure
|
2250
2350
|
# uniqueness within the specified secret.
|
2251
2351
|
#
|
@@ -2316,16 +2416,16 @@ module Aws::SecretsManager
|
|
2316
2416
|
#
|
2317
2417
|
# * Tag keys and values are case sensitive.
|
2318
2418
|
#
|
2319
|
-
# * Do not use the `aws:` prefix in your tag names or values because
|
2320
|
-
#
|
2419
|
+
# * Do not use the `aws:` prefix in your tag names or values because AWS
|
2420
|
+
# reserves it for AWS use. You can't edit or delete tag names or
|
2321
2421
|
# values with this prefix. Tags with this prefix do not count against
|
2322
2422
|
# your tags per secret limit.
|
2323
2423
|
#
|
2324
|
-
# * If your tagging schema
|
2325
|
-
# resources, remember
|
2326
|
-
# allowed characters. Generally allowed characters
|
2327
|
-
#
|
2328
|
-
#
|
2424
|
+
# * If you use your tagging schema across multiple services and
|
2425
|
+
# resources, remember other services might have restrictions on
|
2426
|
+
# allowed characters. Generally allowed characters: letters, spaces,
|
2427
|
+
# and numbers representable in UTF-8, plus the following special
|
2428
|
+
# characters: + - = . \_ : / @.
|
2329
2429
|
#
|
2330
2430
|
# If you use tags as part of your security strategy, then adding or
|
2331
2431
|
# removing a tag can change permissions. If successfully completing this
|
@@ -2363,7 +2463,13 @@ module Aws::SecretsManager
|
|
2363
2463
|
# then those characters cause Secrets Manager to assume that you’re
|
2364
2464
|
# specifying a complete ARN. This confusion can cause unexpected
|
2365
2465
|
# results. To avoid this situation, we recommend that you don’t create
|
2366
|
-
# secret names
|
2466
|
+
# secret names ending with a hyphen followed by six characters.
|
2467
|
+
#
|
2468
|
+
# If you specify an incomplete ARN without the random suffix, and
|
2469
|
+
# instead provide the 'friendly name', you *must* not include the
|
2470
|
+
# random suffix. If you do include the random suffix added by Secrets
|
2471
|
+
# Manager, you receive either a *ResourceNotFoundException* or an
|
2472
|
+
# *AccessDeniedException* error, depending on your permissions.
|
2367
2473
|
#
|
2368
2474
|
# </note>
|
2369
2475
|
#
|
@@ -2465,7 +2571,13 @@ module Aws::SecretsManager
|
|
2465
2571
|
# then those characters cause Secrets Manager to assume that you’re
|
2466
2572
|
# specifying a complete ARN. This confusion can cause unexpected
|
2467
2573
|
# results. To avoid this situation, we recommend that you don’t create
|
2468
|
-
# secret names
|
2574
|
+
# secret names ending with a hyphen followed by six characters.
|
2575
|
+
#
|
2576
|
+
# If you specify an incomplete ARN without the random suffix, and
|
2577
|
+
# instead provide the 'friendly name', you *must* not include the
|
2578
|
+
# random suffix. If you do include the random suffix added by Secrets
|
2579
|
+
# Manager, you receive either a *ResourceNotFoundException* or an
|
2580
|
+
# *AccessDeniedException* error, depending on your permissions.
|
2469
2581
|
#
|
2470
2582
|
# </note>
|
2471
2583
|
#
|
@@ -2537,29 +2649,29 @@ module Aws::SecretsManager
|
|
2537
2649
|
# secret version, Secrets Manager automatically attaches the staging
|
2538
2650
|
# label `AWSCURRENT` to the new version.
|
2539
2651
|
#
|
2540
|
-
# <note markdown="1"> * If you call an operation
|
2541
|
-
# `
|
2542
|
-
#
|
2543
|
-
#
|
2544
|
-
#
|
2545
|
-
#
|
2546
|
-
#
|
2547
|
-
#
|
2548
|
-
#
|
2549
|
-
#
|
2550
|
-
#
|
2551
|
-
#
|
2552
|
-
# * If the secret
|
2553
|
-
# calling an API that requires encryption or decryption of
|
2554
|
-
# value then you must create and use a custom AWS KMS CMK
|
2555
|
-
# can't access the default CMK for the account using
|
2556
|
-
# a different AWS account. Store the ARN of the CMK
|
2557
|
-
# you create the secret or when you update it by
|
2558
|
-
# `KMSKeyId`. If you call an API that must encrypt
|
2559
|
-
# `SecretString` or `SecretBinary` using credentials from a
|
2560
|
-
# account then the AWS KMS key policy must grant
|
2561
|
-
# to that other account's user or role for both
|
2562
|
-
# kms:GenerateDataKey and kms:Decrypt operations.
|
2652
|
+
# <note markdown="1"> * If you call an operation to encrypt or decrypt the `SecretString` or
|
2653
|
+
# `SecretBinary` for a secret in the same account as the calling user
|
2654
|
+
# and that secret doesn't specify a AWS KMS encryption key, Secrets
|
2655
|
+
# Manager uses the account's default AWS managed customer master key
|
2656
|
+
# (CMK) with the alias `aws/secretsmanager`. If this key doesn't
|
2657
|
+
# already exist in your account then Secrets Manager creates it for
|
2658
|
+
# you automatically. All users and roles in the same AWS account
|
2659
|
+
# automatically have access to use the default CMK. Note that if an
|
2660
|
+
# Secrets Manager API call results in AWS creating the account's
|
2661
|
+
# AWS-managed CMK, it can result in a one-time significant delay in
|
2662
|
+
# returning the result.
|
2663
|
+
#
|
2664
|
+
# * If the secret resides in a different AWS account from the
|
2665
|
+
# credentials calling an API that requires encryption or decryption of
|
2666
|
+
# the secret value then you must create and use a custom AWS KMS CMK
|
2667
|
+
# because you can't access the default CMK for the account using
|
2668
|
+
# credentials from a different AWS account. Store the ARN of the CMK
|
2669
|
+
# in the secret when you create the secret or when you update it by
|
2670
|
+
# including it in the `KMSKeyId`. If you call an API that must encrypt
|
2671
|
+
# or decrypt `SecretString` or `SecretBinary` using credentials from a
|
2672
|
+
# different account then the AWS KMS key policy must grant
|
2673
|
+
# cross-account access to that other account's user or role for both
|
2674
|
+
# the kms:GenerateDataKey and kms:Decrypt operations.
|
2563
2675
|
#
|
2564
2676
|
# </note>
|
2565
2677
|
#
|
@@ -2604,7 +2716,13 @@ module Aws::SecretsManager
|
|
2604
2716
|
# then those characters cause Secrets Manager to assume that you’re
|
2605
2717
|
# specifying a complete ARN. This confusion can cause unexpected
|
2606
2718
|
# results. To avoid this situation, we recommend that you don’t create
|
2607
|
-
# secret names
|
2719
|
+
# secret names ending with a hyphen followed by six characters.
|
2720
|
+
#
|
2721
|
+
# If you specify an incomplete ARN without the random suffix, and
|
2722
|
+
# instead provide the 'friendly name', you *must* not include the
|
2723
|
+
# random suffix. If you do include the random suffix added by Secrets
|
2724
|
+
# Manager, you receive either a *ResourceNotFoundException* or an
|
2725
|
+
# *AccessDeniedException* error, depending on your permissions.
|
2608
2726
|
#
|
2609
2727
|
# </note>
|
2610
2728
|
#
|
@@ -2668,7 +2786,7 @@ module Aws::SecretsManager
|
|
2668
2786
|
# field. The user making the call must have permissions to both the
|
2669
2787
|
# secret and the CMK in their respective accounts.
|
2670
2788
|
#
|
2671
|
-
# @option params [String,
|
2789
|
+
# @option params [String, StringIO, File] :secret_binary
|
2672
2790
|
# (Optional) Specifies updated binary data that you want to encrypt and
|
2673
2791
|
# store in the new version of the secret. To use this parameter in the
|
2674
2792
|
# command-line tools, we recommend that you store your binary data in a
|
@@ -2841,9 +2959,9 @@ module Aws::SecretsManager
|
|
2841
2959
|
# [1]: https://docs.aws.amazon.com/secretsmanager/latest/userguide/terms-concepts.html#term_staging-label
|
2842
2960
|
#
|
2843
2961
|
# @option params [required, String] :secret_id
|
2844
|
-
# Specifies the secret with the version
|
2845
|
-
# want to modify. You can specify either the Amazon Resource Name
|
2846
|
-
# or the friendly name of the secret.
|
2962
|
+
# Specifies the secret with the version with the list of staging labels
|
2963
|
+
# you want to modify. You can specify either the Amazon Resource Name
|
2964
|
+
# (ARN) or the friendly name of the secret.
|
2847
2965
|
#
|
2848
2966
|
# <note markdown="1"> If you specify an ARN, we generally recommend that you specify a
|
2849
2967
|
# complete ARN. You can specify a partial ARN too—for example, if you
|
@@ -2856,7 +2974,13 @@ module Aws::SecretsManager
|
|
2856
2974
|
# then those characters cause Secrets Manager to assume that you’re
|
2857
2975
|
# specifying a complete ARN. This confusion can cause unexpected
|
2858
2976
|
# results. To avoid this situation, we recommend that you don’t create
|
2859
|
-
# secret names
|
2977
|
+
# secret names ending with a hyphen followed by six characters.
|
2978
|
+
#
|
2979
|
+
# If you specify an incomplete ARN without the random suffix, and
|
2980
|
+
# instead provide the 'friendly name', you *must* not include the
|
2981
|
+
# random suffix. If you do include the random suffix added by Secrets
|
2982
|
+
# Manager, you receive either a *ResourceNotFoundException* or an
|
2983
|
+
# *AccessDeniedException* error, depending on your permissions.
|
2860
2984
|
#
|
2861
2985
|
# </note>
|
2862
2986
|
#
|
@@ -2874,7 +2998,7 @@ module Aws::SecretsManager
|
|
2874
2998
|
#
|
2875
2999
|
# @option params [String] :move_to_version_id
|
2876
3000
|
# (Optional) The secret version ID that you want to add the staging
|
2877
|
-
# label
|
3001
|
+
# label. If you want to remove a label from a version, then do not
|
2878
3002
|
# specify this parameter.
|
2879
3003
|
#
|
2880
3004
|
# If the staging label is already attached to a different version of the
|
@@ -2964,6 +3088,86 @@ module Aws::SecretsManager
|
|
2964
3088
|
req.send_request(options)
|
2965
3089
|
end
|
2966
3090
|
|
3091
|
+
# Validates the JSON text of the resource-based policy document attached
|
3092
|
+
# to the specified secret. The JSON request string input and response
|
3093
|
+
# output displays formatted code with white space and line breaks for
|
3094
|
+
# better readability. Submit your input as a single line JSON string. A
|
3095
|
+
# resource-based policy is optional.
|
3096
|
+
#
|
3097
|
+
# @option params [String] :secret_id
|
3098
|
+
# The identifier for the secret that you want to validate a resource
|
3099
|
+
# policy. You can specify either the Amazon Resource Name (ARN) or the
|
3100
|
+
# friendly name of the secret.
|
3101
|
+
#
|
3102
|
+
# <note markdown="1"> If you specify an ARN, we generally recommend that you specify a
|
3103
|
+
# complete ARN. You can specify a partial ARN too—for example, if you
|
3104
|
+
# don’t include the final hyphen and six random characters that Secrets
|
3105
|
+
# Manager adds at the end of the ARN when you created the secret. A
|
3106
|
+
# partial ARN match can work as long as it uniquely matches only one
|
3107
|
+
# secret. However, if your secret has a name that ends in a hyphen
|
3108
|
+
# followed by six characters (before Secrets Manager adds the hyphen and
|
3109
|
+
# six characters to the ARN) and you try to use that as a partial ARN,
|
3110
|
+
# then those characters cause Secrets Manager to assume that you’re
|
3111
|
+
# specifying a complete ARN. This confusion can cause unexpected
|
3112
|
+
# results. To avoid this situation, we recommend that you don’t create
|
3113
|
+
# secret names ending with a hyphen followed by six characters.
|
3114
|
+
#
|
3115
|
+
# If you specify an incomplete ARN without the random suffix, and
|
3116
|
+
# instead provide the 'friendly name', you *must* not include the
|
3117
|
+
# random suffix. If you do include the random suffix added by Secrets
|
3118
|
+
# Manager, you receive either a *ResourceNotFoundException* or an
|
3119
|
+
# *AccessDeniedException* error, depending on your permissions.
|
3120
|
+
#
|
3121
|
+
# </note>
|
3122
|
+
#
|
3123
|
+
# @option params [required, String] :resource_policy
|
3124
|
+
# Identifies the Resource Policy attached to the secret.
|
3125
|
+
#
|
3126
|
+
# @return [Types::ValidateResourcePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
3127
|
+
#
|
3128
|
+
# * {Types::ValidateResourcePolicyResponse#policy_validation_passed #policy_validation_passed} => Boolean
|
3129
|
+
# * {Types::ValidateResourcePolicyResponse#validation_errors #validation_errors} => Array<Types::ValidationErrorsEntry>
|
3130
|
+
#
|
3131
|
+
#
|
3132
|
+
# @example Example: To validate a resource-based policy to a secret
|
3133
|
+
#
|
3134
|
+
# # The following example shows how to validate a resource-based policy to a secret.
|
3135
|
+
#
|
3136
|
+
# resp = client.validate_resource_policy({
|
3137
|
+
# resource_policy: "{\n\"Version\":\"2012-10-17\",\n\"Statement\":[{\n\"Effect\":\"Allow\",\n\"Principal\":{\n\"AWS\":\"arn:aws:iam::123456789012:root\"\n},\n\"Action\":\"secretsmanager:GetSecretValue\",\n\"Resource\":\"*\"\n}]\n}",
|
3138
|
+
# secret_id: "MyTestDatabaseSecret",
|
3139
|
+
# })
|
3140
|
+
#
|
3141
|
+
# resp.to_h outputs the following:
|
3142
|
+
# {
|
3143
|
+
# policy_validation_passed: true,
|
3144
|
+
# validation_errors: [
|
3145
|
+
# ],
|
3146
|
+
# }
|
3147
|
+
#
|
3148
|
+
# @example Request syntax with placeholder values
|
3149
|
+
#
|
3150
|
+
# resp = client.validate_resource_policy({
|
3151
|
+
# secret_id: "SecretIdType",
|
3152
|
+
# resource_policy: "NonEmptyResourcePolicyType", # required
|
3153
|
+
# })
|
3154
|
+
#
|
3155
|
+
# @example Response structure
|
3156
|
+
#
|
3157
|
+
# resp.policy_validation_passed #=> Boolean
|
3158
|
+
# resp.validation_errors #=> Array
|
3159
|
+
# resp.validation_errors[0].check_name #=> String
|
3160
|
+
# resp.validation_errors[0].error_message #=> String
|
3161
|
+
#
|
3162
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/secretsmanager-2017-10-17/ValidateResourcePolicy AWS API Documentation
|
3163
|
+
#
|
3164
|
+
# @overload validate_resource_policy(params = {})
|
3165
|
+
# @param [Hash] params ({})
|
3166
|
+
def validate_resource_policy(params = {}, options = {})
|
3167
|
+
req = build_request(:validate_resource_policy, params)
|
3168
|
+
req.send_request(options)
|
3169
|
+
end
|
3170
|
+
|
2967
3171
|
# @!endgroup
|
2968
3172
|
|
2969
3173
|
# @param params ({})
|
@@ -2977,7 +3181,7 @@ module Aws::SecretsManager
|
|
2977
3181
|
params: params,
|
2978
3182
|
config: config)
|
2979
3183
|
context[:gem_name] = 'aws-sdk-secretsmanager'
|
2980
|
-
context[:gem_version] = '1.
|
3184
|
+
context[:gem_version] = '1.42.0'
|
2981
3185
|
Seahorse::Client::Request.new(handlers, context)
|
2982
3186
|
end
|
2983
3187
|
|