簡體   English   中英

使用 Jwt 或 oAuth 安全登錄?

[英]Secure login with Jwt or oAuth?

我有 ae 電子商務應用程序,想使用完全安全的登錄名/令牌。 Jwt 是否足以滿足 10k 用戶的需求,還是我應該使用 oAuth? Oauth ja 昂貴的 1.5k 美元,每月 10k 活躍用戶

OAuth 和 JWT 不能比較,因為這是兩個完全不同的東西。

OAuth是授權用戶的標准。 它為您提供流程,您的應用程序可以使用這些流程來獲得授權以訪問用戶的資源。

JWT 是令牌的一種格式。 JWT 可以用作訪問令牌,但它們也可以用於其他用途。 此外,訪問令牌不必采用 JWT 的形式。

簡而言之 - OAuth 將告訴您如何獲取訪問令牌,而 JWT 只是您可以使用 OAuth 流程獲取的令牌的一種格式。

OAuth 還可以通過 OpenID Connect 進一步擴展,用於對用戶進行身份驗證。

“我應該使用 OAuth”的答案當然從來都不是具體的。 這完全取決於您的應用程序的設置。 如果您只有自己的后端並且您正在尋找使用用戶帳戶保護它的方法,那么您不需要 OAuth,您只需要用於登錄用戶的會話和安全功能(可能是雙因素身份驗證)。 如果您的前端有一個單獨的應用程序和一個 API,那么使用 OAuth 流將授予您獲取訪問令牌的標准方法。

至於 JWT,只有在看到有效的用例時才應該使用它們。 如果您不需要將令牌中的信息直接傳遞給您的 API,那么您不需要 JWT,您可以使用任何隨機字符串令牌。

Oauth ja 昂貴的 1.5k 美元,每月 10k 活躍用戶

我不明白這部分。 OAuth貴是什么意思? OAuth 是一個標准,可以免費使用。 如果您的意思是支付 OAuth 服務器的費用很昂貴,那么這當然取決於供應商。 有許多不同的 OAuth 供應商,也有免費的解決方案(您必須自己編寫一些代碼,例如Spring 安全服務器,或完整的產品,例如KeycloakCurity Identity Server 的社區版

是的 Json web token(jwt) 就足夠了。 但請注意您通過令牌發送的數據,因為它可以被解碼。

唯一使 jwt 安全的是簽名。

也永遠不要在源代碼中公開您的密鑰在開發過程中始終使用環境變量

暫無
暫無

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

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