我實現使用DotNetOpenAuth一個的OAuth2提供商。 使用隱流,我是有能力額外的數據傳遞給函數CreateAccessToken
(IAuthorizationServerHost
),帕拉姆(IAccessTokenRequest accessTokenRequestMessage)
內並分配給令牌:如何設置額外數據到訪問令牌的授權碼流
accessToken.ExtraData.Add("DeptID", accessTokenRequestMessage.ExtraData["DeptID"].ToString());
我完成它添加在Auhtorize端點內EndUserAuthorizationRequest
的信息。
的問題是,使用授權碼流,並做同樣的事情,帕拉姆(IAccessTokenRequest accessTokenRequestMessage)
始終的而額外的空集合。
我想,這是因爲使用這種流動有第二個電話到令牌端點,信息丟失。
我怎麼會將此信息傳遞給CreateAccessToken功能? 在此先感謝。
我試圖找回從cookie信息,但調用令牌端點時cookie將被丟失。在調用ProcessUserAuthorization()中的Token端點時,DNOA似乎在後臺使用Web客戶機。任何想法? – dave
它應該像這樣實現: https://groups.google.com/forum/#!searchin/dotnetopenid/ExtraData/dotnetopenid/acqpZfDlvKE/tGSdGs_OyskJ 但是這樣做我得到錯誤的請求答案(協議錯誤)。 AuthorizationServer as; var response = as.PrepareApproveAuthorizationRequest(req,username,scopes,callback); response.ExtraData [「用戶名」] =用戶名; return as.Channel.PrepareResponse(response).AsActionResult(); – dave