Jadual Kandungan
Kandungan soalan
Penyelesaian
Rumah pembangunan bahagian belakang Golang Adakah pembolehubah NEXTAUTH_SECRET sama dengan rahsia bahagian belakang yang digunakan untuk menjana token JWT?

Adakah pembolehubah NEXTAUTH_SECRET sama dengan rahsia bahagian belakang yang digunakan untuk menjana token JWT?

Feb 08, 2024 pm 11:09 PM
Aplikasi bahagian hadapan sessionstorage

NEXTAUTH_SECRET 变量与用于生成 JWT 令牌的后端机密相同吗?

php Editor Apple, hello! Mengenai soalan anda, pembolehubah NEXTAUTH_SECRET adalah berbeza daripada rahsia bahagian belakang yang digunakan untuk menjana token JWT. NEXTAUTH_SECRET ialah kunci yang digunakan dalam NextAuth.js untuk menyulitkan kuki sesi, dan rahsia hujung belakang ialah kunci yang digunakan untuk mengesahkan dan menandatangani token JWT. Walaupun kedua-dua kunci digunakan untuk menjamin pengesahan pengguna sedikit sebanyak, peranannya dan cara ia digunakan adalah berbeza. Pastikan anda menyediakan dan melindungi kunci ini dengan betul apabila menggunakan NextAuth.js dan JWT untuk memastikan keselamatan aplikasi anda. Semoga ia membantu! Jika anda mempunyai sebarang pertanyaan lagi, sila berasa bebas untuk terus berunding.

Kandungan soalan

Saya sedang menulis aplikasi bahagian hadapan menggunakan NextJS dan menggunakan pengesahan seterusnya untuk pengesahan (e-mel, log masuk kata laluan). Bahagian belakang saya ialah pangkalan kod berbeza yang ditulis dalam GoLang, jadi apabila pengguna log masuk, ia menghantar permintaan ke titik akhir hujung belakang Golang dan mengembalikan token JWT, yang dijana seperti ini:

config := config.GetConfig()
atClaims := jwt.MapClaims{}
atClaims["authorized"] = true
atClaims["id"] = userId
atClaims["email"] = email
atClaims["exp"] = time.Now().Add(time.Hour * 24 * time.Duration(config.LoginExpire)).Unix()

token := jwt.NewWithClaims(jwt.SigningMethodHS256, atClaims)
signedToken, err := token.SignedString([]byte(config.AppSecret))
Salin selepas log masuk

Masalah saya sama dengan nilai NEXTAUTH_SECRET 这个环境变量有关,我从 Next Auth 文档中看到,正如你在 Go 中生成令牌时看到的那样,我使用这个 config.AppSecret (后端的环境变量),NEXTAUTH_SECRET 需要吗与后端的 config.AppSecret dan saya tidak pasti apa perbezaannya.

Terima kasih terlebih dahulu

Penyelesaian

Jawapan ringkasnya, tidak. NEXTAUTH_SECRET 和 GoLang 后端中的 config.AppSecret dalam Next.js tidak perlu sama; ia mempunyai tujuan yang berbeza dalam timbunan aplikasi anda.

NEXTAUTH_SECRET: Digunakan dalam Next.js untuk mendapatkan token NextAuth, yang penting untuk keselamatan sesi dalam rangka kerja NextAuth.

Rahsia Backend (config.AppSecret): Digunakan dalam bahagian belakang GoLang untuk menandatangani token JWT, memastikan integriti dan ketulenan token hujung belakang.

Jika anda ingin menggunakan token yang dijana bahagian belakang dalam aplikasi NextJs anda, anda harus melakukan perkara berikut:

  1. Simpan Token: Simpan token di lokasi yang selamat di sebelah pelanggan. Amalan biasa termasuk menggunakan localStoragesessionStoragecookies. Saya lebih suka menggunakan kuki kerana ia dihantar secara automatik dengan setiap permintaan dan mempunyai ciri keselamatan seperti sifat HttpOnly dan SameSite.

  2. Hantar token pada permintaan seterusnya: Apabila membuat permintaan ke bahagian belakang, biasanya masukkan token ini dalam pengepala Kebenaran. Pendekatan standard adalah menggunakan seni bina Bearer, seperti yang ditunjukkan di bawah: Authorization: Bearer <your_token_here>.

  3. Pengesahan Token: Bahagian belakang anda akan mengesahkan token ini pada setiap laluan yang dilindungi untuk mengesahkan permintaan. Token dinyahkod menggunakan kunci yang sama (config.AppSecret) yang digunakan untuk menandatangani.

Selain itu, anda juga perlu mengendalikan tamat tempoh token, menggunakan saluran https untuk penghantaran, dan melaksanakan perlindungan CSRF jika menggunakan kuki untuk menyimpan token.

Walau bagaimanapun, jika anda ingin memastikan mekanisme pengesahan bahagian hadapan dan bahagian belakang berasingan dan selamat, anda boleh menggunakan NEXTAUTH_SECRET 来保护 NextAuth 会话,并为 GoLang 后端使用 config.AppSecret untuk menandatangani token JWT dengan selamat dalam aplikasi Next.js anda.

Atas ialah kandungan terperinci Adakah pembolehubah NEXTAUTH_SECRET sama dengan rahsia bahagian belakang yang digunakan untuk menjana token JWT?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah kelebihan pangkalan data mongodb Apakah kelebihan pangkalan data mongodb Apr 07, 2024 pm 05:21 PM

