问题标签 [dotnetopenauth]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
869 浏览

asp.net-mvc - 如何将其他 Open ID 提供者添加到 OpenIdRelyingParty?

我正在尝试在 ASP.NET MVC上使用DotNetOpenAuth实现依赖方(我正在开发的网站) 。我正在使用当前版本 3.3.1。

使用包含的 MVC 示例,我可以看到 OpenIdRelyingParty 类可以根据用户指定的 ID 自动识别并重定向到一些开放 ID 提供者,例如 myopenid.com 和 Yahoo。

如何让 OpenIdRelyingParty 对 Windows Live/Hotmail 和 Google Open ID 执行相同的操作?

更新

我的问题可能是我不清楚 Open ID 是什么,这就是我正在做的事情,也许有人可以解释为什么我的期望是错误的:

  • 当我输入一个 Yahoo 电子邮件地址作为 Open ID 时,它会重定向到 Yahoo 登录页面。凉爽的。

  • 当我输入我唯一的 myopenid.com 名称时,它会重定向到 myopenid.com 登录页面。凉爽的。

  • 但是,当我对 Windows Live 电子邮件地址、Hotmail 地址或 Gmail 地址执行相同操作时,我收到错误消息“未找到 Open ID 端点”。

如果 Open ID 必须是 URL,那么为什么使用 Yahoo 电子邮件地址有效?我认为这是因为 OpenIdRelyingParty 类具有将常用电子邮件地址映射到提供商 URL 的一些智能……我在这里遗漏了什么吗?

0 投票
1 回答
439 浏览

asp.net - HTTP 动词 HEAD 无法识别且不受支持

将伟大的 DotNetOpenAuth 项目附加到我的网站后,我有很多未处理的异常,如下所示。你能帮我解决这个问题吗?

0 投票
1 回答
1794 浏览

dotnetopenauth - oauth_verifier 未使用 DotNetOpenAuth 的 Webconsumer 传递

我从服务器收到了一个好的 oauth_verifier 值,但它没有通过对ProcessUserAuthorizationaccess_token 端点的调用传递。

我正在使用 DotNetOpenAuth 3.3.1 和 WebConsumer 实现。我正在使用的服务器使用的是 OAuth 1.0a 而不是 1.0.1。

我是否需要强制 DotNetOpenAuth 使用 1.0a?

指向 log4net 日志的 pastebin 链接

0 投票
1 回答
552 浏览

asp.net - dotnetopenauth XRDS 清除缓存

我使用 dotnetopenauth 作为 openid 提供程序,并将 Response.ApplyAppPathModifier 文件更改为不同的文件,但始终返回旧文件。XRDS 似乎已被缓存。

缓存在哪里?

我可以清除这个吗?

任何帮助表示赞赏。

谢谢,

格雷厄姆

0 投票
1 回答
2772 浏览

c# - 我如何使用 DotNetOpenAuth 库发推文?

我刚刚下载了 DotNetOpenAuth 库并运行了 AuthConsumer 演示。到目前为止,这是一个很棒的图书馆!一切都像宣传的那样工作,这不是我最近使用的大量 Facebook 和 Twitter 示例代码的经验。

我想弄清楚的是:我如何使用这个库发推文?我目前正计划在 ASP MVC 中实现这一点,但我最初的想法是,在我正在查看的级别上,演示平台并不重要。

0 投票
1 回答
593 浏览

asp.net-mvc - DotNetOpenAuth 登录失败,但在查询字符串中接收数据

我正在尝试在我现在正在制作的 ASP.Net 2 网站上设置 OpenID,并使用 DotNetOpenAuth。但似乎我遇到了一堵无论我尝试多少事情都不会让步的砖墙。

在尝试使用 Google 登录时,我收到“对 ' https://www.google.com/accounts/o8/ud ' 的 Web 请求失败。” 作为回应。

奇怪的是,谷歌正确显示了登录屏幕,要求我确认是否要授予网站访问权限。

此外,来自 Google 的登录数据已正确附加到查询字符串中。

那么为什么 OpenID.GetResponse 不能为我获取正确的数据呢?

我可以自己从查询字符串中获取登录数据。但这是个好主意吗?

感谢您的回复!

编辑:只是想在这里澄清行为是在本地主机上。

0 投票
2 回答
973 浏览

openid - OpenID“1.0 OpenID 提供者不允许未经请求的断言”错误

我们正在尝试使用 OpenID jQuery 插件(如 StackOverflow)和 DotNetOpenAuth 来实现 OpenID(作为依赖方)。

