我正在创建一个 Web 应用程序,供 Active Directory 中包含的用户使用。
之前,我们使用 LDAPS 将应用直接连接到广告。我的客户现在使用 ADFS,并希望关闭 LDAPS“网关”
我有点迷茫,但这是我的理解:
ADFS 将与 AD 位于同一个域控制器上。由于我的 Web 应用程序位于另一个域中的另一台服务器上,因此我的客户端必须指定从我的服务器发出的声明是可信的。
所以我的问题是:
1——我的客户在 adfs 中要做什么?
- 我看到了依赖方的概念,但是这个概念是否仅当我在服务器上安装了 ADFS 时才使用?或者我走对了方向?
2-我需要在我的服务器上安装任何东西吗?
- 我想我的客户需要给我一份证书,这样我的通话才值得信任。
- 我是否必须将 ADFS 安装到我的服务器上,声明将在 adfs 之间进行?
- 我需要安装 ADFS 代理吗?
提前谢谢您,我比开始搜索之前更加迷茫了。
PS 我无法使用集成的 Visual Studio 工具连接到 ADFS,因为我有混合身份验证(数据库和 ADFS)
答案1
您确实应该在 stackoverflow 中寻找开发人员指导,而不是在 serverfault 上寻找 IT 专业观点。
客户端将是验证凭据的身份提供者 ad fs。他们将安装 ad fs 并创建指向您的应用程序的依赖方。
您将需要在您的服务器(依赖方)上使用一些中间件,例如 wif 或 owin,以使用传入的令牌并对您的应用进行编码以使其能够感知声明。
我建议回顾一下https://msdn.microsoft.com/en-us/library/hh873308(v=vs.110).aspx它展示了在这种情况下如何使用 wif。
答案2
假设 ADFS / AD 是域 a。您的应用程序是域 b。
- 我的客户在 adfs 中要做什么?
您需要将客户端配置为 ADFS 中的 RP。配置方式取决于您要使用的协议。您可以选择:
- 维夫
- 通过 OWIN 进行 WS-Fed
- 通过 OWIN 进行 SAML
- 通过 OWIN 进行 OpenID Connect/OAuth(ADFS 4.0)
您不需要在域 B 上安装 ADFS。
- 我需要在服务器上安装任何东西吗?
在域 B 中?不。如果您想使用代理,则代理安装在域 A 上。
请注意,由于您的应用位于不同的域中,因此未加入域,因此您将无法使用 IWA。您将使用 FBA。