Firebase ile gizlilik ayarlarını saklama

Firebase, kullanıcıların veri toplama ve işleme konusundaki tercihlerini toplamayı ve izlemeyi kolaylaştırır:

  1. Gizlilik ayarlarını kurun
  2. Gizlilik ayarlarını kullanmak için uygulamanızı güncelleyin
  3. Gizlilik ayarlarındaki değişiklikleri takip edin

Gizlilik ayarlarını kurun

Gizlilik ayarlarını toplamak ve saklamak için iki şeye ihtiyacınız olacak: Kullanıcılara gizlilik ayarlarını soracak kullanıcı arayüzü ve bu ayarları saklamanın bir yolu.

Gizlilik ayarları kullanıcı arayüzü oluşturma

Gizlilik ayarları kullanıcı arayüzünün formatı size bağlıdır. Kullanıcı arayüzünüzü oluştururken düşünmeniz gereken birkaç nokta şunlardır:

Topladığınız verileri anlayın

Uygulamanızın depoladığı veya işlediği kullanıcı verilerini kataloglamak için biraz zaman ayırın. Uygulamanızın doğrudan topladığı verileri ve uygulamanızın kullandığı hizmetler tarafından toplanan verileri eklediğinizden emin olun. Firebase hizmetleri için Firebase tarafından işlenen son kullanıcı verilerinin örneklerinin kontrol edilmesi faydalı olabilir.

Kullanıcılara yardımcı olmak için kullanıcı arayüzünüzü tasarlayın

Topladığınız veri türlerini, toplanan verilerin uygulamanıza nasıl yardımcı olacağı veya kullanılacağı da dahil olmak üzere, kısa ve kullanıcı dostu terimlerle açıklamaya çalışın.

Uygulamanızın düzgün çalışması için gereken belirli veriler varsa kullanıcı uygulamanızın çalışması için gereken seçenekleri seçene kadar kullanıcı arayüzünüzdeki gönder düğmesini devre dışı bırakarak hataları önleyebilirsiniz. Bazı veri toplama türlerini etkinleştirip diğerlerini etkinleştirmeyen kullanıcılar için uygulamanızın akışının nasıl olması gerektiğini düşünün.

Kullanıcı gizlilik politikasını kabul edene kadar Gönder düğmesi devre dışı bırakıldı Kullanıcı gizlilik politikasını kabul edene kadar Gönder düğmesi devre dışı bırakıldı

Gizlilik ayarlarının saklanması

Kullanıcılarınızın gizlilik ayarlarını nerede ve nasıl saklayacağınız da size bağlıdır. Bir kullanıcıyı gizlilik ayarları kullanıcı arayüzünde yaptığı seçimlerle ilişkilendirebilecek herhangi bir güvenilir tanımlayıcıyı kullanabilirsiniz.

Yaygın yaklaşımlardan biri, tanımlayıcıyı, uygulamanızda kullandığınız veri deposundaki tercihleri ​​depolamak için bir anahtar olarak kullanmaktır. Örneğin, Firebase Auth UID'lerini bir Gerçek Zamanlı Veritabanı örneğinde anahtar olarak kullanabilir veya Firestore belgelerinin koleksiyonlarını düzenlemek için bir Firebase Örnek Kimliği kullanabilirsiniz.

Örnek: Kullanıcı tercihlerini Kimlik Doğrulama UID'leri ve Gerçek Zamanlı Veritabanı ile saklama

Kullanıcı tercihlerini depolamak için Firebase Auth UID'leri ve Firebase Realtime Database'i kullanan bir sosyal medya uygulamasını düşünün.

Uygulama, kullanıcıların verilerinin güvenli ve gizli kalmasını sağlamak için tercihlerini, kullanıcının yalnızca okuma veya yazmasına izin veren kısıtlayıcı güvenlik kurallarıyla veritabanının ayrı bir bölümüne kaydeder. Uygulama ayrıca beklenen değerlerin yalnızca boolean olduğunu ve beklenmeyen değerleri kabul etmediğini doğrular:

