使用OpenIDProviderWebForms时重写声明的标识符

时间:2012-07-11 16:46:24

标签: dotnetopenauth

使用OpenIDProviderWebForms示例时,登录时返回的声明标识符采用以下格式:

https://id.example.com/user.aspx/userID

我希望它看起来像:

https://id.example.com/userID

有什么想法可以解决这个问题吗?

注意:这是DotNetOpenAuth返回的值,我可以在IIS中使用URL重写来映射 https://id.example.com/userID - >的 https://id.example.com/user.aspx/userID

谢谢!

1 个答案:

答案 0 :(得分:0)

第一步是确保用户OpenID的首选网址符合以下要求:

  1. 他们重定向到其他网址
  2. 他们的HTTP响应包括有资格成为OpenID声明标识符所必需的HTML和/或XRDS发现标记。
  3. 接下来,您必须向OpenID提供商端点(也称为“OP端点”)添加代码,以便能够将这些用户URL转换为与数据库中的帐户匹配的规范用户名(反之亦然)。当出现身份验证质询时,您必须验证尝试登录的声明标识符实际上与登录用户匹配。

    然后只批准登录。 DotNetOpenAuth不关心您使用哪个URL作为claim_id,只要它满足上述要求即可。