Назад | Перейти на главную страницу

Аутентификация веб-сайта с помощью сертификата из другого домена

Мой вопрос: есть ли лучше способ включить аутентификацию между двумя доменами, чем то, что я делаю ниже, и правильно ли использовать сопоставление имен?


Есть 2 домена; Один - основной корпоративный домен, второй - меньший поддомен.

Корпоративный домен имеет учетные записи для каждого пользователя в компании и генерирует сертификат электронной почты (который поддерживает аутентификацию клиента). Субдомен не может иметь доверительных отношений с корпоративным доменом; и пользователи в субдомене имеют 2 входа в систему: один для корпоративного домена и один для субдомена.

На небольшом поддомене размещается веб-сайт, для которого требуется имя пользователя и пароль. Мы хотим использовать смарт-карты с электронными сертификатами на них, чтобы вход в любой домен был прозрачен для пользователя.

Я начал вручную создавать сопоставления имен для поддомена с сертификатом электронной почты, выданным корпоративным доменом, но единственный способ, которым я знаю, как получить эти сертификаты, - это отправить мне подписанное электронное письмо от пользователей и затем экспортировать сертификат в файл.

Процесс выглядит так:

  1. Пользователь отправляет мне подписанное электронное письмо.
  2. Я загружаю сертификат пользователя из подписанного электронного письма и сохраняю его в файл.
  3. Запустите созданный мной сценарий, который считывает сертификат, находит пользователя по адресу электронной почты в AD и создает сопоставление имен между пользователем и этим сертификатом.

Таким образом, теперь пользователи могут проходить аутентификацию на сайте, который ищет их учетные данные на контроллере домена субдомена, используя их сертификат, выданный основным доменом.

Предостережения:

Доверие к сертификатам может (и обычно работает) независимо от AD.

Чтобы быть педантичным, если поддомен был поддоменом другого домена AD, доверительные отношения уже установлены, но я подозреваю, что вы настроили «поддомен» как новый домен в новом лесу. Хотя это неудобно, это должно сработать.

В любом случае, помимо AD, для аутентификации пользователя на веб-сайте с использованием клиентского сертификата серверу необходимо доверять клиентскому сертификату для аутентификации, и он должен иметь какой-то способ сопоставления субъекта сертификата с принципалом безопасности (например, пользователь). Ваше текущее решение делает это, и поэтому оно правильное.

При желании вы можете заставить пользователей (или их ИТ-отдел) отправлять вам экспортированные сертификаты в каком-либо формате (например, PEM) и информацию о том, какие сертификаты соответствуют каким учетным записям. Это может быть проще, а может и нет, и будет распространять точно такую ​​же информацию, которая распространяется подписанным S / MIME электронным письмом.