"privacy": {
  "$uid": {
    ".write": "auth.uid === $uid",
    ".read": "auth.uid === $uid",
    "data_processing": {
      ".validate": "newData.isBoolean()"
    },
    "content": {
      ".validate": "newData.isBoolean()"
    },
    "social": {
      ".validate": "newData.isBoolean()"
    },
    "$other": {
      ".validate": "false"
    }
  }
}

Gizlilik ayarlarını kullanmak için uygulamanızı güncelleyin

Kullanıcıların gizlilik ayarlarını uygulamanızda kullanıma sunduktan sonra, belirli ayarları etkinleştiren kullanıcılar için belirli özellikleri açabilirsiniz. Veri toplayan veya toplanan verileri kullanan özellikleri yüklemeden önce uygulamanızın ayarları kontrol etmesini sağlayın. Bir özellik söz konusu olduğunda, bu özellik olmasaydı en iyi deneyimin ne olacağını düşünün. Örneğin, uygulama bir mikroblog platformuysa ve kullanıcı, uygulamanın gönderilerini saklamasını devre dışı bıraktıysa en iyi kullanıcı deneyimi, gönderi oluşturma seçeneğini kaldırmak olabilir.

Gizlilik ayarlarındaki değişiklikleri takip edin

Kullanıcı veri toplama izni verdikten sonra fikrini değiştirebilir. Profilinize veya ayarlar ekranınıza gizlilik ayarlarını güncelleyebilecekleri bir düğme veya bağlantı ekleyin.

"Gizlilik ayarları" bağlantısı, kullanıcıların ayarlarını güncellemesine olanak tanıyan ayarlar iletişim kutusunu açar

Ayrıca, bir kullanıcı veri toplamayı devre dışı bırakmaya karar verdiğinde uygulamanızın nasıl davranması gerektiğine de karar verebilirsiniz. Örneğin kullanıcıya toplanan verileri silme veya bunu otomatik olarak yapma seçeneği sunabilirsiniz. Silinmesi gereken veri miktarına bağlı olarak işlem birkaç dakika sürebileceğinden, verileri silmek için Cloud Functions for Firebase'i kullanmayı düşünün. Bu konuda daha fazla bilgi için kullanıcı verilerini kaldırma ve dışa aktarma kılavuzuna bakın.

Kullanıcılarınızın gizlilik ayarlarının denetim günlüğünü ayrı olarak saklayın

Bazı uygulama geliştiricileri gizlilik ayarlarında yapılan değişikliklerin kaydını tutmak isteyebilir. Bu, Realtime Database veya Firestore kullanılarak, kullanıcının benzersiz tanımlayıcısı altında yapılandırılmış ve yeni gizlilik ayarları ve zaman damgasını içeren, gizlilik değişikliklerinin denetim günlüğü olacak veritabanının yeni bir bölümünü oluşturarak yapılabilir. Bir kullanıcı gizlilik ayarlarını güncellediğinde, biri kullanıcının gizlilik ayarlarına ve diğeri denetim günlüğüne olmak üzere iki yazma işlemi yapın. Daha kısıtlayıcı Güvenlik Kuralları oluşturabilmeniz için bunu ayrı bir bölüm haline getirmeniz önemlidir. Firestore kullanıcıları için ayrıntılı kurallar kullanarak denetim günlüğündeki belgelerin düzenlenemeyeceğini zorunlu kılın:

match /audit_log/{uid} {
   allow create: if uid = request.auth.uid;
   allow update: if false;
   allow delete: if false;
 }

