问题标签 [adfs]

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 回答
873 浏览

ruby-on-rails - 与 Rails 的 Active Directory 用户联合?

是否可以使用现有的 AD 用户在 ruby​​ on rails 应用程序中对他们进行身份验证?更准确地说,这是目前的情况。

rails 应用程序托管在 linux 机器上。目前 Brightbox 被用作托管服务提供商。rails 应用程序中只有内置的用户身份验证,我看不到让应用程序了解连接的 AD 用户的方法。

现在有一个相当大的客户,拥有数百个 Active Directory 用户。显然,他们希望让他们的用户登录而不为每个用户创建一个 rails 应用程序帐户。所有已知的身份提供者(OpenId、Google、Facebook ......)都别无选择。

我唯一能找到的就是微软的 ADFS2。但它看起来在 Rails 世界中并不真正可用。但这正是需要的。一种在 AD 和我的应用程序之间建立信任以信任外部 AD 用户的方法。

有任何想法吗?

0 投票
1 回答
1753 浏览

iis-7.5 - 使用 ADFS 保护启用了 IIS 7 WebDav 的虚拟文件夹

我们在 IIS 7 上有一个 ASP.NET 应用程序,它接受来自 ADFS 2 的身份验证令牌。我们在应用程序中使用了 Windows Identity Foundation 来做到这一点。

在同一个 IIS 上,我们有一个启用了 WEBDAV 的文件夹,Microsoft Office 用户可以在其中保存文件。这在使用 Windows 身份验证的 Intranet 上运行良好。这根本不涉及应用程序代码。

我们现在也想使用 ADFS 保护对 WebDav 文件夹的访问。但由于 IIS 处理 WEBDAV,因此没有可以添加 ADFS 身份验证的应用程序。

两个问题:

  • 如何在 IIS 上设置 WEBDAV 以进行 ADFS 身份验证?
  • Word 和 Excel 2007 会处理与 ADFS 的交互吗?
0 投票
2 回答
6475 浏览

c# - 将 ACS 与 ADFS 实现为 STS

