簡體   English   中英

使用HTTP基本身份驗證保護API

[英]Securing API Using HTTP Basic Auth

我正在研究HTTP基本身份驗證以保護我的Nodejs API(也使用SSL)。

我想知道基本身份驗證是否需要用戶名和密碼,因為我只想使用用作用戶名的秘密API密鑰。 我讀過的資源似乎暗示這兩個都是必需的,但是Stripe的文檔似乎暗示僅僅一個用戶名就足夠了:

https://stripe.com/docs/api#authentication

通過HTTP基本身份驗證對API進行身份驗證。提供您的API密鑰作為基本身份驗證用戶名。您無需提供密碼

您可以使用express中的basicAuth中間件來執行http://expressjs.com/api.html#basicAuth 只需將用戶名設置為API密鑰,將密碼設置為''(空字符串,而不是雙引號)。

您還可以將http-auth模塊用於HTTP Basic / Digest身份驗證。

// Authentication module.
var auth = require('http-auth');
var basic = auth.basic({
    realm: "Simon Area.",
    file: __dirname + "/../data/users.htpasswd" // gevorg:gpass, Sarah:testpass ...
});

// Creating new HTTP server.
http.createServer(basic, function(req, res) {
    res.end("Welcome to private area - " + req.user + "!");
}).listen(1337);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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