Verilerinizi anlamak, tercihleri ​​toplamak, tercihleri ​​depolamak ve değişiklikleri izlemekten oluşan bu dört adımla, uygulamanızın kullanıcılarınızın gizliliğine saygı duyduğundan emin olmanız çok kolaydır. Firebase, kullanıcıların veri toplama ve işleme konusundaki tercihlerini toplamayı ve izlemeyi kolaylaştırır:

  1. Gizlilik ayarlarını kurun
  2. Gizlilik ayarlarını kullanmak için uygulamanızı güncelleyin
  3. Gizlilik ayarlarındaki değişiklikleri takip edin

Gizlilik ayarlarını kurun

Gizlilik ayarlarını toplamak ve saklamak için iki şeye ihtiyacınız olacak: Kullanıcılara gizlilik ayarlarını soracak kullanıcı arayüzü ve bu ayarları saklamanın bir yolu.

Gizlilik ayarları kullanıcı arayüzü oluşturma

Gizlilik ayarları kullanıcı arayüzünün formatı size bağlıdır. Kullanıcı arayüzünüzü oluştururken düşünmeniz gereken birkaç nokta şunlardır:

Topladığınız verileri anlayın

Uygulamanızın depoladığı veya işlediği kullanıcı verilerini kataloglamak için biraz zaman ayırın. Uygulamanızın doğrudan topladığı verileri ve uygulamanızın kullandığı hizmetler tarafından toplanan verileri eklediğinizden emin olun. Firebase hizmetleri için Firebase tarafından işlenen son kullanıcı verilerinin örneklerinin kontrol edilmesi faydalı olabilir.

Kullanıcılara yardımcı olmak için kullanıcı arayüzünüzü tasarlayın

Topladığınız veri türlerini, toplanan verilerin uygulamanıza nasıl yardımcı olacağı veya kullanılacağı da dahil olmak üzere, kısa ve kullanıcı dostu terimlerle açıklamaya çalışın.

Uygulamanızın düzgün çalışması için gereken belirli veriler varsa kullanıcı uygulamanızın çalışması için gereken seçenekleri seçene kadar kullanıcı arayüzünüzdeki gönder düğmesini devre dışı bırakarak hataları önleyebilirsiniz. Bazı veri toplama türlerini etkinleştirip diğerlerini etkinleştirmeyen kullanıcılar için uygulamanızın akışının nasıl olması gerektiğini düşünün.

Kullanıcı gizlilik politikasını kabul edene kadar Gönder düğmesi devre dışı bırakıldı Kullanıcı gizlilik politikasını kabul edene kadar Gönder düğmesi devre dışı bırakıldı

Gizlilik ayarlarının saklanması

Kullanıcılarınızın gizlilik ayarlarını nerede ve nasıl saklayacağınız da size bağlıdır. Bir kullanıcıyı gizlilik ayarları kullanıcı arayüzünde yaptığı seçimlerle ilişkilendirebilecek herhangi bir güvenilir tanımlayıcıyı kullanabilirsiniz.

Yaygın yaklaşımlardan biri, tanımlayıcıyı, uygulamanızda kullandığınız veri deposundaki tercihleri ​​depolamak için bir anahtar olarak kullanmaktır. Örneğin, Firebase Auth UID'lerini bir Gerçek Zamanlı Veritabanı örneğinde anahtar olarak kullanabilir veya Firestore belgelerinin koleksiyonlarını düzenlemek için bir Firebase Örnek Kimliği kullanabilirsiniz.

Örnek: Kullanıcı tercihlerini Kimlik Doğrulama UID'leri ve Gerçek Zamanlı Veritabanı ile saklama

Kullanıcı tercihlerini depolamak için Firebase Auth UID'leri ve Firebase Realtime Database'i kullanan bir sosyal medya uygulamasını düşünün.

Uygulama, kullanıcıların verilerinin güvenli ve gizli kalmasını sağlamak için tercihlerini, kullanıcının yalnızca okuma veya yazmasına izin veren kısıtlayıcı güvenlik kurallarıyla veritabanının ayrı bir bölümüne kaydeder. Uygulama ayrıca beklenen değerlerin yalnızca boolean olduğunu ve beklenmeyen değerleri kabul etmediğini doğrular:

