Мне нужно предложение о наличии AD DS или AD LDS для моей инфраструктуры.
У меня есть веб-сайт, на котором на данный момент нет возможности входа в систему для посетителей, сейчас мы разрабатываем новое приложение, чтобы посетители могли создать учетную запись на веб-сайте. лучший пример, который вы можете придумать, - это любой поставщик телекоммуникационных услуг, у которого есть свой веб-сайт, и теперь он создает средство входа в систему для своих клиентов, чтобы пользователи могли создать учетную запись и подписаться на услуги типа ebill.
Надеюсь, теперь ситуация прояснилась. Для этого конкретного приложения я намереваюсь иметь веб-сервер, сервер приложений, сервер БД, один SMTP-сервер и один сервер AD (для аутентификации пользователей, а также для сохранения профилей).
Мой вопрос здесь начинается с AD, здесь мне нужны AD DS или AD LDS, что мне нужно от AD, это
Это мой вопрос.
Как отметил Раджив в комментариях, Active Directory ЯВЛЯЕТСЯ сервер LDAP и многое другое, а AD LDS услуга "бесплатная" Роль Windows Server это предусмотрено для того, чтобы делать именно то, что он ищет. AD предоставляет множество дополнительных функций (репликация, Kerberos, федерация и т. Д.), Которые вам придется создавать самостоятельно с помощью решения Free / OSS, такого как OpenLDAP + postgres + kerberos. Есть и другие (в основном коммерческие) справочные службы которые имеют похожие способности.
Лицензирование, вероятно, не должно быть проблемой. У вас, вероятно, будет установлен AD, если ваше развертывание будет в основном основано на Windows (для учетных записей компьютеров, учетных записей администраторов и т. Д.), И это будет относительно мало (похоже, максимум на 5 клиентских лицензий). Любые «пользовательские» объекты, которые вы создаете в LDS для своих общедоступных пользователей, не будут учитываться в лицензиях для ваших учетных записей AD DS. Вы можете связаться Лицензирование Microsoft чтобы проверить это.
Использование AD LDS определенно имеет большие преимущества, предлагаемая вами установка может быть слишком маленький хотя бы реализовать некоторые из них.
Все это говорит ... Если у вас нет особого опыта работы с AD и у вас уже нет какой-либо конкретной инфраструктуры для его обработки, вы можете не увидеть большой пользы от следования по этому пути. В зависимости от размера вашего описанного развертывания вы почти наверняка можете использовать установку OSS, такую как LAMP + OpenLDAP, в зависимости от вашей зоны комфорта и требований вашего приложения.
Имейте в виду, что если вы занимаетесь каким-либо видом управления пользователями, то вам очень, ОЧЕНЬ жаль, если ваш подход просто «вставляет кучу имен пользователей и паролей в таблицу SQL». Управление пользователями - это сложный процесс, который уже решался бесчисленное количество раз. Обработка паролей - это то, чем вы просто не должны заниматься, если у вас еще нет большого опыта программирования, связанного с безопасностью. Пожалуйста, не катите свою!
Найдите подходящую коммерческую структуру или платформу OSS, которая уже была разработана для правильной обработки AAA *, что-то вроде OpenID, вероятно, не является ужасной идеей. Джеффа Этвуда блог (он управляет интернет сайт, возможно, вы слышали об этом ...) имеет ряд сообщений, в которых обсуждаются эти вопросы вокруг его работы над Переполнение стека и ServerFault.
В любом случае, я надеюсь, что это обсуждение поможет.
Вам действительно нужно изучать программирование, но вам не нужна ЛЮБАЯ реализация AD. Большинство веб-сайтов имеют собственную базу данных пользователей в некоторой базе данных (то есть SQL) и не полагаются на AD.