Go için harici bağımlılığı olmayan kimlik doğrulama kütüphanesi go-dev-auth yayımlandı
Öne çıkanlar
- Go standart kütüphanesiyle yazılan paket, harici hiçbir üçüncü taraf bağımlılık gerektirmiyor.
- WebAuthn uyumlu passkey, iki faktörlü doğrulama ve OIDC tabanlı kurumsal SSO desteği sunuyor.
- PostgreSQL, MySQL ve SQLite adaptörleri yerleşik migration ve uyumluluk testleriyle geliyor.
- Ters vekil sunucular arkasındaki IP yanıltmalarını önlemek için sıkı proxy doğrulama kuralları işletiyor.
Go ekosistemi için harici bağımlılık barındırmayan ve Better Auth mimarisini temel alan go-dev-auth adlı yeni bir kimlik doğrulama kütüphanesi açık kaynak olarak kullanıma sunuldu. Yalnızca Go standart kütüphanesi kullanılarak geliştirilen paket, e-posta ve şifre ile girişten sosyal ağ oturumlarına, passkey ve iki aşamalı doğrulamadan kurumsal tekil oturum açma (SSO) altyapısına kadar geniş bir yelpazeyi kapsıyor. Halihazırda 1.0 sürüm öncesi aşamada bulunan araç, üretim ortamlarında test edilmeye devam ediyor.
Kütüphane; PostgreSQL, MySQL ve SQLite gibi ilişkisel veri tabanlarının yanı sıra bellek içi ve MongoDB adaptörlerini destekleyen bir depolama katmanı içeriyor. Tüm adaptörler, aynı uyumluluk test paketinden geçirilerek veri tutarlılığı güvence altına alınıyor. Güvenlik tarafında ise scrypt tabanlı parola hashleme, PKCE destekli OAuth 2.0, hız sınırlama, CSRF koruması ve dinlenme halindeki hassas veriler için AES-256-GCM şifreleme özellikleri yerleşik olarak sunuluyor.
HTTP standardındaki işleyicisi sayesinde Chi, Echo, Gin veya Gorilla gibi popüler çatıların tümüne entegre edilebilen kütüphane, eklenti sistemiyle genişletilebiliyor. Geliştiriciler; organizasyon yönetimi, API anahtarları, JWT üretimi ve geçici sihirli bağlantılar gibi yetenekleri ayrı modüller halinde sisteme dahil edebiliyor. Kütüphanenin 1.0 kararlı sürümünden önceki son aşamalarının bağımsız güvenlik denetimi ve örnek projelerin tamamlanması olduğu belirtildi.
Bu özet yapay zekâ ile hazırlanmıştır; ayrıntılar ve doğrulama için orijinal kaynağa başvurun.