"privacy": {
  "$uid": {
    ".write": "auth.uid === $uid",
    ".read": "auth.uid === $uid",
    "data_processing": {
      ".validate": "newData.isBoolean()"
    },
    "content": {
      ".validate": "newData.isBoolean()"
    },
    "social": {
      ".validate": "newData.isBoolean()"
    },
    "$other": {
      ".validate": "false"
    }
  }
}

Gizlilik ayarlarını kullanmak için uygulamanızı güncelleyin

Kullanıcıların gizlilik ayarlarını uygulamanızda kullanıma sunduktan sonra, belirli ayarları etkinleştiren kullanıcılar için belirli özellikleri açabilirsiniz. Veri toplayan veya toplanan verileri kullanan özellikleri yüklemeden önce uygulamanızın ayarları kontrol etmesini sağlayın. Bir özellik söz konusu olduğunda, bu özellik olmasaydı en iyi deneyimin ne olacağını düşünün. Örneğin, uygulama bir mikroblog platformuysa ve kullanıcı, uygulamanın gönderilerini saklamasını devre dışı bıraktıysa en iyi kullanıcı deneyimi, gönderi oluşturma seçeneğini kaldırmak olabilir.

Gizlilik ayarlarındaki değişiklikleri takip edin

Kullanıcı veri toplama izni verdikten sonra fikrini değiştirebilir. Profilinize veya ayarlar ekranınıza gizlilik ayarlarını güncelleyebilecekleri bir düğme veya bağlantı ekleyin.

"Gizlilik ayarları" bağlantısı, kullanıcıların ayarlarını güncellemesine olanak tanıyan ayarlar iletişim kutusunu açar

Ayrıca, bir kullanıcı veri toplamayı devre dışı bırakmaya karar verdiğinde uygulamanızın nasıl davranması gerektiğine de karar verebilirsiniz. Örneğin kullanıcıya toplanan verileri silme veya bunu otomatik olarak yapma seçeneği sunabilirsiniz. Silinmesi gereken veri miktarına bağlı olarak işlem birkaç dakika sürebileceğinden, verileri silmek için Cloud Functions for Firebase'i kullanmayı düşünün. Bu konuda daha fazla bilgi için kullanıcı verilerini kaldırma ve dışa aktarma kılavuzuna bakın.

Kullanıcılarınızın gizlilik ayarlarının denetim günlüğünü ayrı olarak saklayın

Bazı uygulama geliştiricileri gizlilik ayarlarında yapılan değişikliklerin kaydını tutmak isteyebilir. Bu, Realtime Database veya Firestore kullanılarak, kullanıcının benzersiz tanımlayıcısı altında yapılandırılmış ve yeni gizlilik ayarları ve zaman damgasını içeren, gizlilik değişikliklerinin denetim günlüğü olacak veritabanının yeni bir bölümünü oluşturarak yapılabilir. Bir kullanıcı gizlilik ayarlarını güncellediğinde, biri kullanıcının gizlilik ayarlarına ve diğeri denetim günlüğüne olmak üzere iki yazma işlemi yapın. Daha kısıtlayıcı Güvenlik Kuralları oluşturabilmeniz için bunu ayrı bir bölüm haline getirmeniz önemlidir. Firestore kullanıcıları için ayrıntılı kurallar kullanarak denetim günlüğündeki belgelerin düzenlenemeyeceğini zorunlu kılın:

match /audit_log/{uid} {
   allow create: if uid = request.auth.uid;
   allow update: if false;
   allow delete: if false;
 }

Verilerinizi anlamak, tercihleri ​​toplamak, tercihleri ​​depolamak ve değişiklikleri izlemekten oluşan bu dört adımla, uygulamanızın kullanıcılarınızın gizliliğine saygı duyduğundan emin olmanız çok kolaydır.