Saya telah membuat Autentikasi berbasis JWT di aplikasi API Web saya. Saya tidak dapat menemukan perbedaan antara
- Token Dasar
- Token Pembawa
Bisakah seseorang membantu saya?
Saya telah membuat Autentikasi berbasis JWT di aplikasi API Web saya. Saya tidak dapat menemukan perbedaan antara
Bisakah seseorang membantu saya?
Jawaban:
Skema otentikasi Basic dan Digest didedikasikan untuk otentikasi menggunakan nama pengguna dan rahasia (lihat RFC7616 dan RFC7617 ).
Skema otentikasi Bearer didedikasikan untuk otentikasi menggunakan token dan dijelaskan oleh RFC6750 . Meskipun skema ini berasal dari spesifikasi OAuth2, Anda masih dapat menggunakannya dalam konteks lain di mana token dipertukarkan antara klien dan server.
Mengenai otentikasi JWT dan karena ini adalah token, pilihan terbaik adalah skema otentikasi Bearer. Namun demikian, tidak ada yang menghalangi Anda untuk menggunakan skema kustom yang sesuai dengan kebutuhan Anda.
Otentikasi dasar mengirimkan kredensial sebagai pasangan ID pengguna / kata sandi, dikodekan menggunakan base64. Klien mengirimkan permintaan HTTP denganAuthorization
header yang berisi kataBasic
kata diikuti dengan spasi danbase64-encoded
string nama pengguna: kata sandi.
Otorisasi: ZGVtbzpwQDU1dzByZA == Dasar
Catatan: Untuk otentikasi dasar, karena ID pengguna dan kata sandi diteruskan melalui jaringan sebagai teks biasa (ini dikodekan base64, tetapi base64 adalah pengkodean yang dapat dibalik), skema otentikasi dasar tidak aman. HTTPS / TLS harus digunakan bersama dengan otentikasi dasar.
Otentikasi pembawa (juga disebut otentikasi token ) memiliki token keamanan yang disebut token pembawa. Nama "Otentikasi pembawa" dapat dipahami sebagai " memberikan akses ke pembawa token ini ". Token pembawa adalah string kriptik, biasanya dibuat oleh server sebagai tanggapan atas permintaan masuk. Klien harus mengirimkan token ini di header Otorisasi saat membuat permintaan ke sumber daya yang dilindungi:
Otorisasi: Pembawa <token>
Catatan: Sama halnya dengan otentikasi Dasar, otentikasi Bearer hanya boleh digunakan melalui HTTPS (SSL) .