Pangkalan data MongoDB terkenal dengan fleksibiliti, skalabiliti dan prestasi tingginya. Kelebihannya termasuk: model data dokumen yang membolehkan data disimpan dengan cara yang fleksibel dan tidak berstruktur. Skala mendatar kepada berbilang pelayan melalui sharding. Fleksibiliti pertanyaan, menyokong pertanyaan kompleks dan operasi pengagregatan. Replikasi data dan toleransi kesalahan memastikan lebihan data dan ketersediaan tinggi. Sokongan JSON untuk penyepaduan mudah dengan aplikasi bahagian hadapan. Prestasi tinggi untuk respons pantas walaupun semasa memproses sejumlah besar data. Sumber terbuka, boleh disesuaikan dan percuma untuk digunakan.

Bolehkah nodejs menulis bahagian hadapan? Bolehkah nodejs menulis bahagian hadapan? Apr 21, 2024 am 05:00 AM

Ya, Node.js boleh digunakan untuk pembangunan bahagian hadapan, dan kelebihan utama termasuk prestasi tinggi, ekosistem yang kaya dan keserasian merentas platform. Pertimbangan yang perlu dipertimbangkan ialah keluk pembelajaran, sokongan alat dan saiz komuniti yang kecil.

Adakah vue bahagian hadapan atau belakang? Adakah vue bahagian hadapan atau belakang? Apr 02, 2024 am 12:15 AM

Vue ialah rangka kerja JavaScript bahagian hadapan untuk membina antara muka pengguna, memfokuskan terutamanya pada pembangunan kod sisi klien : Optimumkan prestasi pemaparan; 4. Pengurusan negeri: Urus keadaan perkongsian aplikasi. Vue digunakan secara meluas untuk membina aplikasi halaman tunggal, aplikasi mudah alih, aplikasi desktop dan komponen web.

Hubungan antara js dan vue Hubungan antara js dan vue Mar 11, 2024 pm 05:21 PM

Hubungan antara js dan vue: 1. JS sebagai asas pembangunan Web; 2. Kebangkitan Vue.js sebagai rangka kerja hadapan 3. Hubungan pelengkap antara JS dan Vue; Vue.

Bagaimana untuk memulakan projek dengan webstorm Bagaimana untuk memulakan projek dengan webstorm Apr 08, 2024 pm 02:03 PM

Langkah-langkah untuk memulakan projek menggunakan WebStorm adalah seperti berikut: Buka WebStorm IDE, buka atau buat projek klik kanan fail projek dan pilih "Run" dalam tetingkap "Run/Debug Configuration", pilih konfigurasi pelancaran; digunakan untuk melancarkan projek; mengkonfigurasi Mulakan konfigurasi (pilihan);

Apakah kelebihan html5 Apakah kelebihan html5 Apr 22, 2024 am 11:09 AM

Kelebihan utama HTML5 termasuk: Penanda semantik: dengan jelas menyampaikan struktur kandungan dan makna. Sokongan multimedia: main balik asli video dan audio. Kanvas: Buat grafik bergerak dan animasi. Storan Tempatan: Pelanggan menyimpan data dan mengaksesnya merentas sesi. Geolokasi: Dapatkan maklumat lokasi geografi pengguna. WebSockets: Sambungan berterusan antara penyemak imbas dan pelayan. Mesra Mudah Alih: Berfungsi pada pelbagai peranti. Keselamatan: CSP dan CORS melindungi daripada ancaman siber. Kemudahan penggunaan: Mudah dipelajari dan digunakan. Sokongan: Sokongan meluas untuk semua penyemak imbas dan peranti utama.

Apakah peranan yang dimainkan oleh vue dalam pembangunan bahagian hadapan? Apakah peranan yang dimainkan oleh vue dalam pembangunan bahagian hadapan? Apr 06, 2024 am 12:39 AM

Vue.js ialah rangka kerja JavaScript progresif yang digunakan terutamanya untuk memudahkan proses pembangunan bahagian hadapan. Fungsinya termasuk: sintaks templat deklaratif untuk meningkatkan kebolehbacaan data responsif untuk menyegerakkan antara muka dan pembangunan komponen secara automatik untuk meningkatkan kebolehselenggaraan pengurusan negeri (Vue Router); alat dan ekosistem untuk mempercepatkan pembangunan.

Apakah tiga cara untuk menetapkan cache dalam html Apakah tiga cara untuk menetapkan cache dalam html Feb 22, 2024 pm 10:57 PM

Apakah tiga cara untuk menyediakan caching dalam HTML? Dalam pembangunan web, untuk meningkatkan kelajuan akses pengguna dan mengurangkan beban pelayan, kami boleh mengurangkan masa memuatkan halaman web dengan menetapkan cache. Seterusnya, saya akan memperkenalkan anda kepada tiga kaedah cache HTML yang biasa digunakan secara terperinci dan memberikan contoh kod khusus. Kaedah 1: Tetapkan cache melalui pengepala respons HTTP "Cache-Control" dan "Tamat tempoh" dalam pengepala respons HTTP ialah dua atribut yang biasa digunakan untuk menetapkan cache. Dengan menetapkan dua sifat ini, anda boleh

See all articles