[英]Best way to authenticate node.js file use?
我有一個 node.js 文件,它在運行時首先通過從 JSON 文件中讀取兩個字符串來驗證用戶。
但是,這種方法的一個主要問題是:
JSON 文件
{
"id": "12345",
"apiKey": "foo"
}
JS文件
if (jsonFile.id === "123" && jsonFile.apiKey === "foo") {
return true;
} else {
return false;
}
是用戶可以將 JS 文件中的值更改為他們想要放入 JSON 文件中的任何值,以便他們可以驗證任何內容。
我認為一種解決方案是使用帶加密的哈希,但用戶可以為他們想要的任何 id 或 apiKey 創建 hash 並在文件中更改它。 代碼會被混淆,但我想我會問是否有更好的方法。
我不希望我給用戶的程序能夠運行不同的 apiKey 或 id,只有我在程序中定義的那些,他們不應該能夠改變它。
提前致謝。
假設您的 node.js 文件正在您的服務器上運行,並且您正在驗證來自客戶端的請求,那么您應該查看 passport.js 或其他身份驗證庫。 憑據不應該以明文形式傳遞給服務器,但是即使您的客戶端更改了憑據,也不意味着它們會在服務器上獲得身份驗證,因為服務器使用注冊用戶的數據庫進行身份驗證。 您的示例表明您正在尋找“不記名令牌”身份驗證(apiKey),因此這里有一個指向 passportjs.org 網站上的passport-http-bearer文檔的鏈接。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.