如何在C#中使用UserPrincipal为用户设置PermittedWorkstations

时间:2015-02-12 16:14:30

标签: c# directoryservices restrictions userprincipal

我有一个系统可以实时创建AD中的用户并打印凭证标记。该用户被一个人用于在互联网上导航。

直到现在一切都还好。该用户无法仅在代理服务器上登录公司的计算机。

在UserPrincipal课程中,我们有" PermittedWorkstations"财产,但它是只读的。

有没有办法设置PermittedWorkstations(或者为用户设置计算机限制,添加他能够登录的计算机 - 如此图像http://i.stack.imgur.com/tu2Kp.png)?

2 个答案:

答案 0 :(得分:0)

正如DeFirmo已经提到的那样:通过设置“允许的工作站”不太可能解决问题,但是:

使用直接ADSI命令,以下内容适用于我:

using System.DirectoryServices;

....

using (DirectoryEntry de = new DirectoryEntry("LDAP://CN=NewlyCreatedUser,CN=Users,DC=ad,DC=local"))
{
    de.Properties["userWorkstations"].Add("WS1,WS2");
    de.CommitChanges();
}

答案 1 :(得分:0)

您必须使用User.Principal的PermittedWorkstations的Add方法

User.PermittedWorkstations.Add("SampleWorkstation"));