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

com.amazonaws.services.kms.model.GenerateRandomRequest Maven / Gradle / Ivy

Go to download

The AWS Java SDK for AWS KMS module holds the client classes that are used for communicating with AWS Key Management 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.kms.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 GenerateRandomRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable {

    /**
     * 

* The length of the random byte string. This parameter is required. *

*/ private Integer numberOfBytes; /** *

* Generates the random byte string in the CloudHSM cluster that is associated with the specified CloudHSM key * store. To find the ID of a custom key store, use the DescribeCustomKeyStores operation. *

*

* External key store IDs are not valid for this parameter. If you specify the ID of an external key store, * GenerateRandom throws an UnsupportedOperationException. *

*/ private String customKeyStoreId; /** *

* A signed attestation * document from an Amazon Web Services Nitro enclave and the encryption algorithm to use with the enclave's * public key. The only valid encryption algorithm is RSAES_OAEP_SHA_256. *

*

* This parameter only supports attestation documents for Amazon Web Services Nitro Enclaves. To include this * parameter, use the Amazon Web Services * Nitro Enclaves SDK or any Amazon Web Services SDK. *

*

* When you use this parameter, instead of returning plaintext bytes, KMS encrypts the plaintext bytes under the * public key in the attestation document, and returns the resulting ciphertext in the * CiphertextForRecipient field in the response. This ciphertext can be decrypted only with the private * key in the enclave. The Plaintext field in the response is null or empty. *

*

* For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web Services * Nitro Enclaves uses KMS in the Key Management Service Developer Guide. *

*/ private RecipientInfo recipient; /** *

* The length of the random byte string. This parameter is required. *

* * @param numberOfBytes * The length of the random byte string. This parameter is required. */ public void setNumberOfBytes(Integer numberOfBytes) { this.numberOfBytes = numberOfBytes; } /** *

* The length of the random byte string. This parameter is required. *

* * @return The length of the random byte string. This parameter is required. */ public Integer getNumberOfBytes() { return this.numberOfBytes; } /** *

* The length of the random byte string. This parameter is required. *

* * @param numberOfBytes * The length of the random byte string. This parameter is required. * @return Returns a reference to this object so that method calls can be chained together. */ public GenerateRandomRequest withNumberOfBytes(Integer numberOfBytes) { setNumberOfBytes(numberOfBytes); return this; } /** *

* Generates the random byte string in the CloudHSM cluster that is associated with the specified CloudHSM key * store. To find the ID of a custom key store, use the DescribeCustomKeyStores operation. *

*

* External key store IDs are not valid for this parameter. If you specify the ID of an external key store, * GenerateRandom throws an UnsupportedOperationException. *

* * @param customKeyStoreId * Generates the random byte string in the CloudHSM cluster that is associated with the specified CloudHSM * key store. To find the ID of a custom key store, use the DescribeCustomKeyStores operation.

*

* External key store IDs are not valid for this parameter. If you specify the ID of an external key store, * GenerateRandom throws an UnsupportedOperationException. */ public void setCustomKeyStoreId(String customKeyStoreId) { this.customKeyStoreId = customKeyStoreId; } /** *

* Generates the random byte string in the CloudHSM cluster that is associated with the specified CloudHSM key * store. To find the ID of a custom key store, use the DescribeCustomKeyStores operation. *

*

* External key store IDs are not valid for this parameter. If you specify the ID of an external key store, * GenerateRandom throws an UnsupportedOperationException. *

* * @return Generates the random byte string in the CloudHSM cluster that is associated with the specified CloudHSM * key store. To find the ID of a custom key store, use the DescribeCustomKeyStores operation.

*

* External key store IDs are not valid for this parameter. If you specify the ID of an external key store, * GenerateRandom throws an UnsupportedOperationException. */ public String getCustomKeyStoreId() { return this.customKeyStoreId; } /** *

* Generates the random byte string in the CloudHSM cluster that is associated with the specified CloudHSM key * store. To find the ID of a custom key store, use the DescribeCustomKeyStores operation. *

*

* External key store IDs are not valid for this parameter. If you specify the ID of an external key store, * GenerateRandom throws an UnsupportedOperationException. *

* * @param customKeyStoreId * Generates the random byte string in the CloudHSM cluster that is associated with the specified CloudHSM * key store. To find the ID of a custom key store, use the DescribeCustomKeyStores operation.

*

* External key store IDs are not valid for this parameter. If you specify the ID of an external key store, * GenerateRandom throws an UnsupportedOperationException. * @return Returns a reference to this object so that method calls can be chained together. */ public GenerateRandomRequest withCustomKeyStoreId(String customKeyStoreId) { setCustomKeyStoreId(customKeyStoreId); return this; } /** *

* A signed attestation * document from an Amazon Web Services Nitro enclave and the encryption algorithm to use with the enclave's * public key. The only valid encryption algorithm is RSAES_OAEP_SHA_256. *

*

* This parameter only supports attestation documents for Amazon Web Services Nitro Enclaves. To include this * parameter, use the Amazon Web Services * Nitro Enclaves SDK or any Amazon Web Services SDK. *

*

* When you use this parameter, instead of returning plaintext bytes, KMS encrypts the plaintext bytes under the * public key in the attestation document, and returns the resulting ciphertext in the * CiphertextForRecipient field in the response. This ciphertext can be decrypted only with the private * key in the enclave. The Plaintext field in the response is null or empty. *

*

* For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web Services * Nitro Enclaves uses KMS in the Key Management Service Developer Guide. *

* * @param recipient * A signed attestation document from an Amazon Web Services Nitro enclave and the encryption algorithm to use * with the enclave's public key. The only valid encryption algorithm is RSAES_OAEP_SHA_256. *

*

* This parameter only supports attestation documents for Amazon Web Services Nitro Enclaves. To include this * parameter, use the Amazon Web * Services Nitro Enclaves SDK or any Amazon Web Services SDK. *

*

* When you use this parameter, instead of returning plaintext bytes, KMS encrypts the plaintext bytes under * the public key in the attestation document, and returns the resulting ciphertext in the * CiphertextForRecipient field in the response. This ciphertext can be decrypted only with the * private key in the enclave. The Plaintext field in the response is null or empty. *

*

* For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web * Services Nitro Enclaves uses KMS in the Key Management Service Developer Guide. */ public void setRecipient(RecipientInfo recipient) { this.recipient = recipient; } /** *

* A signed attestation * document from an Amazon Web Services Nitro enclave and the encryption algorithm to use with the enclave's * public key. The only valid encryption algorithm is RSAES_OAEP_SHA_256. *

*

* This parameter only supports attestation documents for Amazon Web Services Nitro Enclaves. To include this * parameter, use the Amazon Web Services * Nitro Enclaves SDK or any Amazon Web Services SDK. *

*

* When you use this parameter, instead of returning plaintext bytes, KMS encrypts the plaintext bytes under the * public key in the attestation document, and returns the resulting ciphertext in the * CiphertextForRecipient field in the response. This ciphertext can be decrypted only with the private * key in the enclave. The Plaintext field in the response is null or empty. *

*

* For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web Services * Nitro Enclaves uses KMS in the Key Management Service Developer Guide. *

* * @return A signed attestation document from an Amazon Web Services Nitro enclave and the encryption algorithm to use * with the enclave's public key. The only valid encryption algorithm is RSAES_OAEP_SHA_256. *

*

* This parameter only supports attestation documents for Amazon Web Services Nitro Enclaves. To include * this parameter, use the Amazon Web * Services Nitro Enclaves SDK or any Amazon Web Services SDK. *

*

* When you use this parameter, instead of returning plaintext bytes, KMS encrypts the plaintext bytes under * the public key in the attestation document, and returns the resulting ciphertext in the * CiphertextForRecipient field in the response. This ciphertext can be decrypted only with the * private key in the enclave. The Plaintext field in the response is null or empty. *

*

* For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web * Services Nitro Enclaves uses KMS in the Key Management Service Developer Guide. */ public RecipientInfo getRecipient() { return this.recipient; } /** *

* A signed attestation * document from an Amazon Web Services Nitro enclave and the encryption algorithm to use with the enclave's * public key. The only valid encryption algorithm is RSAES_OAEP_SHA_256. *

*

* This parameter only supports attestation documents for Amazon Web Services Nitro Enclaves. To include this * parameter, use the Amazon Web Services * Nitro Enclaves SDK or any Amazon Web Services SDK. *

*

* When you use this parameter, instead of returning plaintext bytes, KMS encrypts the plaintext bytes under the * public key in the attestation document, and returns the resulting ciphertext in the * CiphertextForRecipient field in the response. This ciphertext can be decrypted only with the private * key in the enclave. The Plaintext field in the response is null or empty. *

*

* For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web Services * Nitro Enclaves uses KMS in the Key Management Service Developer Guide. *

* * @param recipient * A signed attestation document from an Amazon Web Services Nitro enclave and the encryption algorithm to use * with the enclave's public key. The only valid encryption algorithm is RSAES_OAEP_SHA_256. *

*

* This parameter only supports attestation documents for Amazon Web Services Nitro Enclaves. To include this * parameter, use the Amazon Web * Services Nitro Enclaves SDK or any Amazon Web Services SDK. *

*

* When you use this parameter, instead of returning plaintext bytes, KMS encrypts the plaintext bytes under * the public key in the attestation document, and returns the resulting ciphertext in the * CiphertextForRecipient field in the response. This ciphertext can be decrypted only with the * private key in the enclave. The Plaintext field in the response is null or empty. *

*

* For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web * Services Nitro Enclaves uses KMS in the Key Management Service Developer Guide. * @return Returns a reference to this object so that method calls can be chained together. */ public GenerateRandomRequest withRecipient(RecipientInfo recipient) { setRecipient(recipient); 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 (getNumberOfBytes() != null) sb.append("NumberOfBytes: ").append(getNumberOfBytes()).append(","); if (getCustomKeyStoreId() != null) sb.append("CustomKeyStoreId: ").append(getCustomKeyStoreId()).append(","); if (getRecipient() != null) sb.append("Recipient: ").append(getRecipient()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof GenerateRandomRequest == false) return false; GenerateRandomRequest other = (GenerateRandomRequest) obj; if (other.getNumberOfBytes() == null ^ this.getNumberOfBytes() == null) return false; if (other.getNumberOfBytes() != null && other.getNumberOfBytes().equals(this.getNumberOfBytes()) == false) return false; if (other.getCustomKeyStoreId() == null ^ this.getCustomKeyStoreId() == null) return false; if (other.getCustomKeyStoreId() != null && other.getCustomKeyStoreId().equals(this.getCustomKeyStoreId()) == false) return false; if (other.getRecipient() == null ^ this.getRecipient() == null) return false; if (other.getRecipient() != null && other.getRecipient().equals(this.getRecipient()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getNumberOfBytes() == null) ? 0 : getNumberOfBytes().hashCode()); hashCode = prime * hashCode + ((getCustomKeyStoreId() == null) ? 0 : getCustomKeyStoreId().hashCode()); hashCode = prime * hashCode + ((getRecipient() == null) ? 0 : getRecipient().hashCode()); return hashCode; } @Override public GenerateRandomRequest clone() { return (GenerateRandomRequest) super.clone(); } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy