import * as pulumi from "@pulumi/pulumi"; /** * This resource provides the Encrypted Data resource in Oracle Cloud Infrastructure Kms service. * Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/key/latest/EncryptedDatum * * Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/kms * * Encrypts data using the given [EncryptDataDetails](https://docs.cloud.oracle.com/iaas/api/#/en/key/latest/datatypes/EncryptDataDetails) resource. * Plaintext included in the example request is a base64-encoded value of a UTF-8 string. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testEncryptedData = new oci.kms.EncryptedData("test_encrypted_data", { * cryptoEndpoint: encryptedDataCryptoEndpoint, * keyId: testKey.id, * plaintext: encryptedDataPlaintext, * associatedData: encryptedDataAssociatedData, * encryptionAlgorithm: encryptedDataEncryptionAlgorithm, * keyVersionId: testKeyVersion.id, * loggingContext: encryptedDataLoggingContext, * }); * ``` * * ## Import * * Import is not supported for this resource. */ export declare class EncryptedData extends pulumi.CustomResource { /** * Get an existing EncryptedData resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: EncryptedDataState, opts?: pulumi.CustomResourceOptions): EncryptedData; /** * Returns true if the given object is an instance of EncryptedData. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is EncryptedData; /** * Information that can be used to provide an encryption context for the encrypted data. The length of the string representation of the associated data must be fewer than 4096 characters. */ readonly associatedData: pulumi.Output<{ [key: string]: string; } | undefined>; /** * The encrypted data. */ readonly ciphertext: pulumi.Output; /** * The service endpoint to perform cryptographic operations against. Cryptographic operations include 'Encrypt,' 'Decrypt,' and 'GenerateDataEncryptionKey' operations. see Vault Crypto endpoint. */ readonly cryptoEndpoint: pulumi.Output; /** * The encryption algorithm to use to encrypt and decrypt data with a customer-managed key. `AES_256_GCM` indicates that the key is a symmetric key that uses the Advanced Encryption Standard (AES) algorithm and that the mode of encryption is the Galois/Counter Mode (GCM). `RSA_OAEP_SHA_1` indicates that the key is an asymmetric key that uses the RSA encryption algorithm and uses Optimal Asymmetric Encryption Padding (OAEP). `RSA_OAEP_SHA_256` indicates that the key is an asymmetric key that uses the RSA encryption algorithm with a SHA-256 hash and uses OAEP. */ readonly encryptionAlgorithm: pulumi.Output; /** * The OCID of the key to encrypt with. */ readonly keyId: pulumi.Output; /** * The OCID of the key version used to encrypt the ciphertext. */ readonly keyVersionId: pulumi.Output; /** * Information that provides context for audit logging. You can provide this additional data as key-value pairs to include in the audit logs when audit logging is enabled. */ readonly loggingContext: pulumi.Output<{ [key: string]: string; } | undefined>; /** * The plaintext data to encrypt. * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ readonly plaintext: pulumi.Output; /** * Create a EncryptedData resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: EncryptedDataArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering EncryptedData resources. */ export interface EncryptedDataState { /** * Information that can be used to provide an encryption context for the encrypted data. The length of the string representation of the associated data must be fewer than 4096 characters. */ associatedData?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * The encrypted data. */ ciphertext?: pulumi.Input; /** * The service endpoint to perform cryptographic operations against. Cryptographic operations include 'Encrypt,' 'Decrypt,' and 'GenerateDataEncryptionKey' operations. see Vault Crypto endpoint. */ cryptoEndpoint?: pulumi.Input; /** * The encryption algorithm to use to encrypt and decrypt data with a customer-managed key. `AES_256_GCM` indicates that the key is a symmetric key that uses the Advanced Encryption Standard (AES) algorithm and that the mode of encryption is the Galois/Counter Mode (GCM). `RSA_OAEP_SHA_1` indicates that the key is an asymmetric key that uses the RSA encryption algorithm and uses Optimal Asymmetric Encryption Padding (OAEP). `RSA_OAEP_SHA_256` indicates that the key is an asymmetric key that uses the RSA encryption algorithm with a SHA-256 hash and uses OAEP. */ encryptionAlgorithm?: pulumi.Input; /** * The OCID of the key to encrypt with. */ keyId?: pulumi.Input; /** * The OCID of the key version used to encrypt the ciphertext. */ keyVersionId?: pulumi.Input; /** * Information that provides context for audit logging. You can provide this additional data as key-value pairs to include in the audit logs when audit logging is enabled. */ loggingContext?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * The plaintext data to encrypt. * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ plaintext?: pulumi.Input; } /** * The set of arguments for constructing a EncryptedData resource. */ export interface EncryptedDataArgs { /** * Information that can be used to provide an encryption context for the encrypted data. The length of the string representation of the associated data must be fewer than 4096 characters. */ associatedData?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * The service endpoint to perform cryptographic operations against. Cryptographic operations include 'Encrypt,' 'Decrypt,' and 'GenerateDataEncryptionKey' operations. see Vault Crypto endpoint. */ cryptoEndpoint: pulumi.Input; /** * The encryption algorithm to use to encrypt and decrypt data with a customer-managed key. `AES_256_GCM` indicates that the key is a symmetric key that uses the Advanced Encryption Standard (AES) algorithm and that the mode of encryption is the Galois/Counter Mode (GCM). `RSA_OAEP_SHA_1` indicates that the key is an asymmetric key that uses the RSA encryption algorithm and uses Optimal Asymmetric Encryption Padding (OAEP). `RSA_OAEP_SHA_256` indicates that the key is an asymmetric key that uses the RSA encryption algorithm with a SHA-256 hash and uses OAEP. */ encryptionAlgorithm?: pulumi.Input; /** * The OCID of the key to encrypt with. */ keyId: pulumi.Input; /** * The OCID of the key version used to encrypt the ciphertext. */ keyVersionId?: pulumi.Input; /** * Information that provides context for audit logging. You can provide this additional data as key-value pairs to include in the audit logs when audit logging is enabled. */ loggingContext?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * The plaintext data to encrypt. * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ plaintext: pulumi.Input; } //# sourceMappingURL=encryptedData.d.ts.map