Kimlik ve üyelik
bae içinde hiçbir yerde hesap sistemi yoktur. Bir kitaplıktaki her kişi bir coven üyesidir: rastgele, kalıcı bir üye kimliği ve iki anahtar çifti, biri imzalamak, diğeri anahtarların mühürlendiği; bunlar o kişinin tüm aygıtlarınca paylaşılır ve her aygıtın OS keyring’inde tutulur. Bir aygıt, kendi kimliği olan ve tek bir üyeye ait tek bir kurulumdur. Bir kitaplığa kimlerin ait olduğu, bulut evindeki imzalı kayıt kümesidir; her üyenin aygıtı bunları denetler ve hiçbir sunucu tarafından verilmez. Mekanizma coven’indir; bu sayfa bae’in onu nasıl kullandığını anlatır.
Üyelik kayıtları
Bu bölüme bağlantıBir kitaplığın bulut evindeki bütün geçmişi tek numaralı bir dizidir ve her aygıt onu aynı sırayla uygular. Üyelik veya ayar değişikliği bu dizide bir yönetici girdisidir; yazarının anahtarıyla imzalanır ve hemen önceki duruma göre değerlendirilir, böylece her aygıt kendi başına aynı karara varır. Bir girdi yalnızca yazarının yapmaya yetkisi varsa sayılır ve kitaplık her zaman en az bir yönetici tutar.
Bir aygıtın gönderdiği her değişiklik bu kayda göre denetlenir: güncel bir üye tarafından, kaldırılmamış bir aygıttan imzalanmış mı. Kaldırılmış aygıtlardan veya üyelerden, hiç eklenmemiş anahtarlardan ya da geçersiz imzalarla gelen değişiklikler sayılmaz. Sağlayıcı kayıtları saklar ama sahtesini üretemez.
Roller
Bu bölüme bağlantıYönetici ve Üye kitaplığı hem okur hem yazar: coven kitaplık yazmalarında izin denetlemez, bu yüzden salt okunur bir rol tutunamazdı. Yöneticiler ayrıca kişileri davet eder ve kaldırır, rolleri değiştirir ve kitaplığı yeniden adlandırır. Kitaplığa bulut evini veren kişi onun ilk yöneticisidir.
| İşlem | Kim |
|---|---|
| Bir kişiyi davet etmek | bir yönetici |
| Bir aygıt eklemek | kişinin kendisi, yeni aygıttan, geri yükleme koduyla |
| Bir aygıtı kaldırmak | sahibi olan kişi veya herhangi bir yönetici |
| Bir kişiyi kaldırmak | bir yönetici |
| Kitaplığı yeniden adlandırmak | bir yönetici |
Bir kişinin profili, puanları, geçmişi ve çalma listeleri sahip satırlarıdır: yalnızca o kişinin aygıtları onları değiştirebilir, bu yüzden birine atfedilen bir puan gerçekten ondan gelir.
Kendi aygıtınızı ekleme
Bu bölüme bağlantıGeri yükleme kodu bir aygıtın kişiye ait olduğunu kanıtlar, bu yüzden onaya gerek yoktur:
- Yeni aygıt kodu, kişinin başka bir aygıtının gösterdiği QR kodu tarayarak, Apple aygıtlarında iCloud Anahtar Zinciri’nden veya yazarak alır.
- Depolamaya ulaşır: Dropbox ve OneDrive’da kişinin kendi hesabında oturum açarak, S3’te QR kodun kodun yanında taşıdığı erişim anahtarıyla.
- Kitaplığı yükler, kodun anahtarlarının güncel bir üyeye ait olduğunu denetler ve kendini bu anahtarlarla imzalanmış bir girdiyle yeni aygıt olarak kaydeder.
Anahtarları o zamandan beri değiştirilmiş bir kod başarısız olur. Geri yükleme her zaman yeni bir aygıt oluşturur; başka bir kurulumun gönderilmemiş düzenlemelerini kurtarmaz.
Bir kişiyi davet etme
Bu bölüme bağlantı- Bir yönetici kişinin sağlayıcı hesabını girer ve rolünü seçer. bae kitaplığın klasörünü o hesapla paylaşır ya da S3’te onun için bir erişim anahtarı oluşturur ve bir davet gösterir: kitaplığın konumunu, kişi için seçilen üye kimliğini, tek kullanımlık bir sırrı ve kitaplığın güncel adını tutan bir QR kod. Davet oluşturulduktan bir gün sonra sona erer.
- Kişinin aygıtı onu tarar, kişinin kendi hesabında oturum açar, anahtar çiftlerini oluşturur ve depolamaya, davetin sırrından türetilen bir anahtarla şifrelenmiş ve yeni anahtarıyla imzalanmış bir katılma isteği yazar.
- Sırrı tutan tek aygıt olan yöneticinin aygıtı isteği gösterir ve yönetici onaylar.
- Onay her depo anahtarını kişinin yeni mühürleme anahtarına mühürler, ardından onu kabul eden girdiyi ekler.
- Yeni aygıt anahtarlarını açar, kitaplığı yükler, kendini kaydeder ve kişinin profilini yazdığı adla yazar.
Daveti reddetmek veya süresinin dolmasına izin vermek, verdiği sağlayıcı erişimini geri alır.
Kaldırma
Bu bölüme bağlantıBir aygıtı veya kişiyi kaldırmak bir yönetici girdisidir ve dizideki yeri geçmişte bir çizgidir: kaldırılan aygıtın veya kişinin ondan sonra gönderdiği sayılmaz, önce ulaşanlar ise kalır. Bir kişiyi kaldırmak aygıtlarını ve özel çemberini de kaldırır ve tuttuğu anahtarlar daha fazla veri yazılmadan önce değiştirilir (Şifreleme bölümüne bakın). Depolama erişimini kesmek sağlayıcının işidir: kitaplığı tutan hesabın aygıtı klasörün paylaşımını kaldırır ve S3’te kişinin erişim anahtarı silinir. Kaldırılan aygıta daha önce eşzamanlanan şey onda kalır; veri geri gönderilemez.
Geri yükleme kodları
Bu bölüme bağlantıGeri yükleme kodu bir üyenin kimliğini ve güncel özel anahtar çiftlerini, kitaplığın depo kimliğini ve depolama konumunu tutar; asla depolama kimlik bilgilerini, oturum token’larını veya kitaplığın adını tutmaz. İstek üzerine gösterilir, Apple platformlarında iCloud Anahtar Zinciri’nde otomatik saklanır ve kitaplığın kendisi kadar hassastır: onu elinde tutan, depolamaya erişimi de varsa, kitaplık için o kişidir. Her aygıtını ve kodunu kaybeden bir kişi, bir yönetici tarafından mevcut üye kimliğine yeniden davet edilebilir; bu onun anahtarlarını değiştirir.