Dotnetopenauth oAuth服务提供商解释

时间:2010-05-28 06:03:29

标签: asp.net oauth dotnetnuke dotnetopenauth

我是oAuth地区的新手,并设置了DotNetOpenAuth来建立oAuth服务提供商。 DotNetOpenAuth下载中提供的示例对我来说相当混乱......也许我不熟悉这些东西。有一个默认页面可以创建数据库并填充数据库。现在我浏览到login.aspx,它要求我输入一个openid,实际上我想使用DNN(实现DotNetOpenAuth),我想在另一个将成为oAuth消费者的网站上使用这些凭据。有人可以解释如何在DotNetOpenAuth样本中测试oAuth服务提供商吗?

1 个答案:

答案 0 :(得分:12)

你偶然发现了DotNetOpenAuth中包含的最糟糕的样本。对于那个很抱歉。您可能发现OpenID project templates提供了有关如何设置OAuth服务提供商的更简单,更真实的想法。

您现在使用的示例是使用OAuth公开WCF服务的服务提供商,因此如果您不使用WCF,则样本中存在一些复杂性。以下是您需要做的事情:

  1. 修改示例的根default.aspx.cs文件,将数据添加到您自己的OpenID的新数据库中,并使示例重新创建其数据库 OR ,只需将原始数据添加到数据库中sample创建自己的数据库。
  2. 使用OAuthConsumer示例尝试访问OAuthServiceProvider示例上的数据。请务必至少检查一个复选框,了解您要求获得许可的范围。
  3. SP将提示您登录。继续使用您向其添加数据的OpenID执行此操作。
  4. SP会询问您是否同意与消费者样本共享您的数据。说是。
  5. 消费者会说它已获得授权,并为您提供在SP上查询用户数据的几个按钮。
  6. 应该有效。如果没有,请在此答案中添加评论,我会编辑此答案,直到我们做对。 :)

    现在关于您的DNN登录 - 完全没问题。您可能知道,OAuth和OpenID彼此正交,因此您只需在SP上切换出OpenID登录以进行DNN登录,SP就可以正常工作 - 尽管数据库中的用户数据匹配当然需要DNN要求的任何工作。