我们无法让 AOL 工作。DotNetOpenAuth 使用http://openid.aol.com/ {username} 重定向就好了,但是当我们成功验证并重定向回我们的站点时,运行此代码:(缩写)

有谁知道这会导致什么?我发现很难搜索甚至是不请自来的断言。或有关 AOL 支持的 OpenID 版本的文档。

编辑:请求的 log4net 日志,它们是:

0 投票
1 回答
2707 浏览

c# - DotNetOpenId —“此消息已被处理”错误(第 2 部分)

这已经在这里问过了,但不是我问的,OP 接受了一个对我没有帮助的答案。到目前为止,我已经尝试从不同的浏览器登录、更改网络配置、清除 cookie 以及从外部机器加载。

事实上,我最终确实发现问题出在我自己的机器上。当我发布到另一台机器时,它运行良好。关于在哪里寻找解决方案的任何建议?我特意使用了我能想到的最简单的测试代码,一个干净的空 aspx 页面和一个简单的Page_Load函数。

编辑:为了澄清,就像原始问题的作者一样,我收到“此消息已被处理”错误。这被打印到屏幕上Response.Write(response.Exception.ToString());。我相信这个问题与配置有关,不像其他作者,因为症状只出现在我的本地盒子上。请注意,这些症状与我是否在代码运行所在的同一个盒子上进行测试无关。

错误信息:

DotNetOpenAuth.Messaging.Bindings.ReplayedMessageException:此消息已被处理。这可能表明正在进行重放攻击。在 DotNetOpenAuth.Messaging.Bindings.StandardReplayProtectionBindingElement.ProcessIncomingMessage(IProtocolMessage 消息) 在 c:\TeamCity\buildAgent\work\bf9e2ca68b75a334\src\DotNetOpenAuth\Messaging\Bindings\StandardReplayProtectionBindingElement.cs: 行 129 在 DotNetOpenAuth.Messaging.Channel.ProcessIncomingMessage(IProtoMessage消息)在 c:\TeamCity\buildAgent\work\bf9e2ca68b75a334\src\DotNetOpenAuth\Messaging\Channel.cs:DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel.ProcessIncomingMessage(IProtocolMessage message) 中的第 990 行在 c:\TeamCity\buildAgent\work\ bf9e2ca68b75a334\src\DotNetOpenAuth\OpenId\ChannelElements\OpenIdChannel.cs:DotNetOpenAuth.Messaging.Channel 的第 172 行。

日志:


网络配置:

0 投票
1 回答
748 浏览

c# - 如何在 dotnetnuke 框架中创建 Web 应用程序?

我对 dotnetnuke 很陌生。并想知道。在 dotnetnuke 中创建和构建 Web 应用程序的步骤。

我们如何使用 dotnetnuke 添加模块。

我们如何在 sqlsever 2005 或更高版本上处理数据库。

想知道简要和理解解释。

0 投票
1 回答
2270 浏览

asp.net - 存储 DotNetOpenAuth 信息和用户信息检索

这个问题有点像结构/设计问题,因为我无法找出执行任务的最佳方式。

在我的 MVC 应用程序中,我使用 DotNetOpenAuth (3.4) 作为我的登录信息提供程序,并且只使用FormsAuthenticationcookie 等标准。

数据库中的当前用户表有:

  • 用户 ID(PK,唯一标识符)
  • OpenId 标识符 (nvarchar(255))
  • OpenIdDisplay (nvarchar(255))
  • 显示名称 (nvarchar(50))
  • 电子邮件 (nvarchar(50))
  • 电话号码 (nvarchar(50))

由于 UserId 是用户的明确标识符(他们应该能够在以后更改其 OpenId 提供程序),因此它是其他表链接到的键(对于用户)。

这是当前代码,在成功验证后,会创建一个临时用户并重定向到 Create Action。

现在是问题的症结所在:

  1. response.ClaimedIdentifier要针对用户存储的信息是否正确?

  2. FormAuthentication.SetAuthCookie表单身份验证的首选方式吗?或者,还有更好的方法?

  3. 当我调用 SetAuthCookie 时,除了ClaimedIdentifier. 如果我一直提到他们UserId,创建用户是一个更好的主意,然后将其存储UserId在 cookie 中而不是ClaimedIdentifier?

  4. 如果我在多个地方使用该 UserId,我如何从 cookie 中检索它,或者将其存储在其他更合乎逻辑/更有用的地方?

有点啰嗦,但我一直在尝试找出最好的方法来做到这一点/