2009-09-11 51 views
1

目前,我们有一个.hta文件,员工用它来更新其活动目录配置文件的某些元素。这减轻了系统管理员必须处理这个问题。 .hta文件的推理是显而易见的。它提升了很多安全阻止,并允许一台机器执行其他方法无法完成的任务(如更新活动目录配置文件)(据我所知)。浏览器可以模拟.hta文件的安全相关功能吗?

我意识到安全隐患,但我们被要求将这个.hta应用程序转移到基于浏览器的.net应用程序。这甚至有可能吗?如果是这样,为什么可能呢?这似乎是一些(而且应该是)浏览器相对不可能的东西。

回答

0

我想这取决于你的意思是基于浏览器的.net应用程序。我编写了许多实用程序,它们以网页形式呈现给用户,并更新AD(或其他存储库)。在这些情况下,至少有一部分应用程序在服务器上运行。浏览器中的网页仅允许访问此服务器代码。

背后有几种技术。我假设你的用户以自己的身份运行.hta。你可以使用ASP.NET做类似的事情。 ASP.NET在IIS上运行。如果您使用IE作为浏览器,则可以配置IIS(和IE)以使用Windows集成身份验证。这意味着IE将Windows安全令牌传递给IIS,以便IIS知道用户是谁,并且他们最近已向DC认证了自己。 IIS将此传递给ASP.NET,以便您的应用程序也可以知道这一点。您可以配置您的应用程序,以便“模拟”用户并使用其ID进行操作。

或者,您可以定义应用程序使用的凭据,并使用IIS应用程序池运行ASP.NET网站,或者在向AD发出呼叫时直接在代码中使用凭证。当我希望用户能够做自己无法做到的事情时,我已经这样做了,我不想通过将权限授予他们直接授予他们。这意味着我可以为过程添加验证。

您使用名为System.DirectoryServices,又名S.DS(或System.DirectoryServices.Protocols(又名SDS.P))的.NET名称空间,但这很难使用,或者使用System.DirectoryServices.AccountManagement。 NET 3.5),您可以使用它读取和更新AD。

如果你想知道更多,更新你的问题,我会尽力帮助。

相关问题