3.0 KiB
3.0 KiB
Super Admin Scope
Neden tenant rolünden ayrı?
tenant_membersbir kullanıcının bir veya daha fazla tenant içindeki rolünü taşır.platform_membershipsise kullanıcının ürün genelindeki yetkisini taşır.- Böylece aynı kullanıcı:
- birden fazla klinik/lab tenant'ına bağlı olabilir
- aynı anda platformda
super_adminveyasupportolabilir - tenant rolü ile platform rolü birbirine karışmaz
İlk faz modülleri
1. Tenant & Plan Yönetimi
- tenant listeleme
- tenant detay
- plan atama/değiştirme
- aktif/pasif durumu
- üye limiti
- workflow/feature override görüntüleme
2. Abonelik & AI Kredisi
- tenant subscription durumu
- billing provider bilgileri
- aylık AI kredi tahsisi
- bonus kredi
- manuel kredi düzeltmeleri
- kredi hareket geçmişi
3. Kullanım & Operasyon
- AI kullanım logları
- tenant başına maliyet/yoğunluk
- en çok kredi tüketen tenant ve kullanıcılar
- admin müdahale logları
4. Platform Erişimi
- super admin atama
- support / finance ops / operations rolleri
- kim hangi işlemi yaptı audit takibi
Veri modeli
platform_memberships
user_idrole:super_admin | support | finance_ops | operations | read_onlystatus:active | suspended
tenant_subscriptions
tenant_idplan:starter | pro | enterprisestatus:trialing | active | past_due | cancelled | pausedbilling_providerprovider_customer_idprovider_subscription_idperiod_startperiod_endai_monthly_creditsai_bonus_credits
ai_credit_ledger
tenant_identry_type:monthly_allocation | bonus_allocation | usage_debit | manual_adjustment | refund | expiredeltabalance_afterreference_typereference_idcreated_by_user_idnote
ai_usage_logs
tenant_iduser_idjob_idactionmodelcredit_costtoken_inputtoken_outputlatency_ms
admin_audit_logs
actor_user_idactor_roleaction_typetarget_collectiontarget_record_idtarget_tenant_idsummarymetadata
Yetki ilkeleri
super_admin: tüm platform yetkilerifinance_ops: abonelik ve kredi yönetimioperations: tenant ve operasyonel müdahalelersupport: destek amaçlı görünüm + sınırlı düzeltmelerread_only: sadece raporlama ve denetim
Multi-tenant kullanıcı kuralı
- bir kullanıcı
tenant_membersüzerinde birden fazla kayda sahip olabilir - her kayıt
(tenant_id, user_id)bazında benzersiz kalır - aktif tenant seçimi UI durumudur, kimlik modeli değildir
- platform erişimi tenant seçimine bağlı değildir
Uygulama akışı
- kullanıcı login olur
- auth katmanı:
tenant_membersplatform_membershipskayıtlarını ayrı çeker
- normal uygulama tenant seçimiyle çalışır
- super admin paneli
platform_membershipsüzerinden açılır
Sonraki implementasyon adımları
- super admin route guard
- dashboard ekranı
- tenant subscription listesi
- AI kredi müdahale ekranı
- audit log görünümü