2014-12-21 6 views
1

Всякий раз, когда я пытаюсь сохранить UserPrincipal в Active Directory и тому UserPrincipalName или EmailAddress длиной более 20 символов метод UserPrincipal.Save выбросит следующее сообщение об ошибке:UserPrincipal UserPrincipalName или EmailAddress длина

'System.DirectoryServices.AccountManagement.PrincipalOperationException' A device attached to the system is not functioning active

Как сохранить emailaddress длиной более 20 символов?

+1

Вы можете показать фактический код, в котором вы используете объект «PrincipalContext». Я использую это все время и никогда не сталкиваюсь с проблемами, сохраняющими адрес электронной почты обратно в AD. Также у вас есть системный администратор, который управляет вашим AD – MethodMan

+0

Коды PrincipalContext и UserPrincipal хороши. Я могу сохранить без сучка и задоринки, за исключением случаев, когда пользователю более 20 символов в адрес электронной почты. У меня есть AD в vm. Это сервер 2008 года с функциональным уровнем 2003 года, который также увеличился в 2008 году. – jipje44

+0

, возможно, вам нужно проверить там ... что такое настройка длины по умолчанию, так же как и ваш метод вызова метода Trim(), возможно, это так просто, если в электронном письме есть дополнительные пробелы в конце Например, строка электронной почты знакома с Provisioning ..? вам нужно установить длину письма больше 20 и не более 255 символов. http://technet.microsoft.com/en-us/library/hh852478.aspx – MethodMan

ответ

2

Имя пользователяPrincipal.Name будет скопировано в UserPrincipal.SamAccountName всякий раз, когда не указано имя SamAccountName.

Когда UserPrincipal.Name было длиннее 20 символов, это могло бы вызвать исключение. В этом случае странный. Чтобы устранить эту проблему, мне пришлось установить SamAccountName вручную, прежде чем сохранять что-либо менее 20 символов.

Смежные вопросы