簡體   English   中英

驗證 node.js 文件使用的最佳方法是什么?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM