VPC Hizmet Kontrolleri

VPC Hizmet Kontrolleri, kuruluşların veri hırsızlığı risklerini azaltmak için Google Cloud kaynaklarının çevresinde bir sınır tanımlamasına olanak tanır. VPC Hizmet Kontrolleri ile, açıkça belirttiğiniz hizmetlerin kaynaklarını ve verilerini koruyan çevreler oluşturursunuz.

Paket halinde sunulan Cloud Firestore hizmet

Aşağıdaki API'ler, VPC Hizmet Kontrolleri'nde birlikte paketlenir:

  • firestore.googleapis.com
  • datastore.googleapis.com
  • firestorekeyvisualizer.googleapis.com

Bir çevrede firestore.googleapis.com hizmetini kısıtladığınızda çevre, datastore.googleapis.com ve firestorekeyvisualizer.googleapis.com hizmetlerini de kısıtlar.

datastore.googleapis.com hizmetini kısıtlama

datastore.googleapis.com hizmeti, firestore.googleapis.com hizmetiyle birlikte sunulur. datastore.googleapis.com hizmetini kısıtlamak için firestore.googleapis.com hizmetini aşağıdaki şekilde kısıtlamanız gerekir:

  • Google Cloud Console'u kullanarak hizmet çevresi oluştururken kısıtlanmış hizmet olarak Cloud Firestore hizmetini ekleyin.
  • Google Cloud CLI kullanarak hizmet çevresi oluştururken datastore.googleapis.com yerine firestore.googleapis.com kullanın.

    --perimeter-restricted-services=firestore.googleapis.com
    

Datastore için App Engine eski paket hizmet

Datastore için App Engine eski paketlenmiş hizmetleri, hizmet çevrelerini desteklemez. Datastore hizmetini bir hizmet çevresiyle korumak, App Engine eski paket hizmetlerinden gelen trafiği engeller. Eski paket hizmetler şunlardır:

İçe ve dışa aktarma işlemlerinde çıkış koruması

Cloud Firestore, VPC Hizmet Kontrolleri'ni destekler ancak içe ve dışa aktarma işlemlerinde tam çıkış koruması elde etmek için ek yapılandırma gerektirir. İçe ve dışa aktarma işlemlerini yetkilendirmek için varsayılan App Engine hizmet hesabı yerine Cloud Firestore hizmet aracısını kullanmanız gerekir. İçe ve dışa aktarma işlemleri için yetkilendirme hesabını görüntülemek ve yapılandırmak üzere aşağıdaki talimatları uygulayın.

Cloud Firestore hizmet aracısı

Cloud Firestore, içe ve dışa aktarma işlemlerini yetkilendirmek için App Engine hizmet hesabı yerine Cloud Firestore hizmet aracısını kullanır. Hizmet aracısı ve hizmet hesabı aşağıdaki adlandırma kurallarını kullanır:

Cloud Firestore hizmet aracısı
service-PROJECT_NUMBER@gcp-sa-firestore.iam.gserviceaccount.com

Cloud Firestore, daha önce Cloud Firestore hizmet aracısı yerine App Engine varsayılan hizmet hesabını kullanıyordu. Veritabanınız, verileri içe veya dışa aktarmak için hâlâ App Engine hizmet hesabını kullanıyorsa Cloud Firestore hizmet aracısını kullanmaya geçmek için bu bölümdeki talimatları uygulamanızı öneririz.

App Engine hizmet hesabı
PROJECT_ID@appspot.gserviceaccount.com

Cloud Firestore hizmet aracısı, Cloud Firestore'e özel olduğu için tercih edilir. App Engine hizmet hesabı birden fazla hizmet tarafından paylaşılıyor.

Yetkilendirme hesabını görüntüleme

İçe ve dışa aktarma işlemlerinizin istekleri yetkilendirmek için hangi hesabı kullandığını Google Cloud Console'daki İçe/Dışa Aktarma sayfasından görüntüleyebilirsiniz. Veritabanınızın Cloud Firestore hizmet aracısını kullanıp kullanmadığını da görüntüleyebilirsiniz.

  1. İçe/dışa aktarma işleri şu hesapla çalıştırılır etiketinin yanındaki yetkilendirme hesabını görüntüleyin.

Projeniz Cloud Firestore hizmet aracısını kullanmıyorsa aşağıdaki yöntemlerden birini kullanarak Cloud Firestore hizmet aracısına geçiş yapabilirsiniz:

Bu tekniklerden ilki, etki kapsamını tek bir Cloud Firestore projesiyle sınırladığı için tercih edilir. İkinci teknik, mevcut Cloud Storage paketi izinlerini taşımadığı için tercih edilmez. Ancak kuruluş düzeyinde güvenlik uygunluğu sunar.

Cloud Storage paket izinlerini kontrol edip güncelleyerek taşıma

Taşıma işlemi iki adımdan oluşur:

  1. Cloud Storage paketi izinlerini güncelleyin. Ayrıntılar için aşağıdaki bölüme bakın.
  2. Cloud Firestore hizmet aracısına geçişi onaylayın.

Hizmet aracısı paketi izinleri

Başka bir projedeki Cloud Storage paketini kullanan tüm içe veya dışa aktarma işlemleri için Cloud Firestore hizmet aracısına bu paketle ilgili izinleri vermeniz gerekir. Örneğin, verileri başka bir projeye taşıyan işlemlerin, diğer projedeki bir pakete erişmesi gerekir. Aksi takdirde, Cloud Firestore hizmet aracısına geçiş yapıldıktan sonra bu işlemler başarısız olur.

