2014-09-30 34 views
0

在OAuth中,初始授權請求具有state參數。顯然這是出於安全原因,但我真的不明白它所保護的內容......例如,on GitHub該參數的描述是:OAuth授權請求中'狀態'參數的用途

一個不可猜測的隨機字符串。它用於防止跨站請求僞造攻擊。

http://<redirect_url>?code=17b1a8df59ddd92c5c3b&state=a4e0761e-8c21-4e20-819d-5a4daeab4ea9 

有人能解釋這個參數的確切目的:

從我所看到的,從授權請求的狀態作爲參數傳遞給重定向URL像這樣只是通過呢?

回答

1

狀態參數用於防範XSRF。您的應用程序會生成一個隨機字符串,並使用state參數將其發送到授權服務器。授權服務器發送狀態參數。如果兩個狀態相同=>確定。如果狀態參數不同,則其他人已發起請求。

從谷歌的例子也許是清晰的:https://developers.google.com/accounts/docs/OAuth2Login?hl=fr#createxsrftoken

+0

「別人發起請求」:謝謝,這是我失蹤了。我不是在Web應用程序的上下文中,所以它不適用於我的情況(我只是在桌面應用程序中檢測WebBrowser控件中的重定向,沒有人會向我發送請求...) – 2014-10-01 01:22:41

+0

Au fait,tu es le meziantou de Developpez.com? – 2014-10-01 01:23:46

+0

Je suisdémasqué;) – meziantou 2014-10-01 01:33:05

相關問題