Uygulamanızı güven altına almak istiyorsanız, kesinlikle HTTP yerine HTTPS kullanarak başlamalısınız , bu, kullanıcılar arasında ileri geri gönderilen verilerin koklanmasını önleyecek ve verilerin korunmasına yardımcı olacak güvenli bir kanal oluşturmanızı sağlar. gizli değişim.
RESTful API'leri güvenceye almak için JWT'leri (JSON Web Belirteçleri) kullanabilirsiniz , bunun sunucu tarafı oturumlarına kıyasla birçok faydası vardır, faydaları temel olarak şunlardır:
1- Daha fazla ölçeklenebilir, çünkü API sunucularınızın her kullanıcı için oturumları sürdürmesi gerekmeyecektir (bu, birçok oturumunuz olduğunda büyük bir yük olabilir)
2- JWT'ler bağımsızdır ve örneğin kullanıcı rolünü ve neye erişebildiğini ve tarih ve son kullanma tarihinde ne yayınlayabileceğini iddia eder (bundan sonra JWT geçerli olmayacaktır)
3- Yük dengeleyicilerin üstesinden gelmek daha kolaydır ve oturum verilerini paylaşmak veya sunucuyu oturumu aynı sunucuya yönlendirecek şekilde yapılandırmak zorunda kalmayacağınız için birden fazla API sunucunuz varsa, bir JWT'den gelen bir istek herhangi bir sunucuya çarptığında doğrulanabilir & yetkili
4- DB'niz üzerinde daha az baskı ve her istek için oturum kimliği ve verilerini sürekli olarak depolamak ve almak zorunda kalmayacaksınız
5- JWT'yi imzalamak için güçlü bir anahtar kullanırsanız, JWT'lere müdahale edilemez, böylece JWT'deki, kullanıcı oturumunu ve yetkilendirilmiş olup olmadığını kontrol etmek zorunda kalmadan, istekle birlikte gönderilen taleplere güvenebilirsiniz. , JWT'yi kontrol edebilirsiniz ve sonra bu kullanıcının kim ve ne yapabileceğini öğrenmeye hazırsınız.
Birçok kütüphane çoğu programlama dilinde JWT oluşturmak ve doğrulamak için kolay yollar sağlar, örneğin: node.js'de en popüler olanlardan biri jsonwebtoken
REST API'leri genelde müstakil olmasıdır belirteç her istek Yetkilendirme ile gönderilir olarak JWTS bu konsept ile daha uyumlu olacak şekilde, sunucu durum bilgisi olmayan tutmayı amaçlayan bu yana (JWT'yi) sunucu yapmak oturumları kıyasla kullanıcı oturumu izlemek zorunda kalmadan sunucu durum, böylece kullanıcı ve rolünü hatırlar, ancak oturumlar da yaygın olarak kullanılan ve kendi artıları var, isterseniz arayabilirsiniz.
Dikkat edilmesi gereken önemli bir nokta, JWT'yi HTTPS kullanarak güvenli bir şekilde istemciye teslim etmeniz ve güvenli bir yere (örneğin yerel depolamada) kaydetmeniz gerektiğidir.
JWT'ler hakkında daha fazla bilgiyi bu bağlantıdan edinebilirsiniz .