Observer iki seviyeli bir izin modeli kullanır. Her kullanıcının yönetici işlevlerine erişimi kontrol eden bir platform rolü vardır. Her proje içinde, kullanıcıların dava verileriyle neler yapabileceğini kontrol eden bir proje rolü de vardır. Bunun üzerine, üç hassasiyet bayrağı yanıtlarda hangi alanların görüneceğini kısıtlar.

Platform Rolleri

Platform rolleri kullanıcı hesabı oluşturulduğunda ayarlanır ve yalnızca bir yönetici tarafından değiştirilebilir.

RolNe yapabilirler
adminHer şeye tam erişim — kullanıcılar, projeler, referans verileri, tüm davalar
staffReferans verileri ve projeleri yönetme; diğer kullanıcıları yönetemez
consultantAtandıkları projelerde çalışma; yönetici paneline erişim yok
guestAtandıkları projelerde salt okunur erişim

Platform yöneticileri tüm projelerde otomatik olarak proje sahibi olarak hareket eder — proje düzeyindeki izin kontrollerini tamamen atlarlar.

Proje Rolleri

Proje rolleri belirli bir proje içinde geçerlidir. Bir kullanıcının projeye erişebilmesi için açıkça atanması gerekir.

RolSıraNe yapabilirler
owner4Projeyi silme dahil her şey
manager3Tüm dava veri işlemleri + ekip üyelerini yönetme
consultant2Dava oluşturma, okuma, güncelleme ve veri dışa aktarma
viewer1Dava verilerine salt okunur erişim

Eylem Gereksinimleri

EylemMinimum proje rolü
Veri okumaviewer
Kayıt oluşturmaconsultant
Kayıt güncellemeconsultant
Kayıt silmemanager
Üye yönetimimanager
Veri dışa aktarmaconsultant

Hassasiyet Bayrakları

Her proje izninin bir yönetici veya sahip tarafından kullanıcı başına, proje başına ayarlanan üç bağımsız boolean bayrağı vardır.

BayrakNeyi kontrol eder
can_view_contactKişi kayıtlarındaki telefon numaraları ve e-posta adresleri
can_view_personalTam ad, doğum tarihi, ulusal kimlik (external_id), onay bilgisi
can_view_documentsBelge dosyası erişimi ve belge meta verileri

Bir bayrak kapalı olduğunda, ilgili alanlar API yanıtlarından ve CSV dışa aktarmalarından çıkarılır — veriler veritabanında kalır ancak o kullanıcıya gönderilmez. can_view_personal: false olan bir danışman kayıt oluşturabilse de dışa aktarma yoluyla ulusal kimliklere veya doğum tarihlerine erişemez.

İzin Atama

Yalnızca platform yöneticileri ve proje sahipleri/yöneticileri proje izinleri atayabilir.

Kullanıcıyı projeye ekle

POST /admin/projects/:project_id/permissions
{
  "user_id": "01J...",
  "role": "consultant",
  "can_view_contact": true,
  "can_view_personal": false,
  "can_view_documents": false
}

Mevcut izni güncelle

PUT /admin/projects/:project_id/permissions/:permission_id

Kullanıcıyı projeden kaldır

DELETE /admin/projects/:project_id/permissions/:permission_id

Yaygın Ayarlar

Saha çalışanı (consultant, kısıtlı kişisel veri)

{
  "role": "consultant",
  "can_view_contact": true,
  "can_view_personal": false,
  "can_view_documents": false
}

Koordinasyon için telefon numaraları görünür; ulusal kimlik veya doğum tarihlerine erişim yok.

Süpervizör (manager, tam erişim)

{
  "role": "manager",
  "can_view_contact": true,
  "can_view_personal": true,
  "can_view_documents": true
}

Dış denetçi (viewer, hassas veri yok)

{
  "role": "viewer",
  "can_view_contact": false,
  "can_view_personal": false,
  "can_view_documents": false
}