【问题标题】:Decentralized authentication against Windows domain针对 Windows 域的分散式身份验证
【发布时间】:2012-03-30 21:18:02
【问题描述】:

有许多设置非常简单的第三方分散式身份验证解决方案:使用 Facebook 凭据、OpenID、OAuth 等登录。

如何在 Windows 域环境中的防火墙内执行类似操作?

场景:

  • 防火墙内的 Python Web 应用程序,托管在 Linux 服务器上。
  • 用户拥有 Windows 桌面并通过 Windows 域进行身份验证

我知道我可以使用 LDAP 针对 Active Directory 验证用户名/密码,但这不是我想要的。我根本不希望我的应用程序处理用户名/密码。我希望它像 OpenID 一样工作,即我的应用程序将用户重定向到某种 Windows 身份提供程序网页。

是否有开箱即用的 Windows/IIS 解决方案?

编辑:

【问题讨论】:

    标签: python windows authentication wif federated-identity


    【解决方案1】:

    冒着给出太多答案的风险,在我看来ADFS 2.0 是您阻力最小的路径。至于将基于声明的访问集成到您的 python 应用程序中,我已经看到pysaml2 被推荐作为这样做的一种方式,但我不能从经验中说出来。

    【讨论】:

    【解决方案2】:

    我不是 Windows 用户,而是来自 Atlassian 的 Crowd

    • 将在 Windows 上运行
    • 可以针对 Active Directory 进行身份验证
    • 包括一个 OpenID 提供程序

    因此,如果您的应用程序可以处理 OpenID,那么您将拥有所需的一切。

    【讨论】:

    • 看起来 Crowd 可以工作。但是,有几件事我不喜欢它。它是基于 java 的,我更喜欢更容易集成到 Windows/IIS 环境中的解决方案。一个 IIS 应用程序将是理想的。
    【解决方案3】:

    WIF 和 Azure ACS 将提供此功能。例如Adding a Custom OpenID Provider to ACS… with JUST ONE LINE of PowerShell Code.

    或者您可以将 Dot Net Open Auth 与您自己的 STS 或使用类似 Identity Server 的东西集成。

    【讨论】:

    • WIF 和 DotNetOpenAuth 都是 .NET 框架,因此它们不会对集成他的 python 应用程序有太大帮助,除非它是铁 python.ACS 如果他想联合他的应用程序与多个身份是一个有趣的选择提供商,但听起来他只是想要内部 Windows 集成身份验证。
    • 能否将 Azure ACS 安装在内部 Windows 服务器上?还是只能在 Azure 云平台上使用?
    • 否 - 仅在 Azure 云平台上可用。但是看看我的其他建议。两者都可以在内部安装 - 但根据您的用例,它们可能需要外部访问。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-07
    • 2013-09-25
    • 2012-06-09
    • 2016-01-28
    • 2023-03-20
    相关资源
    最近更新 更多