1

我对 asp.net 比较陌生,如果这个问题听起来很愚蠢,我很抱歉。

我必须构建一个能够在 OpenId 自定义服务器上登录的 Asp.net Web 应用程序(即不包含在 DotNetOpenAuth 库中)。我正在使用 vs2010 和 .net 框架 4.0。

经过多次搜索,我找到了这些解释它的帖子。

http://blogs.msdn.com/b/webdev/archive/2012/08/23/plugging-custom-oauth-openid-providers.aspx

如何在 ASP.NET MVC4 中使用具有唯一标识符 URL 的 OpenID 提供程序

http://blogs.msdn.com/b/webdev/archive/2012/08/15/oauth-openid-support-for-webforms-mvc-and-webpages.aspx

所有这些都引用 MVC 和一个名为 /App_Start/AuthConfig.cs 的目录/文件,您必须在其中注册新的提供程序才能使用库中内置的客户端。

通过其他搜索,我了解到此目录在 Asp.net Web 应用程序中不可用。

是否存在在 Asp.net Web 应用程序中实现相同结果的方法/解决方法?

您对如何在我的服务器中实现此类自定义客户端有任何建议/链接吗?

谢谢stmod


谢谢你的帮助。在您发表评论后,我回到提供者那里要求澄清,但到目前为止,他们只能提供该链接来帮助我。因此,我尝试在 Java 中对其进行管理,并使用 openid4java 库和以下代码进行管理:

URL u = new URL("https://logint2.idm.toon.sul.t-online.de/gcp-web/login/10000112/");

Identifier i = new MyIdentifier(); 
*//myIdentifier is my implementation of interface openid4java.discovery.Identifier and returns* "http://specs.openid.net/auth/2.0/identifier_select"

DiscoveryInformation discovered = new DiscoveryInformation(u,i);

AuthRequest authReq = manager.authenticate(discovered, returnToUrl);

使用此代码(以及用于管理响应的其他代码)我可以正常工作。

我现在正在尝试将其应用于我的 dot.net 解决方案。

您能帮我编写让 DotnethOpenauth 与此端点一起工作的代码吗?

我想我必须像在 Java 中那样覆盖 Identifier 类,但我被卡住了。

谢谢 stmod

4

1 回答 1

0

为您的 ASP.NET Web 应用程序添加 OpenID 依赖方支持实际上非常简单,并且不需要 AuthConfig.cs 文件。如果您使用 Web 表单,最简单的方法是将 OpenIdLogin 控件拖放到您的 Web 表单上。如果您使用 MVC,只需编写几行代码,您可以查看从 SourceForge 下载的 dotnetopenauth .zip 下载中包含的 OpenIdRelyingPartyMvc 示例,了解如何完成。

于 2013-01-29T06:43:08.010 回答