Как прочитать имя пользователя VPN? - PullRequest
1 голос
/ 21 декабря 2011

У нас есть приложение, для работы которого требуется подключение пользователя к VPN. Проблема заключается в том, что мы используем Windows Authentication для аутентификации приложения. Тем не менее, мы сталкивались с некоторыми машинами, чьи имена для входа в Windows и их имена для входа в AD разные.

Может ли кто-нибудь предложить нам способ чтения имени входа AD, которое всегда совпадает с именем входа VPN? PS: мы используем Checkpoint VPN Secure Client

1 Ответ

1 голос
/ 22 декабря 2011

вы можете попробовать это, если вы используете ActiveDirectory, но я не уверен, что вы знакомы с AD, но это будет хорошим инструментом обучения для вас, особенно если он работает ..

static void Main(string[] args)
{
    string groupName = "Domain Users";
    string domainName = "";

    PrincipalContext ctx = new PrincipalContext(ContextType.Domain, domainName);
    GroupPrincipal grp = GroupPrincipal.FindByIdentity(ctx, IdentityType.SamAccountName, groupName);

    if (grp != null)
    {
         foreach (Principal p in grp.GetMembers(false))
         {
                Console.WriteLine(p.SamAccountName + " - " + p.DisplayName);
         }

        grp.Dispose();
        ctx.Dispose();
        Console.ReadLine();
    }
    else
    {
        Console.WriteLine("\nWe did not find that group in that domain, perhaps the group resides in a different domain?");
        Console.ReadLine();
    }
}

или выможет попробовать тот, который указан в этой ссылке на Как получить пользователей, принадлежащих к группе Active Directory

...