Я хотел бы аутентифицировать имя пользователя и пароли для своего приложения в операционной системе Windows с любой службой каталогов. Например, это может быть Microsoft Active Directory, Novell eDirecotry или SunOne. Я уже знаю, как сделать этот код изначально для Microsoft Active Direcotry с помощью C #. (Я полностью отказался от использования ADSI и создания низкоуровневого компонента com)
Я пытаюсь пройти аутентификацию с помощью Novel eDirecotory, я установил проект Mono. Внутри монопроекта они предоставляют Novell.Directory.ldap.dll. Код выглядит примерно так же, как и для Microsoft Active Directory. (http://www.novell.com/coolsolutions/feature/11204.html)
Для SunOne мне сказали использовать тот же код, что и для активного руководства, но строка подключения ldap немного отличается. (http://forums.asp.net/t/354314.aspx) (http://technet.microsoft.com/en-us/library/cc720649.aspx)
Чтобы усложнить мой проект, большинство клиентов используют «Учетную запись службы:», что означает, что мне нужно выполнить привязку с административным именем пользователя и паролем, прежде чем я смогу аутентифицировать обычное имя пользователя и пароль. Мои вопросы состоят из 2 частей.
1) Исходя из того, что я объяснил выше, является ли это правильным направлением, которое я должен собираться аутентифицировать для каждой отдельной службы директивы?
2) Я чувствую, что мне вообще не нужно делать ничего из этого кода. Я также считаю, что условие использования учетной записи службы совершенно не важно. Если все, что меня волнует, - это аутентификация имени пользователя и пароля на машине с Windows, зачем мне вообще использовать ldap? Я имею в виду, подумайте об этом. Когда вы входите в систему утром, вам не нужно предоставлять учетную запись службы только для входа в систему. Я могу легко аутентифицировать имя пользователя и пароль в приглашении DOS, используя функцию runas, и мне будет отказано или нет, и я смогу проанализировать текстовый файл. Я уверен, что есть другие способы передать имя пользователя и пароль операционной системе Windows, в которой я работаю, и сообщать мне, действительны ли имя пользователя и пароль для домена, в котором он находится. Я прав? Если да, то какие у вас есть предложения?
Майкл Эванчик www.MikeEvanchik.com