[英]OAuth 2.0 - Why does the authorization server return 400 instead of 401 when the resource owner credentials are invalid?
使用資源所有者密碼授予類型時,如果由於資源所有者輸入的密碼不正確而無法授予訪問令牌,則授權服務器似乎應響應HTTP 400(錯誤請求)狀態代碼。 基於我對RFC 6749第5.2節**的理解,我得出了這個結論,其中說“在由於invalid_grant而無法授予令牌的情況下,授權服務器以HTTP 400(錯誤請求)狀態代碼響應”。 為invalid_grant列出的原因包括資源所有者憑據無效。
我的理解是否正確? 如果是這樣,為什么不返回HTTP 401(未授權)? 使用基本身份驗證時,無效密碼會生成401.為什么OAuth 2.0規定要返回400? 這是因為401是為無效的客戶端憑據保留的嗎?
我想這是以這種方式實現的,因為客戶端提供了無效數據,即(用戶名,密碼,刷新令牌等)客戶端沒有嘗試訪問受保護資源,因此他正在接收HTTP 400以指示他應該更正他的投入。 通常,當您嘗試使用無效或過期的訪問令牌訪問受保護資源時,您應該會收到401。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.