」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何:身份驗證

如何:身份驗證

發佈於2024-11-07
瀏覽:403

How to: AUTHENTICATION

在建立 Web 應用程式時,安全地管理使用者驗證非常重要。兩個重要的庫是:

bcryptjs – 用於安全地散列和比較密碼。
JSON Web 令牌 – 用於簽署和驗證 JWT 令牌以進行使用者身份驗證。

我們將介紹如何在 Node.js 應用程式中實作這兩個函式庫,以實現安全密碼管理和基於令牌的身份驗證。

如何:在 Node.js 中使用 bcryptjs 和 jsonwebtoken
建立 Web 應用程式時,安全地管理使用者身份驗證非常重要。兩個重要的庫是:

1.安裝庫:

安裝包

npm 安裝 bcryptjs

現在讓我向您展示如何施展魔法。

2 .像專業人士一樣將密碼雜湊處理與比較

同樣的舊的,同樣的舊的,創建一個新的js檔案並始終記住需要該包。

const { hashSync, compareSync } = require("bcryptjs");

module.exports = {
    hashPassword: (password) => hashSync(password), 
    comparePassword: (password, hashed) => compareSync(password, hashed
};

運作原理:

hashSync(password):對使用者密碼進行雜湊處理。
CompareSync(password, hashedPassword):將純文字密碼與雜湊版本進行比較以驗證使用者登入。

3. 使用 jsonwebtoken 進行基於令牌的身份驗證

安裝包:

npm 安裝 jsonwebtoken

jsonwebtoken 允許我們為每個經過身份驗證的使用者建立安全性令牌 (JWT)。此令牌會傳送到客戶端,並可用於在後續請求中對使用者進行身份驗證。

const { sign, verify } = require('jsonwebtoken');
const secretkey = "yoursecretkey"; // Secret key to sign the token

module.exports = {
    logToken: (payload) => log(payload, secretkey), // Create JWT token
    verifyToken: (token) => verify(token, secretkey)  // Verify JWT token
};

運作原理:
SignToken(payload):使用金鑰建立具有給定有效負載(例如使用者資料)的簽章 JWT。

verifyToken(token):使用相同的金鑰驗證 JWT 令牌的真實性。

版本聲明 本文轉載於:https://dev.to/hopelesscoder/how-to-authentication-26ma?1如有侵犯,請聯絡[email protected]刪除
最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3