我是独立的Windows 10笔记本电脑而不是运行AD LDS或任何其他活动目录服务。我正在运行IIS。
我试图深入了解这行代码正在做什么,更重要的是,如何。
DirectoryEntry e3 = new DirectoryEntry(@"IIS://localhost/W3SVC/1/Root");
在没有活动目录的情况下,Windows操作系统是否会以某种方式伪造此方法?
答案 0 :(得分:1)
1)首先请注意,如果您的意思是预先/端口IIS7。在IIS7之后和之后,很多事情都发生了变化,但是它们看起来仍然很相似。但是存在重要的差异。
2)确认您至少在管理模式下运行
以管理员身份运行
〜或做得更好。
3)查看.net' DirectoryServices()/DirectoryEntry()
以及Microsoft.Web.Administration.ServerManager()
。这可能是您可以完成90%的尝试。
4)有一个Windows工具cmdline exe(windows/syswow64[system32]/inetsvr/appcmd.exe
)非常有用〜实际上,如果它是您的需求/环境的选项,您可能更喜欢为所有人创建一个cmd脚本正在努力做到。我建议先学习这个工具,然后用它来提取出很多IIS / Site元数据来探索什么&你想去的地方。 https://www.iis.net/configreference/system.applicationhost/applicationpools
5)Powershell有一个snapin,肯定在安装了IIS的服务器上,可能在工作站上。我没有使用很多PowerShell,所以我最常说的是snapin被称为WebAdministration和/或iisConsole。您可能需要/喜欢在每次运行脚本时手动注册管理单元,或者您可以使用IIS powershell管理控制台自动注册管理单元。
6)对于任何上述选项,请记住#2~确定您至少在管理模式下运行。
7)我知道你肯定在IIS的元数据库中玩耍〜而不是注册表那么多。本地工作站:当您是IIS实例的本地工具时的确切机制?我不确定。您可能直接访问元数据,可能是通过IIS服务获取元数据,或者您可能正在访问Server.exe服务器服务或其他内容。
没有LDAP的远程服务器:如果要查询的是不在活动目录中的远程服务器?和工作站一样。
远程服务器w / LDAP:如果要查询AD中的服务器,几乎可以肯定您正在使用AD / LDAP服务。当然,你如何这样做可能在技术上通过隔离,例如在该遥控器上运行的server.exe服务。
- 最终游戏是appcmd.exe,powershell或c#Microsoft.Web.Administration,DirectoryServer(),所有这些都可能接近在后台做同样的事情。但这些是您访问该背景的界面,因此您不必过多考虑更深层次的实施。
我希望这对每个人都有帮助! 投票,你喜欢这个答案。