我们正在尝试使用 ACS 示例 4(来自http://claimsid.codeplex.com/)作为我们 ADFS 项目的模板。我们对 ADFS 身份验证服务的被动请求没有问题。在示例中,联合提供程序是自定义 STS,并且示例工作正常。

现在我们希望用我们自己的 ADFS 替换自定义联合提供程序(示例中的 Adatum FP)。

我们现在的设置如下(隐藏命名空间)

  • ServiceClient:控制台应用程序,调用Services
  • 服务:WCF Webservice,返回字符串的单一方法。这是默认设置 [Ordertracking.Services in sample]
  • Services.Authentication:我们的自定义身份提供者。这是默认设置 [示例中的 Litware.SimulatedIssuer]
  • ADFS:我们的联合提供者 [示例中的 FederationProvider.Adatum]

ServiceClient 想要调用服务,并且从配置中它知道它必须从 IP (Services.Authentication) 获取令牌。然后将令牌传递给 ADFS,ADFS 将验证令牌并将新令牌发送回 ServiceClient。客户端 new 将 FP 令牌传递给服务,服务(作为 ADFS 上的依赖方)针对 ADFS 验证令牌,并执行服务方法。

问题:

用 ADFS 替换示例中的 STS,似乎破坏了集成。我们似乎从 IP 正确地获取了令牌,但是在将 IP 令牌传递给 ADFS 时遇到了问题。似乎我们的 Audience Uri 有问题,但我们添加了

https://'adfs fqdn'/adfs/services/Trust/13/IssuedTokenMixedSymmetricBasic256

客户端异常 我们在客户端中收到带有此 InnerException InnerException {"ID3242: The security token could not be authenticated or authorized."} 的 MessageSecurityException。

ADFS 调试日志

我们已将观众 uri 添加到我们的 IP Web.config:

如有必要,我们可以发布其他配置文件和 ADFS 配置的屏幕截图。

0 投票
1 回答
756 浏览

single-sign-on - 在依赖部分和身份提供者之间配置 ADFS

我参与了为一堆 Web 应用程序设计的单点登录平台。这些 Web 应用程序理解 SAML 1.1。另一方面,我们的身份提供程序适用于 SAML 2.0 规范。现在我的查询是 ADFS(Active Directory 联合服务)一个很好的平台,它可以位于 Web 应用程序和身份提供者之间,也可以将 SAML 2.0 转换为 SAML 1.1,还允许我根据成功/不成功的身份验证插入我自己的业务规则。此外,如果有人可以根据类似要求参考任何示例。

0 投票
2 回答
3782 浏览

crm - ADFS (CRM 2011) - 用于 CRM 的 Microsoft Outlook 客户端中的身份验证问题(Response.Redirect(...) & Window.Open(...))

在我开始之前,我们的客户必须通过 AFDS 连接才能继续使用 CRM 2011。所以我们谈论的是“IFD”环境。

我在使用“CRM 2011 Outlook Client”和“Window.Open(...)”-JS 函数时遇到问题。当他们在 CRM 2011 中点击一个按钮时,一个 ASPX 页面会启动,并使用电子邮件中的附件执行一些操作。然后它成功地创建了一个联系人,然后它应该重定向到那个“联系人”页面。但是每次我重定向到“CRM 2011”页面时,都会提示用户输入他的凭据。这是因为“Window.Open(...)”在新的“浏览器”屏幕中打开屏幕并且身份验证丢失(因为我们来自 Outlook 客户端)。

上述场景在使用基于“Web”的 CRM 2011 时运行良好,因为您需要首先通过 ADFS 登录。

你们中的一些人是否遇到过上述问题并对此有很好的解决方案?

  1. 有没有办法执行“Window.Open(...)”并停留在“Outlook”屏幕中?和你应该在“CRM 2011 Outlook Client”中双击一个联系人一样吗?
  2. 有没有办法在进行“重定向”时,自动将凭据提供给页面,以便在无需用户自己输入凭据的情况下打开页面?我已经阅读了有关 SignInRequestMessage 和 FederatedAuthentication 的一些内容,但没有显示出明确的示例来执行此操作。

我希望你们能帮助我。在我身边,如果我找到任何解决方案,我会回到这里!

亲切的问候,弗雷德里克

0 投票
3 回答
56131 浏览

single-sign-on - ADFS、WIF、WS 联合、SAML 和 STS 之间有什么区别?

这些是用于 Microsoft 服务单点登录的众多技术和流行语。

有人可以解释一下 ADFS、WIF、WS 联合、SAML 和 STS(安全令牌服务),包括使用它们的地点和时间。

0 投票
1 回答
644 浏览

asp.net-mvc-3 - JQuery uploadify 在 asp.net MVC3 应用程序中无法使用 https 引发错误 2038

我构建了一个新的 MVC3 应用程序并在其中使用了 Uploadify 插件。它工作得很好。下面是我的代码:

这是上传文件的方法。

但是,当我在另一个使用 ADFS 联合并使用 https 的 MVC3 应用程序中使用相同的代码时,它总是抛出错误 2038。有谁知道我为什么会收到此错误。我检查了每一个配置设置。这是一个安全问题吗?对此的任何帮助将不胜感激。谢谢!

0 投票
2 回答
4480 浏览

azure - Azure/web-farm 就绪 SecurityTokenCache

我们的网站使用 ADFS 进行身份验证。为了减少每个请求的 cookie 有效负载,我们打开了 IsSessionMode(请参阅Your fedauth cookies on a diet)。

为了在负载平衡环境中正常工作,我们需要做的最后一件事是实现一个场就绪的 SecurityTokenCache。实现看起来很简单,我主要想知道在处理 SecurityTokenCacheKey 以及 TryGetAllEntries 和 TryRemoveAllEntries 方法时是否应该考虑任何陷阱(SecurityTokenCacheKey 具有 Equals 和 GetHashCode 方法的自定义实现)。

有没有人有这方面的例子?我们计划使用 AppFabric 作为后备存储,但使用任何持久存储的示例都会有所帮助 - 数据库表、Azure 表存储等。

以下是我搜索过的一些地方:

  • Hervey Wilson 的 PDC09 会话中,他使用了 DatabaseSecurityTokenCache。我无法找到他的会话的示例代码。
  • 在 Vittorio Bertocci 的优秀著作“Programming Windows Identity Foundation”的第 192 页上,他提到将 Azure 就绪的 SecurityTokenCache 的示例实现上传到该书的网站。我也找不到这个样本。

谢谢!

京东

2012 年3 月 16 日更新 Vittorio 的博客链接到使用新的 .net 4.5 内容的示例:

ClaimsAwareWebFarm 这个示例是对我们从你们中的许多人那里得到的反馈的回答:您想要一个显示农场就绪会话缓存(而不是 tokenreplycache)的示例,以便您可以通过引用使用会话而不是交换大 cookie;你要求一种更简单的方法来保护农场中的 cookie。

0 投票
1 回答
960 浏览

asp.net - 如何将值从 AD FS 2.0 HomeRealmDiscovery.aspx 传递到 FormsSignIn.aspx?

AD FS 2.0 登录页面是一个小型 ASP.NET Web 应用程序(使用 .NET 2.0),可以对其进行自定义以更改外观和功能。(Microsoft 明确记录了此类自定义:请参阅登录页面自定义及其子页面。)

我有一个场景,其中有多个“家庭领域”(=“Claims Provider Trusts”),并且 AD FS 2.0 使用表单登录(而不是另一个“身份验证处理程序”)。

当页面HomeRealmDiscovery.aspx被点击时,该页面应该以某种方式(例如,通过询问用户)选择一个主域,然后调用SelectHomeRealm()。这通常在某些提交按钮的某些 ASP.NET 事件处理程序中完成。此时,控制权转移FormsSignIn.aspx页面。

现在在 FormsSignIn 页面上,我想使用在 HomeRealmDiscovery 页面上输入的一些数据(不直接与 AD FS 相关)。但是,我看不到获取该数据的方法。

MSDN 页面“如何:确定如何调用 ASP.NET 网页”解释了如何找出控制权是如何转移的。就我而言,我发现在 FormsSignIn 页面IsPostBack中是假的,PreviousPage是空的,并且IsCallback是假的。(也是IsCrossPagePostBack错误的。)因此,MSDN 页面建议使用“原始请求”调用 FormsSignIn 页面。但事实并非如此,因为我观察到(使用例如 Fiddler)不会通过以任何方式重定向客户端浏览器来传输控制权。所以我希望这是一个“服务器传输”,这样我就可以PreviousPage用来访问 HomeRealmDiscovery 页面实例。(我尝试使用 cookie,但这不起作用,因为浏览器不参与传输。)

因此我的问题是:如何将 AD FS 2.0 HomeRealmDiscovery.aspx 页面中的值传递到其 FormsSignIn.aspx 页面?

0 投票
2 回答
2477 浏览

single-sign-on - SP-IdP 交互问题:我没有被重定向回 SP 网站

我是 SSO 和 ADFS 的新手,所以我尝试先运行本指南:AD FS 2.0 Federation with a WIF Application Step-by-Step Guide。本指南暗示使用单台机器运行它,但我在 2 台不同的机器上运行身份提供者 (IdP) 和服务提供者 (SP)。当 IdP 应该将经过身份验证的请求重定向回 SP 的网站时,我在最后一步遇到问题,而是返回 HTTP 200 Ok,让我留在 IdP 网站上。用例:当我在浏览器 (IE8) 中请求 SP 页面时,它会按预期将我重定向到 IdP。它显示了我输入我的 Windows 帐户凭据的弹出窗口。但是,它没有让我回到 SP 网页,而是向我显示 //adfsserver/adfs/ls 文件夹的内容。

根据 Fiddler,这是 http 身份验证请求/响应的样子:

GET https://adfsserver/adfs/ls/?wa=wsignin1.0&wtrealm=https%3a%2f%2fymichurin%2fClaimsAwareWebAppWithManagedSTS%2f&wctx=rm%3d0%26id%3dpassive%26ru%3d%252fClaimsAwareWebAppWithManagedSTS%252fdefault.aspx&wct=2011- 11-23T21%3a59%3a56Z HTTP/1.1 ...

HTTP/1.1 200 OK ... 这是 //adfsserver/adfs/ls 文件夹内容

知道有什么问题吗?

有没有人知道类似的 ADFS 指南,它显示了这些东西如何在不同的机器上工作,而不是在单个机器上?

谢谢