DotNetOpenAuth:Webforms,入门

时间:2010-03-01 05:04:48

标签: c# asp.net openid dotnetopenauth

我想知道如何让DotNetOpenAuth(http://www.dotnetopenauth.net/)在我的webforms应用程序中运行

我不明白从哪里开始。我的Login.aspx上有一个OpenIDSelector,可以让你选择google或Yahoo。您可以选择一个,然后弹出一个弹出窗口,然后让您登录。一旦您登录程序挂起,因为它正在尝试使用数据库 ???

执行某些操作

我不能只使用一些控件(比如OpenIDSelector)并获回用户的身份验证,获取他们的ClaimedID并自己处理剩下的工作吗?

编辑:尝试在Webforms中开始使用OpenID?去这里......

https://github.com/DotNetOpenAuth/DotNetOpenAuth/wiki/Creating-an-openid-relying-party-%28programatically%29

3 个答案:

答案 0 :(得分:5)

您无需使用项目模板。您可以将OpenIDSelector控件放入任何Web应用程序中,它将以简约的“让我用户名”方式开箱即用。 DotNetOpenAuth库中没有SQL依赖无论。只需处理OpenIdSelector.LoggedIn事件,您就可以获得所需的用户名。

项目模板看起来很臃肿,假设您实际上要存储用户数据,并且您希望提供合理的登录和帐户管理体验。它也适用于Web场和云托管环境。如果你从头开始这是一个很好的入门方式,虽然它自带的一些代码自然会比其他代码少,这就是为什么你有源 - 所以你可以改变它。

是的,项目模板包含对数据库的依赖性。它使用Linq-to-Entities,因此任何具有Entities提供程序的数据库都可以工作 - 而不仅仅是SQL Server。它附带了内置数据库的模式。只需运行setup.aspx,就可以在本地SQLExpress安装中为您创建数据库。

答案 1 :(得分:1)

这是从他们的网站链接到的一步一步。 http://www.plaxo.com/api/openid_recipe

答案 2 :(得分:0)

1 - 声明的标识符是您正在寻找的。问题是谷歌之类使用“定向身份”,这意味着声明的标识符将链接到您来自的领域。最终结果 - 同一个用户可能会在多个不同的声称标识符下使用。

2和3我不知道 - 我假设这是DNOA的一些开箱即用的功能,但我没有玩过它。

4 - 不是我找到的。 dnoa涵盖了您需要担心的所有案例。