使用DotNetOpenAuth设置具有子域标识符的OpenID提供程序

时间:2010-09-16 07:32:30

标签: c# .net openid dotnetopenauth

我目前正在尝试在自己的域名上实施OpenID提供程序。 因此,我希望用户的OpenID标识符为 user.example.com ,而不是默认 example.com/user.aspx/user ..

DotNetOpenAuth可以做到吗?如果是这样,我需要做出哪些改变?

1 个答案:

答案 0 :(得分:2)

是的,这绝对是可能的。

  1. 配置您的DNS和网站以及IIS以实际响应 user.example.com
  2. 放置一个default.aspx文件,使其响应该域的请求,并通过在 user.aspx 示例中放置标记,将该URL设置为OpenID声明的标识符。请确保指向 OP端点的那些标记使用绝对网址(可能 http://www.example.com/provider.ashx
  3. 修改您的 provider.ashx (或 server.aspx ,或MVC操作,无论您使用的是什么用于OP端点)都愿意为发送断言强> user.example.com
  4. 你已经完成了。我没有详细介绍这些步骤,因为这与您以任何方式自定义声明的标识符的URL时所采取的步骤相同 - 特殊主机名。唯一真正特别的步骤是#1:配置IIS。要接受任何随机主机名需要特殊的DNS配置,但由于它只是您自己的用户名,因此您只需将用户名硬编码到DNS中即可。