问题标签 [acs]
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.
asp.net - 转移到另一台机器时,中继方应用程序不起作用
我有一个配置为通过 ACS 进行身份验证的 ASP.NET 中继方应用程序。该网站在我的本地主机上运行良好。问题是当我将网站复制到另一台机器时,它不起作用并引发以下异常:
**“/网站”应用程序中的服务器错误。
访问被拒绝。说明:访问处理此请求所需的资源时出错。服务器可能未配置为访问请求的 URL。
错误消息 401.2.:未经授权:由于服务器配置,登录失败。根据您提供的凭据和 Web 服务器上启用的身份验证方法,验证您是否有权查看此目录或页面。如需更多帮助,请联系 Web 服务器管理员。**
另一个有趣的地方是,在新机器上运行时,网站的 URL 发生了变化,例如在我的机器上它是“http://localhost/Website/”,而在新机器上它是“http://localhost: 51975/网站/”。
有任何想法吗??
azure - 如何使用 Azure ACS 将所需声明传递给 OpenID 身份提供者?
查看 Azure ACS 生成的请求 url 时,我可以看到 ACS 包括电子邮件、全名、名字和姓氏作为必需的声明。此外,全名属性映射到http://axschema.org/namePerson
声明类型。
现在我已将MyOpenID添加为身份提供者。MyOpenID 无法识别 axschema 声明,但我http://schema.openid.net/namePerson
已从 MyOpenID 成功检索。
问题是,即使我将http://schema.openid.net/namePerson
声明添加为与 ACS 中的 MyOpenID Claim Issuer 相关的规则,该声明也不会包含在 ACS 生成的请求 url 中。
是否有任何(隐藏的)方式来配置需要此声明的请求?或者更好的是,将内置映射更改为使用schema.openid.net/namePerson
类型而不是axschema.org/namePerson
?
azure - ACS 中的 MyOpenID:添加所需的声明类型
这个问题是如何使用 Azure ACS 向 OpenID 身份提供者传递所需声明的延续?
不过,它对这个问题的看法略有不同,因此我将其作为一个新问题发布。注意:我也将它交叉发布到Azure 安全论坛,但到目前为止还没有得到任何有用的输入。
Azure ACS 示例显示可以将任意 OpenID 身份提供程序添加到 ACS 。但是为了让 ACS 作为 STS 对我们的项目真正有所帮助,我们着手让 ACS 与 MyOpenID.com 合作(同样,也用于示例)。问题,正如Vittorio 所展示的那样,是 MyOpenID 不会向我们提供诸如姓名和电子邮件地址之类的声明,除非被要求。Vittorio 和其他人说这是因为 MyOpenID 不支持属性交换。
不过,我不太确定。深入挖掘 ACS 生成的请求 url,我可以看到参数openid.ns.ax=http://openid.net/srv/ax/1.0
和openid.ax.required=email,fullname,firstname,lastname
. 此外,openid.ax.type.email
被键入到axschema.org/contact/email
类型。这就是 MyOpenID 出现问题的地方。MyOpenID 不理解 axschema.org 类型,因此不会返回电子邮件值。
我所知道的是 MyOpenID 理解schema.openid.net/contact/email
类型。因此,在此基础上,我手动更改了 ACS 请求 URL 以使用 openid.net 架构而不是 axschema。瞧,MyOpenID 做出反应并显示我的电子邮件地址实际上将被返回。
这是我试图传递给 myopenid.com/server 端点的参数列表:
- openid.ns= http://specs.openid.net/auth/2.0
- openid.mode=checkid_setup
- openid.claimed_id= http://specs.openid.net/auth/2.0/identifier_select
- openid.identity= http://specs.openid.net/auth/2.0/identifier_select
- openid.realm= https://myazurenamespace.accesscontrol.windows.net:443/v2/openid
- openid.return_to= https://myazurenamespace.accesscontrol.windows.net:443/v2/openid ...
- openid.ns.ax= http://openid.net/srv/ax/1.0
- openid.ax.mode=fetch_request
- openid.ax.required=电子邮件,全名
- openid.ax.type.email= http://schema.openid.net/contact/email
- openid.ax.type.fullname= http://schema.openid.net/namePerson
不幸的是,当响应返回给 ACS 时,它还不够好,并且 ACS 失败并出现以下错误代码:
HTTP 错误代码:400 消息:ACS30000:处理 OpenID 登录响应时出错。内部消息:ACS90014:缺少必填字段“openid.ax.value.email”。跟踪 ID:f8e09e6f-0765-4370-9f03-f744cce6fa2a 时间戳:2011-08-02 17:12:57Z
我尝试在不更改原始电子邮件类型的情况下添加其他字段,但只会得到相同的错误。我开始怀疑实际上是 ACS 没有完全支持 AX,并且它有些硬编码以仅接受某些类型的声明。
问题是:我的请求参数对你来说是正确的还是我在这里遗漏了一些明显的东西?
注意:我的初始设置正在工作,如果我保持 ACS 请求不变并且在 ACS 中只为身份提供者配置一个直通规则,我可以使用 MyOpenID 身份提供者通过 ACS 成功验证我的网站。如果来自 ACS 的请求没有明确要求声明类型http://schema.openid.net/namePerson
或http://schema.openid.net/contact/email
azure - 在 ACS Azure 上的一个依赖方应用程序上有多个返回 URL
当我将用户重定向到其身份提供者的登录 URL 而不是我在 ACS 管理门户中指定的登录 URL 时,我希望能够指定 ACS 身份验证的返回 URL。我将主要使用 ADFS IP。
这可能吗?
facebook - ACS 和 facebook 登录 -> display=touch 坏了?
我正在使用 ACS 对 Facebook 进行身份验证。在这周之前,我可以将 display=touch 添加到 ACS 提供的 URL 的末尾。现在,当我这样做时,我收到“HTTP 500 内部服务器错误”。
有任何想法吗?URL 类似于:
我尝试过 m.facebook.com 的结果相同。
同样,这在以前有效......如果我删除 display=touch(或将其更改为 display=popup),一切都很好。
我希望它显示在 WP7 应用程序上,因此触摸 :)
谢谢
更新:文档说“呈现对话框的显示模式。可以是页面、弹出窗口、iframe、触摸或 wap。”。触摸并 wap 返回“HTTP 500 内部服务器错误”。
wcf - ACS 联盟问题
我正在构建一个 Azure 托管的 WCF 服务,我想使用存储在 SQL Server 数据库中的凭据通过 ACS 来保护它。我查看了一堆 ADFS2 示例,但还没有弄清楚如何做到这一点。我敢肯定我在这里遗漏了一些明显的东西,所以任何建议都将不胜感激。谢谢...
c# - 客户端 WPF 应用程序如何使用 Azure 上的 WCF 服务进行身份验证?
我目前正在考虑创建一个部署到天蓝色云的应用程序。考虑使用 Azure 而不是 Amazon 的主要原因是访问控制服务。我想为我的应用程序(尤其是 Facebook)接受尽可能多的不同凭证类型。
一些用户将使用基于 HTML 的应用程序,其他用户将使用 WPF 客户端应用程序。问题是,我如何使用他们想要的任何提供者对客户端进行身份验证,然后与 WCF 服务进行通信。我猜我需要在我的应用程序中使用网络浏览器组件,或者弹出一个外部浏览器(理想情况下支持偏执用户的两种选项),但我不清楚如何将该连接用于 WCF 服务.
javascript - Azure ACS Popup 或 In Page Redirect,哪个更好?
对我现在正在做的事情有什么更多的看法,你认为在这种情况下什么更好。
现在我正在使用 Azure ACS 构建登录,我想知道哪个会更好。
选项 1 当用户单击他们想要使用的登录名时,将打开一个弹出窗口,然后他们可以在那里登录。但我无法关闭那个弹出窗口。一旦他们登录,我希望关闭弹出窗口并从他们所在的选项卡重定向到不同的页面,但我不确定 ACS 是否可能。
选项 2 存在页面内重定向,但这会使用户远离网站,这是我真的不想做的事情。
有没有办法让选项 1以我希望它与 Azure ACS 一起使用的方式工作?如:
- 用户进入我的登录页面
- 用户点击 Google 或 Facebook
- 弹出窗口打开相应的标志
- 登录后,弹出窗口关闭
- 选项卡用户打开是重定向到用户页面,我仍然有要在该视图中使用的 FormCollection 对象。
这是我正在使用的js。
asp.net-mvc - 如何从 Azure ACS 获取电子邮件和名称?
我正在使用 Azure ACS,并且一直在寻找从 SAML 2.0 响应或其他内容中获取电子邮件和名称的方法。
但我没有看到任何选项,我将用户重定向到 localhost:8000/acc/completesigninup/
我有来自 FormCollection 对象的 XML,我在 xml 中看到了电子邮件和名称,但我不确定如何获取它。Identity dll中是否包含解析器来获取该信息?
asp.net - facebook api 错误代码:191 Asp.Net MVC 3 using Dev Environment localhost and ACS
在过去的几天里,我一直在尝试为我的身份提供者获取 ACS 集成。主要的工作,Google、Yahoo! 和 Live,但我无法让 Facebook 与我的 localhost 开发环境一起工作。Facebook 也更改了他们的应用程序配置页面,我很困惑。
有谁知道配置 ACS 和 Facebook 以协同工作的更新步骤?我的网址是: http://localhost/webapp1/ 我一直在浏览所有帖子,但由于情况发生了变化,旧的答案似乎不起作用。我知道它必须在 Azure ACS 或 Facebook 应用程序设置中的设置页面之一上,或者我的 web.config 有问题。我将不胜感激所有帮助。