Class PutSecretValueRequest
- java.lang.Object
-
- software.amazon.awssdk.core.SdkRequest
-
- software.amazon.awssdk.awscore.AwsRequest
-
- software.amazon.awssdk.services.secretsmanager.model.SecretsManagerRequest
-
- software.amazon.awssdk.services.secretsmanager.model.PutSecretValueRequest
-
- All Implemented Interfaces:
SdkPojo,ToCopyableBuilder<PutSecretValueRequest.Builder,PutSecretValueRequest>
@Generated("software.amazon.awssdk:codegen") public final class PutSecretValueRequest extends SecretsManagerRequest implements ToCopyableBuilder<PutSecretValueRequest.Builder,PutSecretValueRequest>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfacePutSecretValueRequest.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static PutSecretValueRequest.Builderbuilder()StringclientRequestToken()A unique identifier for the new version of the secret.booleanequals(Object obj)booleanequalsBySdkFields(Object obj)<T> Optional<T>getValueForField(String fieldName, Class<T> clazz)inthashCode()booleanhasVersionStages()For responses, this returns true if the service returned a value for the VersionStages property.StringrotationToken()A unique identifier that indicates the source of the request.Map<String,SdkField<?>>sdkFieldNameToField()List<SdkField<?>>sdkFields()SdkBytessecretBinary()The binary data to encrypt and store in the new version of the secret.StringsecretId()The ARN or name of the secret to add a new version to.StringsecretString()The text to encrypt and store in the new version of the secret.static Class<? extends PutSecretValueRequest.Builder>serializableBuilderClass()PutSecretValueRequest.BuildertoBuilder()StringtoString()Returns a string representation of this object.List<String>versionStages()A list of staging labels to attach to this version of the secret.-
Methods inherited from class software.amazon.awssdk.awscore.AwsRequest
overrideConfiguration
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
secretId
public final String secretId()
The ARN or name of the secret to add a new version to.
For an ARN, we recommend that you specify a complete ARN rather than a partial ARN. See Finding a secret from a partial ARN.
If the secret doesn't already exist, use
CreateSecretinstead.- Returns:
- The ARN or name of the secret to add a new version to.
For an ARN, we recommend that you specify a complete ARN rather than a partial ARN. See Finding a secret from a partial ARN.
If the secret doesn't already exist, use
CreateSecretinstead.
-
clientRequestToken
public final String clientRequestToken()
A unique identifier for the new version of the secret.
If you use the Amazon Web Services CLI or one of the Amazon Web Services SDKs to call this operation, then you can leave this parameter empty. The CLI or SDK generates a random UUID for you and includes it as the value for this parameter in the request.
If you generate a raw HTTP request to the Secrets Manager service endpoint, then you must generate a
ClientRequestTokenand include it in the request.This value helps ensure idempotency. Secrets Manager uses this value to prevent the accidental creation of duplicate versions if there are failures and retries during a rotation. We recommend that you generate a UUID-type value to ensure uniqueness of your versions within the specified secret.
-
If the
ClientRequestTokenvalue isn't already associated with a version of the secret then a new version of the secret is created. -
If a version with this value already exists and that version's
SecretStringorSecretBinaryvalues are the same as those in the request then the request is ignored. The operation is idempotent. -
If a version with this value already exists and the version of the
SecretStringandSecretBinaryvalues are different from those in the request, then the request fails because you can't modify a secret version. You can only create new versions to store new secret values.
This value becomes the
VersionIdof the new version.- Returns:
- A unique identifier for the new version of the secret.
If you use the Amazon Web Services CLI or one of the Amazon Web Services SDKs to call this operation, then you can leave this parameter empty. The CLI or SDK generates a random UUID for you and includes it as the value for this parameter in the request.
If you generate a raw HTTP request to the Secrets Manager service endpoint, then you must generate a
ClientRequestTokenand include it in the request.This value helps ensure idempotency. Secrets Manager uses this value to prevent the accidental creation of duplicate versions if there are failures and retries during a rotation. We recommend that you generate a UUID-type value to ensure uniqueness of your versions within the specified secret.
-
If the
ClientRequestTokenvalue isn't already associated with a version of the secret then a new version of the secret is created. -
If a version with this value already exists and that version's
SecretStringorSecretBinaryvalues are the same as those in the request then the request is ignored. The operation is idempotent. -
If a version with this value already exists and the version of the
SecretStringandSecretBinaryvalues are different from those in the request, then the request fails because you can't modify a secret version. You can only create new versions to store new secret values.
This value becomes the
VersionIdof the new version. -
-
-
secretBinary
public final SdkBytes secretBinary()
The binary data to encrypt and store in the new version of the secret. To use this parameter in the command-line tools, we recommend that you store your binary data in a file and then pass the contents of the file as a parameter.
You must include
SecretBinaryorSecretString, but not both.You can't access this value from the Secrets Manager console.
Sensitive: This field contains sensitive information, so the service does not include it in CloudTrail log entries. If you create your own log entries, you must also avoid logging the information in this field.
- Returns:
- The binary data to encrypt and store in the new version of the secret. To use this parameter in the
command-line tools, we recommend that you store your binary data in a file and then pass the contents of
the file as a parameter.
You must include
SecretBinaryorSecretString, but not both.You can't access this value from the Secrets Manager console.
Sensitive: This field contains sensitive information, so the service does not include it in CloudTrail log entries. If you create your own log entries, you must also avoid logging the information in this field.
-
secretString
public final String secretString()
The text to encrypt and store in the new version of the secret.
You must include
SecretBinaryorSecretString, but not both.We recommend you create the secret string as JSON key/value pairs, as shown in the example.
Sensitive: This field contains sensitive information, so the service does not include it in CloudTrail log entries. If you create your own log entries, you must also avoid logging the information in this field.
- Returns:
- The text to encrypt and store in the new version of the secret.
You must include
SecretBinaryorSecretString, but not both.We recommend you create the secret string as JSON key/value pairs, as shown in the example.
Sensitive: This field contains sensitive information, so the service does not include it in CloudTrail log entries. If you create your own log entries, you must also avoid logging the information in this field.
-
hasVersionStages
public final boolean hasVersionStages()
For responses, this returns true if the service returned a value for the VersionStages property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
versionStages
public final List<String> versionStages()
A list of staging labels to attach to this version of the secret. Secrets Manager uses staging labels to track versions of a secret through the rotation process.
If you specify a staging label that's already associated with a different version of the same secret, then Secrets Manager removes the label from the other version and attaches it to this version. If you specify
AWSCURRENT, and it is already attached to another version, then Secrets Manager also moves the staging labelAWSPREVIOUSto the version thatAWSCURRENTwas removed from.If you don't include
VersionStages, then Secrets Manager automatically moves the staging labelAWSCURRENTto this version.Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasVersionStages()method.- Returns:
- A list of staging labels to attach to this version of the secret. Secrets Manager uses staging labels to
track versions of a secret through the rotation process.
If you specify a staging label that's already associated with a different version of the same secret, then Secrets Manager removes the label from the other version and attaches it to this version. If you specify
AWSCURRENT, and it is already attached to another version, then Secrets Manager also moves the staging labelAWSPREVIOUSto the version thatAWSCURRENTwas removed from.If you don't include
VersionStages, then Secrets Manager automatically moves the staging labelAWSCURRENTto this version.
-
rotationToken
public final String rotationToken()
A unique identifier that indicates the source of the request. Required for secret rotations using an IAM assumed role or cross-account rotation, in which you rotate a secret in one account by using a Lambda rotation function in another account. In both cases, the rotation function assumes an IAM role to call Secrets Manager, and then Secrets Manager validates the identity using the token. For more information, see How rotation works and Rotation by Lambda functions.
Sensitive: This field contains sensitive information, so the service does not include it in CloudTrail log entries. If you create your own log entries, you must also avoid logging the information in this field.
- Returns:
- A unique identifier that indicates the source of the request. Required for secret rotations using an IAM
assumed role or cross-account rotation, in which you rotate a secret in one account by using a Lambda
rotation function in another account. In both cases, the rotation function assumes an IAM role to call
Secrets Manager, and then Secrets Manager validates the identity using the token. For more information,
see How
rotation works and Rotation by
Lambda functions.
Sensitive: This field contains sensitive information, so the service does not include it in CloudTrail log entries. If you create your own log entries, you must also avoid logging the information in this field.
-
toBuilder
public PutSecretValueRequest.Builder toBuilder()
- Specified by:
toBuilderin interfaceToCopyableBuilder<PutSecretValueRequest.Builder,PutSecretValueRequest>- Specified by:
toBuilderin classSecretsManagerRequest
-
builder
public static PutSecretValueRequest.Builder builder()
-
serializableBuilderClass
public static Class<? extends PutSecretValueRequest.Builder> serializableBuilderClass()
-
hashCode
public final int hashCode()
- Overrides:
hashCodein classAwsRequest
-
equals
public final boolean equals(Object obj)
- Overrides:
equalsin classAwsRequest
-
equalsBySdkFields
public final boolean equalsBySdkFields(Object obj)
- Specified by:
equalsBySdkFieldsin interfaceSdkPojo
-
toString
public final String toString()
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
-
getValueForField
public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
- Overrides:
getValueForFieldin classSdkRequest
-
sdkFieldNameToField
public final Map<String,SdkField<?>> sdkFieldNameToField()
- Specified by:
sdkFieldNameToFieldin interfaceSdkPojo
-
-