public sealed class Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions : IMessage<Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions>, IEquatable<Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions>, IDeepCloneable<Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions>, IBufferMessage, IMessage
Reference documentation and code samples for the Firestore Admin v1 API class Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions.
The configuration options for using CMEK (Customer Managed Encryption
Key) encryption.
Required. Only keys in the same location as the database are allowed to
be used for encryption.
For Firestore's nam5 multi-region, this corresponds to Cloud KMS
multi-region us. For Firestore's eur3 multi-region, this corresponds to
Cloud KMS multi-region europe. See
https://cloud.google.com/kms/docs/locations.
The expected format is
projects/{project_id}/locations/{kms_location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003eThis document provides reference documentation for the \u003ccode\u003eCustomerManagedEncryptionOptions\u003c/code\u003e class within the Firestore Admin v1 API.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eCustomerManagedEncryptionOptions\u003c/code\u003e class is used to configure encryption using Customer Managed Encryption Keys (CMEK).\u003c/p\u003e\n"],["\u003cp\u003eThe latest version of this class is 3.12.0, but there is a history of versions going back to 2.2.0 which are linked.\u003c/p\u003e\n"],["\u003cp\u003eThis class, implementing various interfaces like IMessage, IEquatable, and IDeepCloneable, allows for managing encryption keys, such as the \u003ccode\u003eKmsKeyName\u003c/code\u003e property.\u003c/p\u003e\n"],["\u003cp\u003eThe class has a constructor that accepts another \u003ccode\u003eCustomerManagedEncryptionOptions\u003c/code\u003e object for creating copies.\u003c/p\u003e\n"]]],[],null,["# Firestore Admin v1 API - Class Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions (3.15.0)\n\nVersion latestkeyboard_arrow_down\n\n- [3.15.0 (latest)](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/latest/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions)\n- [3.14.0](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/3.14.0/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions)\n- [3.13.0](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/3.13.0/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions)\n- [3.12.0](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/3.12.0/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions)\n- [3.11.0](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/3.11.0/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions)\n- [3.10.0](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/3.10.0/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions)\n- [3.9.0](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/3.9.0/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions)\n- [3.8.0](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/3.8.0/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions)\n- [3.7.0](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/3.7.0/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions)\n- [3.6.0](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/3.6.0/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions)\n- [3.5.0](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/3.5.0/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions)\n- [3.4.0](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/3.4.0/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions)\n- [3.3.0](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/3.3.0/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions)\n- [3.2.0](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/3.2.0/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions)\n- [3.1.0](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/3.1.0/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions)\n- [3.0.0](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/3.0.0/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions)\n- [2.4.0](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/2.4.0/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions)\n- [2.3.0](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/2.3.0/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions)\n- [2.2.0](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/2.2.0/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions) \n\n public sealed class Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions : IMessage\u003cDatabase.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions\u003e, IEquatable\u003cDatabase.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions\u003e, IDeepCloneable\u003cDatabase.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Firestore Admin v1 API class Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions.\n\nThe configuration options for using CMEK (Customer Managed Encryption\nKey) encryption. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[Database](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/latest/Google.Cloud.Firestore.Admin.V1.Database)[Types](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/latest/Google.Cloud.Firestore.Admin.V1.Database.Types)[EncryptionConfig](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/latest/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig)[Types](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/latest/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types)[CustomerManagedEncryptionOptions](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/latest/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[Database](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/latest/Google.Cloud.Firestore.Admin.V1.Database)[Types](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/latest/Google.Cloud.Firestore.Admin.V1.Database.Types)[EncryptionConfig](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/latest/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig)[Types](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/latest/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types)[CustomerManagedEncryptionOptions](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/latest/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[Database](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/latest/Google.Cloud.Firestore.Admin.V1.Database)[Types](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/latest/Google.Cloud.Firestore.Admin.V1.Database.Types)[EncryptionConfig](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/latest/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig)[Types](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/latest/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types)[CustomerManagedEncryptionOptions](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/latest/Google.Cloud.Firestore.Admin.V1.Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions), [IBufferMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IBufferMessage.html), [IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage.html) \n\nInherited Members\n-----------------\n\n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode) \n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\nNamespace\n---------\n\n[Google.Cloud.Firestore.Admin.V1](/dotnet/docs/reference/Google.Cloud.Firestore.Admin.V1/latest/Google.Cloud.Firestore.Admin.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.Firestore.Admin.V1.dll\n\nConstructors\n------------\n\n### CustomerManagedEncryptionOptions()\n\n public CustomerManagedEncryptionOptions()\n\n### CustomerManagedEncryptionOptions(CustomerManagedEncryptionOptions)\n\n public CustomerManagedEncryptionOptions(Database.Types.EncryptionConfig.Types.CustomerManagedEncryptionOptions other)\n\nProperties\n----------\n\n### KmsKeyName\n\n public string KmsKeyName { get; set; }\n\nRequired. Only keys in the same location as the database are allowed to\nbe used for encryption.\n\nFor Firestore's nam5 multi-region, this corresponds to Cloud KMS\nmulti-region us. For Firestore's eur3 multi-region, this corresponds to\nCloud KMS multi-region europe. See\n\u003chttps://cloud.google.com/kms/docs/locations\u003e.\n\nThe expected format is\n`projects/{project_id}/locations/{kms_location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`."]]