Saya ingin menerapkan layanan otentikasi yang lebih kuat dan jwt
merupakan bagian besar dari apa yang ingin saya lakukan, dan saya mengerti cara menulis kode, tetapi saya mengalami sedikit kesulitan memahami perbedaan antara cadangan iss
dan aud
klaim. Saya mengerti bahwa yang mendefinisikan server yang mengeluarkan token dan yang merujuk pada aplikasi yang dimaksudkan untuk digunakan. Tetapi yang saya pahami adalah bahwa audiens dan penerbit saya adalah hal yang sama dengan myserver.com
menerbitkan token sehingga orang yang datang ke myserver.com
dapat disahkan dan diautentikasi. Saya kira saya tidak melihat perbedaan antara kedua klaim, meskipun saya tahu ada satu.
Ada artikel bagus yang ditulis dimsdn
pada semua klaim yang dipesan dan di situlah saya paling bingung karena mereka memiliki penerbit dan pemirsa yang sama sekali berbeda.
sumber
Jawaban:
Ini dimaksudkan untuk skenario di mana Anda memiliki token yang mengeluarkan otoritas yang tidak sama dengan aplikasi yang menjadi penerima yang dimaksud.
Ini mungkin tidak berbeda untuk aplikasi Anda.
Tetapi pertimbangkan aplikasi berskala besar. Anda mungkin memiliki server OAuth atau SSO yang mengeluarkan sertifikat, dan aplikasi yang menginginkan token yang menunjukkan server SSO telah memeriksa kredensial pengguna dan telah menyetujui pengguna untuk menggunakan aplikasi tersebut. Jika demikian, Anda mungkin memiliki token dengan
"aud": "aud.example.com"
dan"iss": "sso.example.com"
.sumber
jwt
atau mengabaikannya karena keduanya identik?aud
kadang-kadang menjadi pihak ketiga atau tidak?aud
bisa berupa nilai tunggal atau array. Seharusnya cocok dengan setiap penerima atau prosesor yang dituju. Katakanlah Anda adalah pengguna (atau aplikasi) yang ingin memanggil api.example.com untuk menjalankan kueri. Jika api.example.com mempercayai beberapa layanan auth pihak ketiga (misalnya Auth0) untuk menangani otentikasi, maka layanan auth tersebut harus diisiaud
dengan 'api.example.com', dan aplikasi di 'api.example.com' harus memverifikasi bahwa itulah kasus. Lingkup lebih rinci daripada audiens, dan dapat dimasukkan dalam payload juga.