2009-02-25 93 views
0

如何在不登出当前用户的情况下使用C#登录另一个Active Directory用户。 ; 1 - 获取新用户的访问权限 2-完成我的工作,并以c#方式注销。登录并注销AD与C#

例如我是blabla.com domain.I用户已登录高级用户。但我需要管理员权限的东西,所以我需要注销和更改用户到管理员做我的工作,并重新登录高级用户再次我想用C#来做。

我听说过那样的模拟用户,但我认为这不是我想要的。

编辑:我希望与其他用户登录并获得此用户的权限,而无需从当前用户在c#中注销。

+0

你想做一些像Vista一样的提高权限来执行某些任务吗?! – WestDiscGolf 2009-02-25 14:36:05

回答

3

你的问题不是很清楚。如果你想要做的是查询/修改AD,那么t4zsan的回答是正确的。

如果您只是需要其他用户的组/安全权限,那么模拟是要走的路。 This article will give you a good foundation on it

注意事项:您希望模拟的用户必须能够登录到正在运行代码的机器。如果该域不受信任,则不能模拟另一个域中的用户。显然,你也不能在另一台机器上冒充本地用户。

+0

我想用C#中的其他用户登录,无需从当前用户注销。 – 2009-02-25 19:29:26

1

当使用System.DirectoryServices中的类连接到AD时,您可以选择指定用户凭证。例如,当使用DirectoryEntry时,有一个constructor overload获取用户名和密码,可以让您以不同的用户身份进行连接。