Aynı proje içinde kalan içe ve dışa aktarma iş akışları, izinlerde değişiklik yapılmasını gerektirmez. Cloud Firestore hizmet aracısı, varsayılan olarak aynı projedeki paketlere erişebilir.

service-PROJECT_NUMBER@gcp-sa-firestore.iam.gserviceaccount.com hizmet aracısına erişim vermek için diğer projelerdeki Cloud Storage paketlerinin izinlerini güncelleyin. Hizmet aracısına Firestore Service Agent rolünü verin.

Firestore Service Agent rolü, bir Cloud Storage paketi için okuma ve yazma izinleri verir. Yalnızca okuma veya yalnızca yazma izinleri vermeniz gerekiyorsa özel rol kullanın.

Aşağıdaki bölümde açıklanan taşıma işlemi, izin güncellemeleri gerektirebilecek Cloud Storage paketlerini belirlemenize yardımcı olur.

Projeleri Firestore hizmet aracısına taşıma

App Engine hizmet hesabından Cloud Firestore hizmet aracısına geçiş yapmak için aşağıdaki adımları uygulayın. Taşıma işlemi tamamlandıktan sonra geri alınamaz.

  1. Projeniz henüz Cloud Firestore hizmet aracısına taşınmadıysa taşıma işlemini açıklayan bir banner ve Paket Durumunu Kontrol Et düğmesi görürsünüz. Sonraki adım, olası izin hatalarını belirleyip düzeltmenize yardımcı olur.

    Paket Durumunu Kontrol Et'i tıklayın.

    Taşıma işleminizi tamamlamanızı sağlayan bir seçeneğin ve Cloud Storage paketlerinin listesinin yer aldığı bir menü gösterilir. Listenin yüklenmesi birkaç dakika sürebilir.

    Bu listede, yakın zamanda içe ve dışa aktarma işlemlerinde kullanılan ancak şu anda Cloud Firestore hizmet aracısına okuma ve yazma izinleri vermeyen paketler yer alır.

  2. Projenizin Cloud Firestore hizmet aracısının asıl adını not edin. Hizmet aracısı adı, Erişim izni verilecek hizmet aracısı etiketinin altında görünür.
  3. Listede gelecekteki içe veya dışa aktarma işlemleri için kullanacağınız tüm paketlerde aşağıdaki adımları tamamlayın:

    1. Bu paketin tablo satırında Düzelt'i tıklayın. Bu işlem, ilgili paketin izinler sayfasını yeni bir sekmede açar.

    2. Ekle'yi tıklayın.
    3. Yeni ana hesaplar alanına Cloud Firestore hizmet aracınızın adını girin.
    4. Select a role (Rol seçin) alanında Service Agents > Firestore Service Agent'ı (Hizmet Aracıları > Firestore Hizmet Aracısı) seçin.
    5. Kaydet'i tıklayın.
    6. Cloud Firestore İçe/Dışa Aktarma sayfasının bulunduğu sekmeye dönün.
    7. Listedeki diğer paketler için bu adımları tekrarlayın. Listenin tüm sayfalarını görüntülediğinizden emin olun.
  4. Migrate to Firestore Service Agent'ı (Firestore Hizmet Aracısı'na taşı) tıklayın. İzin kontrolleri başarısız olan paketleriniz varsa Taşı'yı tıklayarak taşıma işleminizi onaylamanız gerekir.

    Taşıma işleminiz tamamlandığında bir uyarı alırsınız. Taşıma işlemi geri alınamaz.

Taşıma durumunu görüntüleme

Projenizin taşıma durumunu doğrulamak için:

  1. İçe/dışa aktarma işleri şu şekilde çalıştırılır etiketinin yanındaki sorumluyu bulun.

    İşlemci service-PROJECT_NUMBER@gcp-sa-firestore.iam.gserviceaccount.com ise projeniz Cloud Firestore hizmet aracısına zaten taşınmıştır. Taşıma işlemi geri alınamaz.

    Proje taşınmadıysa sayfanın üst kısmında Paket Durumunu Kontrol Et düğmesinin bulunduğu bir banner görünür. Taşıma işlemini tamamlamak için Firestore hizmet aracısına geçiş başlıklı makaleyi inceleyin.

Kuruluş genelinde politika kısıtlaması ekleme

  • Kuruluşunuzun politikasında aşağıdaki kısıtlamayı ayarlayın:

    İçe/dışa aktarma için Firestore hizmet aracısı gerektir (firestore.requireP4SAforImportExport).

    Bu kısıtlama, içe ve dışa aktarma işlemlerinin istekleri yetkilendirmek için Cloud Firestore hizmet aracısını kullanmasını gerektirir. Bu kısıtlamayı ayarlamak için Kuruluş politikaları oluşturma ve yönetme başlıklı makaleyi inceleyin.

Bu kuruluş politikası kısıtlamasının uygulanması, Cloud Firestore hizmet aracısına uygun Cloud Storage paketi izinlerini otomatik olarak vermez.

Kısıtlama, içe veya dışa aktarma iş akışları için izin hatalarına neden oluyorsa kısıtlamayı devre dışı bırakarak varsayılan hizmet hesabını kullanmaya geri dönebilirsiniz. Cloud Storage paketi izinlerini kontrol edip güncelledikten sonra kısıtlamayı tekrar etkinleştirebilirsiniz.