2 回答

TA貢獻1816條經(jīng)驗 獲得超6個贊
一種選擇是驗證請求中的特定用戶數(shù)據(jù),例如預先確定的密碼或密鑰。這是最不安全的方法。
另一種選擇是只允許來自單一來源的網(wǎng)絡連接。您可以通過在每次發(fā)出請求時檢查客戶端的 IP 來做到這一點。如果您采用這條路線,請確保也通過密碼進行驗證,因為 IP 欺騙是可能的。
更安全的方法是獲取客戶端信息請求的一部分并將其直接發(fā)送回客戶端,驗證他們是否向您發(fā)送了此信息(這類似于 2 因素身份驗證)。
該最安全的方法將具有客戶端創(chuàng)建一個加密的簽名密鑰,然后你可以驗證只可能是由他們簽名。
這可以使用openssl_sign()和openssl_verify()函數(shù)來完成。

TA貢獻1712條經(jīng)驗 獲得超3個贊
為什么不使用可以存儲在數(shù)據(jù)庫中的令牌并像 API 一樣從標頭中讀取它呢?
您可以只檢查標頭是否存在并具有令牌值,并根據(jù)您的數(shù)據(jù)庫檢查令牌是否有效,您可以執(zhí)行其他一些操作,例如記錄請求等,并輕松添加新令牌。
如果標頭不存在且令牌無效,則刪除訪問...
或者,您可以做一個“ip 白名單”,這樣只有來自某些 IP 的請求才能通過,或者像“CORS”這樣的域,但僅限于某些 IP 和域。
因為這樣更容易管理對您服務的某些用戶的訪問。另一種選擇(包括更安全的)就像@shn 所說的。
- 2 回答
- 0 關注
- 181 瀏覽
添加回答
舉報