设置OpenID提供程序以进行测试

Bra*_*son 6 .net openid dotnetopenauth openid-provider

我正在开发一个使用OpenID进行身份验证的网站,但是工作正常...我经常在没有互联网连接的情况下工作.如果会话到期并且我需要再次登录,我再也无法连接.

我想做的是在本地IIS上设置一个非常愚蠢的OpenID提供程序,我可以在断开连接时使用它来登录.真的很愚蠢我的意思就是 - 它只需要是一个硬编码的URL,它作为openID提供者正确响应并允许登录.

我已经快速浏览了DotNetOpenAuth附带的OpenIdProviderMvc示例,但它没有开箱即用(无法解析程序集ApplicationServices).在深入挖掘之前,我认为有人可能已经完成了这个过程.

Bra*_*son 4

所以我想通了。DotNetOpenAuth 中包含的 OpenIdProviderMvc 示例项目运行良好。

我遇到的主要问题是依赖方站点需要将本地主机列入白名单,如下所示:

configSections以下部分web.config

  <section name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection" requirePermission="false" allowLocation="true"/>
Run Code Online (Sandbox Code Playgroud)

这是一个新的配置部分:

 <dotNetOpenAuth>
  <messaging>
   <untrustedWebRequest>
    <whitelistHosts>
     <add name="localhost" />
    </whitelistHosts>
   </untrustedWebRequest>
  </messaging>
 </dotNetOpenAuth>
Run Code Online (Sandbox Code Playgroud)

如果您有兴趣,我还组装了一个更简单的提供程序“localid”,它可以让您使用如下 OpenID 登录:http://localid/member/anythingyoulike。没有登录屏幕,只有无限的有效 OpenID 标识符数组。更多信息请点击这里