Solidus Pod Nasıl Çalışır
Solidus Pod, Community Solid Server 7.1.9 sürümünü sabitlenmiş ve değiştirilmemiş olarak çalıştırır. Bu, bizim değil Solid topluluğunun inşa ettiği gerçek Solid yazılımıdır. Aşağıdakiler yalnızca onun etrafına koyduğumuz şeyi tarif eder. Solid'in kendisi bizim işimiz değildir ve bu sayfa onu tarif etmez.

Bir istek, tek bir hizmete bağlı hamiline yazılı bir jeton yerine did:solidus tabanlı bir kimlik taşır. Bir köprü, onu pod sunucusunun anladığı Solid-OIDC/WebID biçimine yeniden yazar. Sunucu daha sonra o yeniden yazılmış isteği, istenen kaynağa iliştirilmiş Web Erişim Denetimi kurallarına karşı kontrol eder. İzin verilen istekler geçer. Diğer her şey kapıda durur.
Üç bileşen, üç iş ve yalnızca ortadaki bizim.
CSS nedir ve neden bizim değildir
Community Solid Server, Solid Protokolünün bağımsız olarak sürdürülen referans uygulamasıdır; Tim Berners-Lee'nin projesinin kişisel veri podları, depolama ve Bağlı Veri Platformu okuma/yazma semantiği için tasarladığı şartname.
Solid bu problemi Solidus var olmadan yıllar önce çözdü: kişisel veriyi tek bir uygulamanın veritabanının dışında saklamanın, RDF tabanlı, çalışan bir yolu; arkasında bildirilmiş kurumsal dağıtımlarla. CSS 7.1.9'u olduğu gibi çalıştırıyoruz. Çatallanmış bir depolama katmanı yok. Yeniden yazılmış LDP işleme yok. Altında bize ait bir erişim denetimi motoru yok. Yerelde başlatın, kökü isteyin, yanıt gerçek LDP Link başlıkları taşır, çünkü yanıt veren gerçek bir Solid sunucusudur.
Bunların hiçbirini biz inşa etmedik ve ettiğimizi iddia etmiyoruz. Eklediğimiz şey, CSS'in içinde bir yerine geçen olarak değil, önünde bir köprü olarak durur.
İstek yolu, adım adım
Kimlik bir did:solidus olarak girer. Bir çağıran, ağın başka her yerinde yaptığı gibi, bir WebID profil URL'si ya da hizmete özgü bir API anahtarı yerine W3C DID Method Registry içinde kayıtlı bir did:solidus tanımlayıcısıyla kimlik doğrular. Yoldaki bize ait tek mimari tercih budur ve kanıtlanmış bir iyileştirme değil, bir bahistir. WebID arkasında yılların üretim dağıtımını taşır.
Bir köprü o kimliği CSS'in beklediği biçime çevirir. CSS Solid-OIDC ve WebID konuşur, did:solidus değil. Kimse ona bunu öğretmedi ve biz de öğrenmesini istemedik. Dolayısıyla istek, bir did:solidus kimliğini CSS'in kendi terimleriyle değerlendirebileceği Solid-OIDC/WebID biçimli bir kimlik bilgisine eşleyen bir çeviri katmanından geçer. Bu gerçek bir dönüştürme işidir, yani bir şemanın kimin sorduğuna dair beyanının bir başka şemanın beklediği biçime yeniden yazılması, süslü bir yeniden etiketleme değil. Şemadaki gerçekten yeni tek altyapı parçası odur. Onun her iki yanındaki her şey, ya yukarı akış Solid yazılımıdır ya da iyi anlaşılmış bir izin kontrolü.
CSS, çevrilmiş isteği WAC kurallarına karşı kontrol eder. İstek CSS'in tanıdığı bir şeye benzedikten sonra, Web Erişim Denetimi o kaynağın kurallarına karşı olağan kontrolünü çalıştırır. WAC, Solid'in bir kaynağı kimin okuyabileceğini, yazabileceğini, ona ekleme yapabileceğini ya da onu denetleyebileceğini söylemek için kullandığı RDF tabanlı sözcük dağarcığıdır. Bu uygulama CSS'in içinde gerçekleşir. Paralel bir yetkilendirme motoru yazmadık ve karara müdahale etmiyor ya da onu geçersiz kılmıyoruz. Köprünün işi ikinci adımda biter.
Kapı ya açılır ya açılmaz. İzin verilen bir istek kaynağa ulaşır. İzin verilmeyen bir istek hiçbir şeye ulaşmaz; herhangi bir Solid pod'unun yetkisiz bir çağırana döndürdüğü aynı 401 ya da 403 ile. Her iki sonuç da aynı kuralı çalıştıran aynı mekanizmadır. Daha nazik bir başarısızlık yolu ve sessiz bir izin yoktur. Şema, durdurulmuş dalı başarılı olanla aynı ağırlıkta çizer, bilerek; çünkü yalnızca mutlu yolunu gösteren bir izin sistemi nasıl çalıştığını tarif etmiyordur.
Sevk edilmiş olan, olmayan
Bu sayfa mekanizmayı mimarisi kurulduğu hâliyle tarif eder. Üç ayaktan hangisinin üretimde doğrulandığı, hangisinin yalnızca yerel geliştirmede kanıtlandığı, kendi cevabı olan ayrı bir sorudur. Her parça hakkındaki kalem kalem karar için Solidus Pod'da Gerçekte Ne Canlı sayfasına bakın: CSS'in teyit edilmiş yerel açılışı, köprünün üretim durumu ve geçemediğimiz Solid Uygunluk Test Paketi kapısı. Bu sayfanın yolu tarif edişini, her ayağın canlı olduğunun teyidi diye okumayın. O, diğer sayfanın işidir.
Kimlik çevirisi ayağı ve did:solidus'u WebID'ye tercih etmenin neye mal olduğu ile ne kazandırdığı için WebID ve did:solidus karşılaştırması sayfasına bakın. İzin kontrolünün kendi WAC/ACL derinlemesine incelemesi burada.
Bu, Solidus Pod'u ne yapar ve ne yapmaz
Değiştirilmemiş CSS artı bir did:solidus köprüsü, Solidus Pod'u Solid ile uyumlu ve göçe hazır yapar. Veri fazla sürtünme olmadan içeri ve dışarı hareket eder.
Bu, Solidus Pod'u Solid'e uygun yapmaz ve biz onu öyle tarif etmiyoruz. Solid Uygunluk Test Paketini dağıtılmış örneğe karşı geçmek, atlamayı tercih ettiğimiz bir formalite değil, belirli ve bitmemiş bir mühendisliktir. O kapı geçilene ve bağımsız olarak kontrol edilebilir hâle gelene kadar dürüst sözcük uyumludur. O cümlede kıdemsiz taraf Solid değil, Solidus'tur.
Bunların hiçbiri bir ana ağda çalışmaz, bir jetonla desteklenmez ya da bağımsız bir güvenlik denetiminden geçmemiştir. Burada söylenmiştir, başkasının fark etmesine bırakılmamıştır.