All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.secretsmanager.model.PutSecretValueRequest Maven / Gradle / Ivy

Go to download

The AWS Java SDK for AWS Secrets Manager module holds the client classes that are used for communicating with AWS Secrets Manager Service

The newest version!
/*
 * Copyright 2019-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */
package com.amazonaws.services.secretsmanager.model;

import java.io.Serializable;
import javax.annotation.Generated;

import com.amazonaws.AmazonWebServiceRequest;

/**
 * 
 * @see AWS API
 *      Documentation
 */
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class PutSecretValueRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable {

    /**
     * 

* 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 CreateSecret instead. *

*/ private String secretId; /** *

* 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 * ClientRequestToken and 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 ClientRequestToken value 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 SecretString or * SecretBinary values 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 SecretString and * SecretBinary values 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 VersionId of the new version. *

*/ private String clientRequestToken; /** *

* 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 SecretBinary or SecretString, 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. *

*/ private java.nio.ByteBuffer secretBinary; /** *

* The text to encrypt and store in the new version of the secret. *

*

* You must include SecretBinary or SecretString, 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. *

*/ private String secretString; /** *

* 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 label AWSPREVIOUS to the version that AWSCURRENT was removed from. *

*

* If you don't include VersionStages, then Secrets Manager automatically moves the staging label * AWSCURRENT to this version. *

*/ private java.util.List versionStages; /** *

* A unique identifier that indicates the source of the request. For cross-account rotation (when you rotate a * secret in one account by using a Lambda rotation function in another account) and the Lambda rotation function * assumes an IAM role to call Secrets Manager, Secrets Manager validates the identity with the rotation token. For * more information, see How rotation works. *

*

* 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. *

*/ private String rotationToken; /** *

* 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 CreateSecret instead. *

* * @param 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 CreateSecret instead. */ public void setSecretId(String secretId) { this.secretId = 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 CreateSecret instead. *

* * @return 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 CreateSecret instead. */ public String getSecretId() { return this.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 CreateSecret instead. *

* * @param 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 CreateSecret instead. * @return Returns a reference to this object so that method calls can be chained together. */ public PutSecretValueRequest withSecretId(String secretId) { setSecretId(secretId); return this; } /** *

* 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 * ClientRequestToken and 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 ClientRequestToken value 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 SecretString or * SecretBinary values 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 SecretString and * SecretBinary values 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 VersionId of the new version. *

* * @param 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 * ClientRequestToken and 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 ClientRequestToken value 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 SecretString or * SecretBinary values 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 SecretString and * SecretBinary values 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 VersionId of the new version. */ public void setClientRequestToken(String clientRequestToken) { this.clientRequestToken = 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 * ClientRequestToken and 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 ClientRequestToken value 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 SecretString or * SecretBinary values 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 SecretString and * SecretBinary values 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 VersionId of the new version. *

* * @return 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 * ClientRequestToken and 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 ClientRequestToken value 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 SecretString or * SecretBinary values 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 SecretString and * SecretBinary values 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 VersionId of the new version. */ public String getClientRequestToken() { return this.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 * ClientRequestToken and 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 ClientRequestToken value 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 SecretString or * SecretBinary values 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 SecretString and * SecretBinary values 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 VersionId of the new version. *

* * @param 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 * ClientRequestToken and 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 ClientRequestToken value 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 SecretString or * SecretBinary values 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 SecretString and * SecretBinary values 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 VersionId of the new version. * @return Returns a reference to this object so that method calls can be chained together. */ public PutSecretValueRequest withClientRequestToken(String clientRequestToken) { setClientRequestToken(clientRequestToken); return this; } /** *

* 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 SecretBinary or SecretString, 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. *

*

* The AWS SDK for Java performs a Base64 encoding on this field before sending this request to the AWS service. * Users of the SDK should not perform Base64 encoding on this field. *

*

* Warning: ByteBuffers returned by the SDK are mutable. Changes to the content or position of the byte buffer will * be seen by all objects that have a reference to this object. It is recommended to call ByteBuffer.duplicate() or * ByteBuffer.asReadOnlyBuffer() before using or reading from the buffer. This behavior will be changed in a future * major version of the SDK. *

* * @param 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 SecretBinary or SecretString, 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. */ public void setSecretBinary(java.nio.ByteBuffer secretBinary) { this.secretBinary = 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 SecretBinary or SecretString, 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. *

*

* {@code ByteBuffer}s are stateful. Calling their {@code get} methods changes their {@code position}. We recommend * using {@link java.nio.ByteBuffer#asReadOnlyBuffer()} to create a read-only view of the buffer with an independent * {@code position}, and calling {@code get} methods on this rather than directly on the returned {@code ByteBuffer}. * Doing so will ensure that anyone else using the {@code ByteBuffer} will not be affected by changes to the * {@code position}. *

* * @return 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 SecretBinary or SecretString, 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. */ public java.nio.ByteBuffer getSecretBinary() { return this.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 SecretBinary or SecretString, 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. *

*

* The AWS SDK for Java performs a Base64 encoding on this field before sending this request to the AWS service. * Users of the SDK should not perform Base64 encoding on this field. *

*

* Warning: ByteBuffers returned by the SDK are mutable. Changes to the content or position of the byte buffer will * be seen by all objects that have a reference to this object. It is recommended to call ByteBuffer.duplicate() or * ByteBuffer.asReadOnlyBuffer() before using or reading from the buffer. This behavior will be changed in a future * major version of the SDK. *

* * @param 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 SecretBinary or SecretString, 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. * @return Returns a reference to this object so that method calls can be chained together. */ public PutSecretValueRequest withSecretBinary(java.nio.ByteBuffer secretBinary) { setSecretBinary(secretBinary); return this; } /** *

* The text to encrypt and store in the new version of the secret. *

*

* You must include SecretBinary or SecretString, 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. *

* * @param secretString * The text to encrypt and store in the new version of the secret.

*

* You must include SecretBinary or SecretString, 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. */ public void setSecretString(String secretString) { this.secretString = secretString; } /** *

* The text to encrypt and store in the new version of the secret. *

*

* You must include SecretBinary or SecretString, 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. *

* * @return The text to encrypt and store in the new version of the secret.

*

* You must include SecretBinary or SecretString, 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. */ public String getSecretString() { return this.secretString; } /** *

* The text to encrypt and store in the new version of the secret. *

*

* You must include SecretBinary or SecretString, 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. *

* * @param secretString * The text to encrypt and store in the new version of the secret.

*

* You must include SecretBinary or SecretString, 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. * @return Returns a reference to this object so that method calls can be chained together. */ public PutSecretValueRequest withSecretString(String secretString) { setSecretString(secretString); return this; } /** *

* 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 label AWSPREVIOUS to the version that AWSCURRENT was removed from. *

*

* If you don't include VersionStages, then Secrets Manager automatically moves the staging label * AWSCURRENT to this version. *

* * @return 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 label AWSPREVIOUS to the version that AWSCURRENT was removed * from. *

*

* If you don't include VersionStages, then Secrets Manager automatically moves the staging * label AWSCURRENT to this version. */ public java.util.List getVersionStages() { return 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 label AWSPREVIOUS to the version that AWSCURRENT was removed from. *

*

* If you don't include VersionStages, then Secrets Manager automatically moves the staging label * AWSCURRENT to this version. *

* * @param 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 label AWSPREVIOUS to the version that AWSCURRENT was removed from. *

*

* If you don't include VersionStages, then Secrets Manager automatically moves the staging * label AWSCURRENT to this version. */ public void setVersionStages(java.util.Collection versionStages) { if (versionStages == null) { this.versionStages = null; return; } this.versionStages = new java.util.ArrayList(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 label AWSPREVIOUS to the version that AWSCURRENT was removed from. *

*

* If you don't include VersionStages, then Secrets Manager automatically moves the staging label * AWSCURRENT to this version. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setVersionStages(java.util.Collection)} or {@link #withVersionStages(java.util.Collection)} if you want * to override the existing values. *

* * @param 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 label AWSPREVIOUS to the version that AWSCURRENT was removed from. *

*

* If you don't include VersionStages, then Secrets Manager automatically moves the staging * label AWSCURRENT to this version. * @return Returns a reference to this object so that method calls can be chained together. */ public PutSecretValueRequest withVersionStages(String... versionStages) { if (this.versionStages == null) { setVersionStages(new java.util.ArrayList(versionStages.length)); } for (String ele : versionStages) { this.versionStages.add(ele); } return this; } /** *

* 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 label AWSPREVIOUS to the version that AWSCURRENT was removed from. *

*

* If you don't include VersionStages, then Secrets Manager automatically moves the staging label * AWSCURRENT to this version. *

* * @param 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 label AWSPREVIOUS to the version that AWSCURRENT was removed from. *

*

* If you don't include VersionStages, then Secrets Manager automatically moves the staging * label AWSCURRENT to this version. * @return Returns a reference to this object so that method calls can be chained together. */ public PutSecretValueRequest withVersionStages(java.util.Collection versionStages) { setVersionStages(versionStages); return this; } /** *

* A unique identifier that indicates the source of the request. For cross-account rotation (when you rotate a * secret in one account by using a Lambda rotation function in another account) and the Lambda rotation function * assumes an IAM role to call Secrets Manager, Secrets Manager validates the identity with the rotation token. For * more information, see How rotation works. *

*

* 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. *

* * @param rotationToken * A unique identifier that indicates the source of the request. For cross-account rotation (when you rotate * a secret in one account by using a Lambda rotation function in another account) and the Lambda rotation * function assumes an IAM role to call Secrets Manager, Secrets Manager validates the identity with the * rotation token. For more information, see How rotation * works.

*

* 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. */ public void setRotationToken(String rotationToken) { this.rotationToken = rotationToken; } /** *

* A unique identifier that indicates the source of the request. For cross-account rotation (when you rotate a * secret in one account by using a Lambda rotation function in another account) and the Lambda rotation function * assumes an IAM role to call Secrets Manager, Secrets Manager validates the identity with the rotation token. For * more information, see How rotation works. *

*

* 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. *

* * @return A unique identifier that indicates the source of the request. For cross-account rotation (when you rotate * a secret in one account by using a Lambda rotation function in another account) and the Lambda rotation * function assumes an IAM role to call Secrets Manager, Secrets Manager validates the identity with the * rotation token. For more information, see How rotation * works.

*

* 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. */ public String getRotationToken() { return this.rotationToken; } /** *

* A unique identifier that indicates the source of the request. For cross-account rotation (when you rotate a * secret in one account by using a Lambda rotation function in another account) and the Lambda rotation function * assumes an IAM role to call Secrets Manager, Secrets Manager validates the identity with the rotation token. For * more information, see How rotation works. *

*

* 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. *

* * @param rotationToken * A unique identifier that indicates the source of the request. For cross-account rotation (when you rotate * a secret in one account by using a Lambda rotation function in another account) and the Lambda rotation * function assumes an IAM role to call Secrets Manager, Secrets Manager validates the identity with the * rotation token. For more information, see How rotation * works.

*

* 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. * @return Returns a reference to this object so that method calls can be chained together. */ public PutSecretValueRequest withRotationToken(String rotationToken) { setRotationToken(rotationToken); return this; } /** * 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. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getSecretId() != null) sb.append("SecretId: ").append(getSecretId()).append(","); if (getClientRequestToken() != null) sb.append("ClientRequestToken: ").append(getClientRequestToken()).append(","); if (getSecretBinary() != null) sb.append("SecretBinary: ").append("***Sensitive Data Redacted***").append(","); if (getSecretString() != null) sb.append("SecretString: ").append("***Sensitive Data Redacted***").append(","); if (getVersionStages() != null) sb.append("VersionStages: ").append(getVersionStages()).append(","); if (getRotationToken() != null) sb.append("RotationToken: ").append("***Sensitive Data Redacted***"); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof PutSecretValueRequest == false) return false; PutSecretValueRequest other = (PutSecretValueRequest) obj; if (other.getSecretId() == null ^ this.getSecretId() == null) return false; if (other.getSecretId() != null && other.getSecretId().equals(this.getSecretId()) == false) return false; if (other.getClientRequestToken() == null ^ this.getClientRequestToken() == null) return false; if (other.getClientRequestToken() != null && other.getClientRequestToken().equals(this.getClientRequestToken()) == false) return false; if (other.getSecretBinary() == null ^ this.getSecretBinary() == null) return false; if (other.getSecretBinary() != null && other.getSecretBinary().equals(this.getSecretBinary()) == false) return false; if (other.getSecretString() == null ^ this.getSecretString() == null) return false; if (other.getSecretString() != null && other.getSecretString().equals(this.getSecretString()) == false) return false; if (other.getVersionStages() == null ^ this.getVersionStages() == null) return false; if (other.getVersionStages() != null && other.getVersionStages().equals(this.getVersionStages()) == false) return false; if (other.getRotationToken() == null ^ this.getRotationToken() == null) return false; if (other.getRotationToken() != null && other.getRotationToken().equals(this.getRotationToken()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getSecretId() == null) ? 0 : getSecretId().hashCode()); hashCode = prime * hashCode + ((getClientRequestToken() == null) ? 0 : getClientRequestToken().hashCode()); hashCode = prime * hashCode + ((getSecretBinary() == null) ? 0 : getSecretBinary().hashCode()); hashCode = prime * hashCode + ((getSecretString() == null) ? 0 : getSecretString().hashCode()); hashCode = prime * hashCode + ((getVersionStages() == null) ? 0 : getVersionStages().hashCode()); hashCode = prime * hashCode + ((getRotationToken() == null) ? 0 : getRotationToken().hashCode()); return hashCode; } @Override public PutSecretValueRequest clone() { return (PutSecretValueRequest) super.clone(); } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy