Son birkaç yılda, müşteri tarafı (tarayıcı) uygulamalarına yönelik eğilim gerçekten artmıştır.
En son projem için zamanla denemeye, taşınmaya ve müşteri tarafında bir uygulama yazmaya karar verdim.
Bu uygulamanın bir kısmı, kullanıcılara işlem e-postaları göndermeyi içerir (örneğin, kaydolma, parola sıfırlama e-postalarını vb. Doğrula). E-postaları göndermek için üçüncü taraf bir API kullanıyorum.
Normalde uygulamamın bir sunucuda çalışmasını sağlardım. Üçüncü taraf API’yi sunucumdaki koddan arardım.
Bir istemci tarafı uygulama çalıştırmak, bunun şimdi kullanıcının tarayıcısında yapılması gerektiği anlamına gelir. Üçüncü taraf API, bunu başarmak için gerekli JavaScript dosyalarını sağlar.
Görebildiğim ilk göze çarpan sorun, bir API anahtarı kullanmam gerektiği. Bu normalde sunucumda güvenli bir şekilde saklanır, ancak şimdi büyük olasılıkla bu anahtarı istemci tarayıcısına vermem gerekecek.
Bu sorunu çözebileceğimi farz edersek, sonraki sorun, teknik açıdan meraklı bir kullanıcının, JavaScript geliştiricileri aracını bir tarayıcıya yüklemesini ve uygulamada belirlediğim kurallara uymak yerine, istedikleri gibi e-posta API'sini kullanmasını engelleyen şeydir. .
Sanırım genel sorum şu - bir müşteri tarafı uygulamanın kötü amaçlı kullanımını nasıl önleyebiliriz?