Почему мои группы Active Directory не отображаются при запросе пользователя?

Почему мои группы Active Directory не отображаются при запросе пользователя?

У меня есть два доменаАиБ

Домен Асодержит группу безопасностиСЕЦ. Эта группа используется для доступа к веб-приложению. Группа является группой безопасности, а тип группы — локальная для домена. Этот домен также содержит большинство пользователей.

Домен Бсодержит несколько пользователей, и эти пользователи являются прямыми членами группы безопасности, расположенной в доменеА

В моем веб-приложении (ASP.NET MVC) я использую интегрированный поставщик аутентификации Windows, который проверяет, является ли пользователь членом группы безопасности. После этого я нахожу пользователя в Active Directory и назначаю ему ряд ролей на основе того, в какие группы Active Directory он входит.

При запросе свойства tokengroups для пользователей из доменаАя вижу, что они являются членамиСЕЦгруппа.

Но при запросе членов доменаБ, также используя свойство tokengroups, я не вижуСЕЦгруппа в свойстве tokengroups.

Мои вопросы

  • Почему члены доменаБкажется, не является членом группы, когда на самом деле является? Я использую свойство tokengroups при поиске групп для пользователя.

    Причина, по которой я так считаю, заключается в том, что я могу видеть пользователей в списке участников, просматривая свойства группы. Кроме того, они аутентифицированы в веб-приложении, но когда мой модуль пытается найти группы участников из доменаБ,СЕЦгруппы просто нет.

  • Является ли текущая настройка, в которой все группы являются группами безопасности и локальными для домена, действительно лучшим способом? Мне нужна куча групп-"маркеров", в которые я могу добавлять группы и пользователей из нескольких доменов.

Чтобы получить группы безопасности пользователя, я использую свойство tokengroups. Вот такhttp://tutorials.csharp-online.net/User_Management_with_Active_Directory%E2%80%94Извлечение_групп_токенов_пользователей

решение1

Я думаю, что вам нужно выполнить привязку к GC, чтобы правильно извлечь tokenGroups из Active Directory. То есть в вашей строке привязки вам следует заменить LDAP:// на GC://, и, надеюсь, это должно сработать.

Связанный контент