我有多個通過Microsoft Graph進行身份驗證的頁面。一個不行。它返回一個(400) Bad Request
,與AADSTS70000: The provided 'code_verifier' input value does not match the original 'code_challenge.'
Microsoft Graph身份驗證錯誤AADSTS70000 code_verifier與code_challenge不匹配
的ERROR_DESCRIPTION所有重定向URL的下我的Microsoft應用程序被定義。除了URI之外,它們是相同的。
我找不到任何實際上說明他們的意思是code_verifier
和code_challenge
。由於我從來沒有通過這些名稱傳遞任何參數,所以它們必須指的是在登錄前後傳入的其中一個參數。但我真的需要知道他們所指的是什麼,所以我可以試圖找出真正的問題似乎是什麼。
我已經看到幾個帖子聲稱需要一個尾部斜線,但我沒有任何我的重定向URI的,並且他們大多數工作。
這裏是發起請求:
href="https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id={redacted}&response_mode=form_post&response_type=code&redirect_uri=https://wrmatthiesen.com/ApprovedContact/InviteeSignup.aspx&scope=openid offline_access User.Read Calendars.ReadWrite Contacts.Read Mail.Send& nonce=mauth:-6:Y:Y;1b803d44-f70b-4fed-b6c3-bc3afdb55646& state=mauth:-6:Y:Y;1b803d44-f70b-4fed-b6c3-bc3afdb55646"
這是一次我收到驗證碼跟進要求:
code=Mabb3f2bb-25b0-8e3b-541e-9763dd1e4136&redirect_uri=https%3a%2f%2fwrmatthiesen.com%2fApprovedContact%2fInviteeSignup.aspx&grant_type=authorization_code&client_id={redacted}&client_secret={redacted}&scope=openid+offline_access+User.Read+Calendars.ReadWrite+Contacts.Read+Mail.Send
您是否正在使用狀態參數,並將此值與初始和輔助令牌請求一起傳遞? –
是的,我爲每個請求以相同的方式傳遞狀態參數。我相信我正在使成功的請求和失敗的請求完全相同。 (顯然不是,因爲錯誤)。這就是爲什麼我試圖通過code_verifier和code_challenge來縮小他們特別指的是什麼。這可能是我只能俯瞰的東西。 –
你可以添加你打給你的問題的HTTP URI嗎?這個錯誤意味着在兩個認證步驟之間有所改變。通常情況下,當您在狀態參數中進行了更改或者您使用了不同的重定向URI時會發生這種情況。 –