Cloud Firestore'teki tüm etkin olmayan veriler varsayılan olarak Google'ın varsayılan şifrelemesi ile şifrelenir. Cloud Firestore bu şifrelemeyi sizin adınıza yönetir.
Verilerinizi koruyan anahtarlarla ilgili belirli uyumluluk veya yasal şartlarınız varsa Cloud Firestore için müşteri tarafından yönetilen şifreleme anahtarlarını (CMEK) kullanabilirsiniz. Verilerinizi koruyan şifreleme anahtarlarını Google'ın yönetmesi yerine Cloud Firestore veritabanınız, Cloud Key Management Service (Cloud KMS)'de kontrol ettiğiniz ve yönettiğiniz bir anahtar kullanılarak korunur.
Bu sayfada Cloud Firestore için CMEK açıklanmaktadır. CMEK'nin ne zaman ve neden etkinleştirileceği de dahil olmak üzere genel olarak CMEK hakkında daha fazla bilgi için aşağıdaki Cloud KMS dokümanlarına bakın:
- Müşteri tarafından yönetilen şifreleme anahtarları (CMEK)
- CMEK'leri kullanmayla ilgili en iyi uygulamalar
Cloud Firestore ile CMEK ile ilgili görevleri gerçekleştirme talimatları için CMEK'yi kullanma başlıklı makaleyi inceleyin.
Özellikler
- Veri kontrolü: CMEK, KMS anahtarını yönetmenize olanak tanır. Cloud Firestore veritabanınızdaki etkin olmayan verileri şifrelemek için kullanılan anahtarı döndürebilir, devre dışı bırakabilir ve yok edebilirsiniz.
- Performans: CMEK, Cloud Firestore HDS'yi etkilemez.
- Denetlenebilirlik: Cloud KMS için denetleme günlük kaydını etkinleştirirseniz anahtardaki tüm işlemler kaydedilir ve Cloud Logging'de görüntülenebilir.
- Kuruluş politikası kısıtlamaları: Kuruluşunuzdaki Cloud Firestore veritabanları için şifreleme uyumluluk şartlarını belirtmek üzere CMEK kuruluş politikası kısıtlamalarını kullanabilirsiniz.
Fiyatlandırma
Cloud KMS, anahtarın maliyeti ve bu anahtar kullanılarak gerçekleştirilen tüm kriptografik işlemler için ücret alır. Daha fazla bilgi için Cloud KMS fiyatlandırması başlıklı makaleyi inceleyin.
Cloud Firestore, Cloud KMS anahtarından şifreleme veya şifre çözme işlemi yapmasını istediğinde işlem maliyetleri için sizden ücret alınır. Müşteri tarafından yönetilen anahtar tarafından yapılan şifreleme/şifre çözme işlemi 5 dakikada bir gerçekleşir ve veritabanı istekleriyle senkronize edilmez. Cloud Firestore tarafından oluşturulan şifreleme işlemlerinin beklenen sayısı göz önüne alındığında maliyetler genellikle düşüktür. Cloud Denetleme Günlükleri'nin maliyetleri ek bir harcamadır ancak beklenen şifreleme işlemleri sayısı göz önüne alındığında genellikle düşük olması beklenir.
CMEK korumalı veritabanı kullanmak için ek Cloud Firestore maliyeti yoktur ve Cloud Firestore fiyatlandırması geçerli olmaya devam eder.
Bir veritabanı anahtarınızı iptal ederseniz depolama alanı maliyeti, anahtarın kullanılabildiği son günün boyutuna göre alınır. Veritabanı silinene veya anahtar tekrar kullanılabilir hale gelene kadar bu veritabanı boyutunda depolama alanı maliyetleri ödemeye devam edersiniz.
CMEK ile korunan veriler
Cloud Firestore CMEK ile korunan bir veritabanı oluşturduğunuzda, Cloud KMS anahtarınız etkin olmayan verileri korumak için kullanılır. Dizinler ve yedekler dahil olmak üzere diskte veya flash sürücüde depolanan veriler de buna dahildir. Bazı istisnalar geçerlidir. Aşağıdaki veri türleri, CMEK anahtarıyla değil, Google varsayılan şifrelemeyle şifrelenir:
- Aktarım halindeki veya bellekte bulunan veriler
- Veritabanı meta verileri
Kullanılamayan anahtar durumu nasıl ele alınır?
Şifreleme ve şifre çözme işlemleri her veri isteği için gönderilmez. Bunun yerine, Cloud Firestore sistemi, anahtarın hâlâ kullanılabilir olup olmadığını kontrol etmek için 5 dakikada bir Cloud KMS'yi sorgulayarak anahtar kullanılabilir durumdaysa şifreleme ve şifre çözme işlemlerini gerçekleştirir.
Sistem, anahtarın kullanılamadığını algılarsa 10 dakika içinde Cloud Firestore veritabanına yapılan sonraki tüm çağrılar (okuma, yazma ve sorgu dahil) The customer-managed encryption key required by the requested
resource is not accessible
mesajıyla birlikte bir FAILED_PRECONDITION
hatası döndürür.
Veritabanında yaşam süresi (TTL) politikaları varsa ve anahtar kullanılamaz durumdayken herhangi bir süre aşılırsa TTL'ye göre veri silme işlemi, anahtar yeniden etkinleştirilene kadar ertelenir. Veritabanında devam eden uzun süreli işlemler varsa bu işlemler aşağıdaki şekilde etkilenir:
- Veri içe aktarma veya dışa aktarma işlemleri ilerleme kaydetmeyi durdurur ve
Failed
olarak işaretlenir. Anahtar yeniden etkinleştirilirse başarısız işlemler yeniden denenmez. - Dizine ekleme işlemleri ve yeni TTL politikalarını etkinleştiren işlemler ilerleme kaydetmeyi durdurur. Anahtar yeniden etkinleştirilirse durdurulan işlemler yeniden denenir.
Anahtarlar, Cloud Firestore'nin anahtara erişmesine kasıtlı olarak izin verilmeyen durumlarda kullanılamaz olarak kabul edilir. Bunlardan bazıları:
- Kullanımdaki anahtar sürümünü devre dışı bırakma veya kaldırma. Anahtar sürümünü silerken dikkatli olun. Bu işlem kurtarılamaz veri kaybına neden olabilir.
- Cloud Firestore hizmet hesabından anahtara erişme iznini kaldırma.
Anahtar yeniden etkinleştirilirse anket işlemi, anahtarın tekrar kullanılabilir olduğunu algılar. Erişim genellikle birkaç dakika içinde yeniden etkinleştirilir ancak bu işlem nadiren birkaç saati bulabilir. Cloud KMS anahtarlarında bir anahtarı devre dışı bırakma veya silme gibi bazı işlemlerin dağıtılmasının 3 saat kadar sürebileceğini unutmayın. Cloud Firestore, Cloud KMS'de geçerlilik kazanana kadar değişiklikleri algılamaz.
Anahtarların yeniden etkinleştirilmesi, duruma bağlı olarak aşağıdakileri içerir:
- Devre dışı bırakılmış bir anahtar sürümünü yeniden etkinleştirme.
- Kaldırılan bir anahtar sürümünü geri yükleme. Anahtar sürümleri kalıcı olarak kaldırılmadan önce kaldırılması planlanır. Anahtarları yalnızca anahtar sürümünün kaldırılmasının planlandığı dönemde geri yükleyebilirsiniz. Kalıcı olarak silinmiş bir anahtarı geri yükleyemezsiniz.
- Cloud Firestore hizmet aracısına anahtara erişme iznini yeniden verme.
Anahtar rotasyonuyla ilgili dikkat edilmesi gereken noktalar
CMEK anahtarını döndürdüğünüzde Cloud Firestore, veritabanını CMEK anahtarının en son birincil sürümüyle yeniden şifreler. Yeniden şifreleme işlemi sırasında hem eski hem de yeni anahtar sürümünü kullanılabilir durumda tutun. Yeniden şifreleme işlemi tamamlandıktan sonra, CMEK anahtarının eski sürümlerini devre dışı bırakmak veya silmek, yeni birincil anahtar sürümüyle şifrelendiği için veritabanına erişimi devre dışı bırakmaz.
Ayrıca, bir veritabanını korumak için kullanılan anahtar sürümlerini de görüntüleyebilirsiniz. Daha fazla bilgi için Kullanımda olan anahtarı görüntüleme başlıklı makaleyi inceleyin.
Harici anahtarlarla ilgili dikkat edilmesi gereken noktalar
Cloud EKM anahtarı kullandığınızda Google'ın, harici anahtar yönetim iş ortağı sistemindeki harici olarak yönetilen anahtarınızın müsaitliği üzerinde herhangi bir denetimi yoktur.
Harici olarak yönetilen bir anahtar kullanılamıyorsa Cloud Firestore, bir saate kadar tam veritabanı işlemlerini en iyi şekilde desteklemeye devam eder.
Bir saat sonra Cloud Firestore hâlâ Cloud KMS'ye bağlanamazsa koruyucu bir önlem olarak veritabanını çevrimdışı almaya başlar.Cloud Firestore Veritabanına yapılan çağrılar, ek ayrıntılar içeren bir FAILED_PRECONDITION
hatasıyla başarısız olur.
Harici anahtarları kullanma hakkında daha fazla bilgi için Cloud External Key Manager belgelerine bakın.
Yedekleme ve geri yükleme
Yedeklemeler, oluşturuldukları veritabanıyla aynı şifreleme mekanizmasını kullanır. CMEK ile korunan bir Cloud Firestore veritabanı yedek oluşturduğunda, yedeği yedek oluşturulduğu sırada kullanılan birincil anahtar sürümüyle şifreler.
Cloud Firestore, yedekleme planlarını etkinleştirdiğiniz andan itibaren 24 saat geçtikten sonra CMEK veritabanının ilk yedeğini oluşturur.
Cloud Firestore yedeklemeleri hakkında daha fazla bilgi için Verileri yedekleme ve geri yükleme başlıklı makaleyi inceleyin.
Yedekleme üzerinden geri yüklenen veritabanları varsayılan olarak yedeklemeyle aynı şifreleme mekanizmasını kullanır. Bir veritabanını geri yüklerken aşağıdaki yöntemlerden biriyle farklı bir şifreleme türü belirtebilirsiniz:
- Yeni belirtilen bir anahtara sahip bir CMEK veritabanına geri yükleme.
- Google'ın varsayılan şifrelemesini kullanan CMEK dışı bir veritabanına geri yükleyin.
- Yedekle aynı şifrelemeyi kullanan bir veritabanına geri yükleyin.
Cloud Firestore veritabanını yedekten geri yükleme hakkında daha fazla bilgi için Veritabanı yedeğinden veri geri yükleme başlıklı makaleyi inceleyin. CMEK ile korunan bir Cloud Firestore veritabanını yedekten geri yükleme hakkında daha fazla bilgi için CMEK ile korunan bir veritabanını geri yükleme başlıklı makaleyi inceleyin.
Anahtar izleme
Anahtarın koruduğu kaynakları (ör. Cloud Firestore veritabanları) görüntülemek için anahtar izlemeyi kullanabilirsiniz. Anahtar izleme hakkında daha fazla bilgi için Anahtar kullanımını görüntüleme başlıklı makaleyi inceleyin.
CMEK ve anahtar kullanılabilirliği
Anahtarlar kullanılamadığında veya devre dışı bırakıldığında, CMEK özellikli veritabanlarında aşağıdaki davranışların ortaya çıkabileceğini unutmayın:
- Cloud Firestore Nokta anı kurtarma (PITR) ayarları, CMEK tarafından şifrelenmeyen veritabanı meta verileri olduğundan, CMEK özellikli bir veritabanında anahtar kullanılamıyor olsa bile bu ayarları değiştirebilirsiniz.
- Kullanılamayan anahtarları içeren bir CMEK veritabanını silebilirsiniz.
- CMEK özellikli bir veritabanı oluşturduğunuzda devre dışı bırakılan anahtarlar, Google Cloud Console'daki kullanılabilir anahtar listesinde gösterilmez. Devre dışı bırakılmış bir anahtarı manuel olarak girerseniz veritabanı oluşturma işlemi
FAILED_PRECONDITION
400 hatasıyla başarısız olur.
Sınırlamalar
- CMEK ile korunan bir veritabanının anahtarını değiştiremezsiniz. Anahtarları döndürebilir, etkinleştirebilir ve devre dışı bırakabilirsiniz.
- CMEK korumalı veritabanları, Anahtar Görselleştirici'yi yalnızca varlık ve doküman verileri için destekler, dizin verileri için desteklemez.
- Mevcut veritabanlarında CMEK'yi etkinleştiremezsiniz. CMEK'yi yalnızca yeni veritabanlarında etkinleştirebilirsiniz ve veritabanını oluştururken etkinleştirmeniz gerekir. Mevcut CMEK dışı bir veritabanındaki verileri CMEK ile korunan bir veritabanına taşımak için verilerinizi dışa aktarın ve ardından verileri yeni bir CMEK ile korunan veritabanına aktarın. CMEK olmayan bir veritabanındaki verileri CMEK veritabanına da geri yükleyebilirsiniz.
- Cloud Firestore, CMEK ile korunan sınırlı sayıda veritabanını destekler.
- Cloud Functions (1. nesil) entegrasyonuyla CMEK koruması desteklenmez. CMEK koruması kullanmak istiyorsanız Cloud Run işlevleri Firestore Tetikleyicileri'ni (2. nesil) kullanın.