0

我正在使用 DotNetOpenAuth 4.0.20926 并尝试使用 Db Nonce 提供程序实现基于 OAuth2 的身份验证服务器。

出于某种目的,我想在处理 GetToken 请求时访问 NonceStore 的 StoreNonce 函数中的用户名。我没有办法在该调用中检索用户名。

我怎么解决这个问题?


嘿 Andrew 感谢您的回复和 DotNetOpenAuth。

我的 GetToken 方法是这样的

  public ActionResult Token()
  {
     string userName = "";  
     //Want to fetch username here 
     //Using username here 
     var result = this.authorizationServer.HandleTokenRequest(this.Request);
     return result.AsActionResult();
  }          

我想在调用 HandleTokenRequest 之前获取用户名。
是否有任何消息解析器或帮助器方法从请求数据/代码值中获取用户名。

4

1 回答 1

1

正如您所观察到的,接口不会将用户名传递给StoreNonce方法。因此,您可能能够获取用户名的唯一方法是让您在实例化您的INonceStore实例之前首先发现它是什么,然后首先将其传递给该 nonce 存储,以便稍后StoreNonce调用时,它已经知道用户名。

也就是说,我相信任何存储和检查 nonce 需要用户名的设计都需要重新考虑。它不仅混合了原本应该保持独立的问题,而且您可能会限制自己前进,甚至引入安全漏洞。

于 2013-04-07T13:59:58.987 回答