客户同时拥有内部域和 DMZ 域。此时两个域之间没有信任。我们在 DMZ 区域部署了 Web 应用程序,因为该应用程序也与外部用户进行了一些交互。
- 来自内部域的内部用户需要能够通过 Kerberos 身份验证登录到我们的 Web 应用程序,考虑到 Web 应用程序的应用程序池需要能够解密来自内部用户的服务票证,而应用程序池帐户来自 DMZ领域?
- 假设 #1 是可能的,在内部用户登录后,我们需要对其他内部用户和组的人员选择器进行 LDAP 查询。在这里,我们想通过 Kerbeos 委托对内部域进行 LDAP 查询。只是想知道在这种情况下我们如何找到内部域控制器。有什么方法可以查询 GC 吗?还是我们应该在配置文件中配置它,或者我们可以从登录用户的 UPN 中获取?现在假设我们有内部域控制器地址,我们如何通过 Kerbeos 约束委派模拟登录的内部用户来进行查询?使用 C# DirectoryEntry 构造函数
public DirectoryEntry (string path, string username, string password, System.DirectoryServices.AuthenticationTypes authenticationType);
,我们可以提供一个 authenticationType 作为委托,尽管我仍然需要提供我没有的用户名和密码。