Ошибка входа пользователя nt authority анонимный вход

I have posted a related question few days back and provided its answer as well. I am facing a strange issue, I have 2 servers first one is dev server and second is QA When I execute the below lin...

I have posted a related question few days back and provided its answer as well.

I am facing a strange issue, I have 2 servers first one is dev server and second is QA

When I execute the below line on dev server it works fine, but when I execute it on QA, it gives me the error Login failed for user 'NT AUTHORITYANONYMOUS LOGON', as I posted in my previous question.

EXEC master.dbo.xp_cmdshell ‘sqlcmd -D db_name -S server_name -i sqlfile’ 

To resolve the above issue I have provided the username and pwd in the above query and it is working fine on both DEV and QA server. But to provide the username and pwd is not a nice approach as if we will change the server or pwd it directly impacts my query. So I want to execute the cmdshell command without using username and pwd on QA as well.

Can anyone please tell me what I am missing on QA. I have already provided the permissions to cmdshell on QA

ANY QUICK HELP

Community's user avatar

asked Apr 29, 2014 at 7:17

user3124690's user avatar

4

This is because the user the command runs as is NT AUTHORITYANONYMOUS LOGON, and this login does not have access to the DB.

Consider this: everything must run under a user context. Every process needs a to have a windows user owning it.

The SQLCMD you are running — who is the windows user running it? it isn’t you. It is the SQL Server service. (do some research on xp_cmdshell)

You first need to do some research on windows service accounts and understand what they are.

Then, some possible solutions:

A. Check what your QA SQL Server service is running as (in the logon tab in services.msc)
B. USe a linked server insteadm which can use your logon instead
C. You might also be able to use some kind of proxy (a windows user to override the SQL Service user just for this pupose) but I haven’t investigated that.

answered Apr 29, 2014 at 10:13

Nick.McDermaid's user avatar

Nick.McDermaidNick.McDermaid

17.7k6 gold badges55 silver badges89 bronze badges

I have posted a related question few days back and provided its answer as well.

I am facing a strange issue, I have 2 servers first one is dev server and second is QA

When I execute the below line on dev server it works fine, but when I execute it on QA, it gives me the error Login failed for user 'NT AUTHORITYANONYMOUS LOGON', as I posted in my previous question.

EXEC master.dbo.xp_cmdshell ‘sqlcmd -D db_name -S server_name -i sqlfile’ 

To resolve the above issue I have provided the username and pwd in the above query and it is working fine on both DEV and QA server. But to provide the username and pwd is not a nice approach as if we will change the server or pwd it directly impacts my query. So I want to execute the cmdshell command without using username and pwd on QA as well.

Can anyone please tell me what I am missing on QA. I have already provided the permissions to cmdshell on QA

ANY QUICK HELP

Community's user avatar

asked Apr 29, 2014 at 7:17

user3124690's user avatar

4

This is because the user the command runs as is NT AUTHORITYANONYMOUS LOGON, and this login does not have access to the DB.

Consider this: everything must run under a user context. Every process needs a to have a windows user owning it.

The SQLCMD you are running — who is the windows user running it? it isn’t you. It is the SQL Server service. (do some research on xp_cmdshell)

You first need to do some research on windows service accounts and understand what they are.

Then, some possible solutions:

A. Check what your QA SQL Server service is running as (in the logon tab in services.msc)
B. USe a linked server insteadm which can use your logon instead
C. You might also be able to use some kind of proxy (a windows user to override the SQL Service user just for this pupose) but I haven’t investigated that.

answered Apr 29, 2014 at 10:13

Nick.McDermaid's user avatar

Nick.McDermaidNick.McDermaid

17.7k6 gold badges55 silver badges89 bronze badges

Содержание

  1. MSSQLSERVER_18456
  2. Сведения
  3. Описание
  4. Рекомендуемые действия
  5. Ошибка входа для пользователя » » или ошибка входа для пользователя » «
  6. Сбой входа для пользователя NT AUTHORITYANONYMOUS LOGON
  7. Сбой входа для пользователя (пустой)
  8. «Сбой при входе в систему пользователя ‘(пусто)’»
  9. Дополнительные сведения об ошибке
  10. Более редкая возможная причина
  11. Примеры

MSSQLSERVER_18456

Область применения: SQL Server (все поддерживаемые версии)

Сведения

attribute Значение
Название продукта SQL Server
Идентификатор события 18456
Источник события MSSQLSERVER
Компонент SQLEngine
Символическое имя LOGON_FAILED
Текст сообщения Ошибка имени входа пользователя ‘%.*ls’.%.*ls

Описание

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

Рекомендуемые действия

В следующих примерах приведены некоторые распространенные сбои входа. Выберите точную ошибку, с которой вы столкнулись, чтобы устранить проблему:

Ошибка входа для пользователя » » или ошибка входа для пользователя » «

Если доменное имя не указано, проблема заключается в сбое попытки входа SQL Server. Если указано доменное имя, проблема заключается в сбое входа в учетную запись пользователя Windows. Сведения о потенциальных причинах и предлагаемых решениях см. в разделе:

Возможная причина Предлагаемое решение
Вы пытаетесь использовать проверку подлинности SQL Server, но для экземпляра SQL Server настроен режим проверки подлинности Windows. Убедитесь, что SQL Server настроен для использования SQL Server и режима проверки подлинности Windows. Вы можете просмотреть и изменить режим проверки подлинности для экземпляра SQL Server на странице Безопасность в разделе Свойства соответствующего экземпляра в SQL Server Management Studio (SSMS). Дополнительные сведения см. в разделе Изменение режима проверки подлинности сервера. Кроме того, можно изменить приложение, чтобы использовать режим проверки подлинности Windows для подключения к SQL Server.
Примечание. Для этого сценария в журнале ошибок SQL Server отображается следующее сообщение:
Login failed for user ‘ ‘. Reason: An attempt to login using SQL authentication failed. Server is configured for Windows authentication only.
Имя входа не существует в экземпляре SQL Server, к которому вы пытаетесь подключиться. Убедитесь, что имя входа SQL Server существует и что вы правильно написали его. Если имя входа не существует, создайте его. Если она присутствует, но написана с ошибкой, исправьте это в строке подключения приложения. Журнал ошибок SQL Server будет содержать одно из следующих сообщений:
— Login failed for user ‘username’. Reason: Could not find a login matching the name provided.
— Login failed for user ‘Domainusername’. Reason: Could not find a login matching the name provided. Это может быть распространенной проблемой, если вы развертываете приложение, использующее сервер DEV или QA, в рабочей среде и не можете обновить строку подключения. Чтобы устранить эту проблему, убедитесь, что вы подключаетесь к соответствующему серверу. В противном случае исправьте строку подключения. Если это так, предоставьте для входа доступ к SQL Server. Или, если это имя входа Windows, предоставьте доступ напрямую или добавьте его в локальную или доменную группу, которая может подключаться к серверу базы данных. Дополнительные сведения см. в разделе Создание имени входа.
Вы используете проверку подлинности SQL Server, но пароль, указанный для входа SQL Server, неверный. Чтобы подтвердить причину, проверьте журнал ошибок SQL на наличие таких сообщений, как «Причина: пароль не совпадал с данным для имени входа«. Чтобы устранить эту проблему, используйте правильный пароль в приложении или другую учетную запись, если вы не можете запомнить пароль. Кроме того, обратитесь к администратору SQL Server, чтобы сбросить пароль для учетной записи.
Если приложение SQL Server службы Integration Services (SSIS), для задания может быть несколько уровней файла конфигурации, что может переопределить параметры диспетчер подключений для пакета.
Если приложение было создано вашей компанией и строка подключения создается программным способом, обратитесь к команде разработчиков, чтобы устранить проблему. В качестве временного решения жестко закодируйте строку подключения и проверьте ее. Используйте UDL-файл или скрипт, чтобы подтвердить возможность подключения с помощью жестко заданной строки подключения.
Неправильное имя сервера. Убедитесь, что вы подключаетесь к правильному серверу.
Вы пытаетесь подключиться с помощью проверка подлинности Windows но вошли в неправильный домен. Убедитесь, что вы правильно вошли в правильный домен. В сообщении об ошибке обычно отображается доменное имя.
Вы не запускаете приложение (например, SSMS) от имени администратора. Если вы пытаетесь подключиться с помощью учетных данных администратора, запустите приложение с помощью параметра Запуск от имени администратора . После подключения добавьте пользователя Windows в качестве отдельного имени входа.
Имя входа удаляется после миграции на пользователя автономной базы данных. Если ядро СУБД поддерживает автономные базы данных, убедитесь, что имя входа не было удалено после миграции на пользователя автономной базы данных. Дополнительные сведения см. в разделе Проверка подлинности автономной базы данных: введение.
База данных входа по умолчанию находится в автономном режиме или недоступна иным образом. Обратитесь к администратору SQL Server и устраните проблемы, связанные с доступностью базы данных. Если имя входа имеет разрешения на доступ к другим базам данных на сервере и вам не требуется доступ к текущей базе данных по умолчанию в приложении, используйте один из следующих вариантов:
— Попросите администратора изменить базу данных по умолчанию для входа с помощью инструкции ALTER LOGIN или SSMS.
— явно укажите другую базу данных в строке подключения приложения. Или если вы используете SSMS, перейдите на вкладку Свойства подключения , чтобы указать базу данных, доступную в данный момент.Такие приложения, как SSMS, могут отображать сообщение об ошибке следующего вида:
Cannot open user default database. Login failed.
Login failed for user . (Microsoft SQL Server, Error: 4064)
SQL Server errorlog будет содержать следующее сообщение об ошибке:
Login failed for user ‘ ‘. Reason: Failed to open the database ‘ ‘ specified in the login properties [CLIENT: ]
Дополнительные сведения см. в разделе MSSQLSERVER_4064.
База данных, явно указанная в строке подключения или в SSMS, неправильно написана, отключена или недоступна иным образом. — Исправление имени базы данных в строке подключения.
— Если имя базы данных верно, обратитесь к администратору SQL Server и устраните проблемы, связанные с доступностью базы данных. Проверьте, находится ли база данных в автономном режиме, не восстановлена и т. д.
— Если имя входа сопоставлено с пользователями с разрешениями на другие базы данных на сервере и вам не требуется доступ к текущей настроенной базе данных в приложении, укажите другую базу данных в строке подключения. Если вы подключаетесь с помощью SSMS, используйте вкладку Свойства подключения , чтобы указать базу данных, доступную в данный момент.
SQL Server errorlog будет содержать следующее сообщение об ошибке:
Login failed for user . Reason: Failed to open the explicitly specified database ‘dbname’. [CLIENT: ]
Примечание. Если база данных входа по умолчанию доступна, SQL Server позволяет установить подключение. Дополнительные сведения см. в разделе MSSQLSERVER_4064.
У пользователя нет разрешений на доступ к запрашиваемой базе данных. — Попробуйте подключиться от имени другого пользователя с правами sysadmin, чтобы узнать, можно ли установить подключение.
— предоставьте для входа доступ к базе данных, создав соответствующего пользователя (например, CREATE USER [ ] FOR LOGIN [UserName] ).

Кроме того, ознакомьтесь с обширным списком кодов ошибок на странице Устранение ошибки 18456.

Дополнительные сведения об устранении неполадок см. в статье Устранение неполадок с подключением клиента ИЛИ сервера SQL.

Существует по крайней мере четыре сценария для этой проблемы. В следующей таблице изучите каждую применимую потенциальную причину и используйте соответствующее решение. В примечании под таблицей приведено объяснение термина двойной прыжок.

Возможная причина Предлагаемые решения
Вы пытаетесь передать учетные данные NT LAN Manager (NTLM) из одной службы в другую службу на том же компьютере (например, из IIS на СЕРВЕР SQL Server), но в процессе возникает сбой. Добавьте записи реестра DisableLoopbackCheck или BackConnectionHostNames .
Существуют сценарии двойного прыжка (делегирование ограничений) на нескольких компьютерах. Эта ошибка может возникнуть, если подключение Kerberos завершается сбоем из-за проблем с именами субъектов-служб (SPN). Запустите SQLCheck на каждом SQL Server и веб-сервере. Воспользуйтесь руководствами по устранению неполадок: проблема с делегированием учетных данных 0600 и 0650 SQL Server проблемы с делегированием связанного сервера.
Если двойной прыжок (делегирование ограничений) не используется, скорее всего, существуют дублирующиеся имена субъектов-служб, и клиент работает от имени LocalSystem или другой учетной записи компьютера, которая получает учетные данные NTLM вместо учетных данных Kerberos. Используйте SQLCheck или Setspn.exe для диагностики и устранения проблем, связанных с spN. Также ознакомьтесь с обзором Configuration Manager Kerberos для SQL Server.
Возможно, настроена политика локальной безопасности Windows, чтобы запретить использование учетной записи компьютера для запросов удаленной проверки подлинности. Перейдите к локальной политике> безопасностиЛокальные политики>Параметры> безопасностиБезопасность сети: разрешить локальной системе использовать удостоверение компьютера для NTLM, выберите параметр Включено, если параметр отключен, а затем нажмите кнопку ОК.
Примечание. Как описано на вкладке Объяснение , эта политика включена в Windows 7 и более поздних версиях по умолчанию.
Краткое возникновение этой проблемы при использовании ограниченного делегирования может указывать на наличие просроченного билета, который не может быть продлен на среднем уровне. Это ожидаемое поведение в сценарии связанного сервера или в любом приложении, которое удерживает сеанс входа более 10 часов. Измените параметры делегирования на сервере среднего уровня с «Доверять этому компьютеру для делегирования только для указанных служб» — используйте только Kerberos, чтобы доверять этому компьютеру делегирование только указанным службам . Используйте любой протокол. Дополнительные сведения см. в статье Периодический анонимный вход SQL Server двойного прыжка связанного сервера.

Двойной прыжок обычно включает делегирование учетных данных пользователя на нескольких удаленных компьютерах. Например, предположим, что у вас есть экземпляр SQL Server с именем SQL1, на котором вы создали связанный сервер для удаленного SQL Server с именем SQL2. В конфигурации безопасности связанного сервера вы выбрали параметр Быть сделано с использованием текущего контекста безопасности имени входа. При использовании этой конфигурации при выполнении запроса связанного сервера в SQL1 с удаленного клиентского компьютера с именем Client1 учетные данные Windows сначала должны будут переходить с Client1 на SQL1 , а затем из SQL1 в SQL2 (поэтому это называется двойным прыжком). Дополнительные сведения см. в разделе Общие сведения о двойном прыжке Kerberos и обзоре ограниченного делегирования Kerberos.

Сбой входа для пользователя (пустой)

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

Пустая строка означает, что SQL Server пытались передать учетные данные службе подсистемы локального центра безопасности (LSASS), но не смогли из-за какой-то проблемы. Либо LSASS был недоступен, либо не удалось связаться с контроллером домена.

Проверьте журналы событий на клиенте и сервере на наличие сообщений, связанных с сетью или Active Directory, которые были зарегистрированы во время сбоя. Если вы найдете их, обратитесь к администратору домена, чтобы устранить проблемы.

«Сбой при входе в систему пользователя ‘(пусто)’»

Указание «null» может означать, что LSASS не может расшифровать маркер безопасности с помощью учетных данных SQL Server учетной записи службы. Основная причина этого условия заключается в том, что имя субъекта-службы связано с неправильной учетной записью.

Чтобы устранить проблему, сделайте следующее:

Используйте SQLCheck или Setspn.exe для диагностики и устранения проблем, связанных с spN.

Используйте sqlCheck , чтобы проверить, является ли учетная запись службы SQL доверенной для делегирования. Если в выходных данных указано, что учетная запись не является доверенной для делегирования, обратитесь к администратору Active Directory, чтобы включить делегирование для учетной записи.

Диагностика и устранение проблем с разрешением имен в системе доменных имен (DNS). Пример:

Связь с IP-адресом с помощью скриптов PowerShell:

  • ping -a (используется -4 специально для IPv4 и -6 IPv6)
  • ping -a

Используйте NSLookup , чтобы ввести имя локального и удаленного компьютера и IP-адрес несколько раз.

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

Убедитесь, что брандмауэры или другие сетевые устройства не блокируют подключение клиента к контроллеру домена. Имена субъектов-служб хранятся в Active Directory. Если клиенты не могут взаимодействовать с каталогом, подключение не будет выполнено.

Дополнительные сведения об ошибке

В целях повышения безопасности сообщение об ошибке, возвращаемое клиенту, намеренно скрывает природу ошибки проверки подлинности. Однако в журнале ошибок SQL Server для соответствующей ошибки указано состояние, которое можно сопоставить с условиями сбоя проверки подлинности. Сравните состояние ошибки со следующим списком, чтобы определить причину ошибки входа.

Состояние Описание
1 Сведения об ошибке недоступны. Это состояние обычно означает, что у вас нет разрешения на получение сведений об ошибке. За дополнительными сведениями обратитесь к администратору SQL Server.
2 Недопустимый идентификатор пользователя.
5 Недопустимый идентификатор пользователя.
6 Предпринята попытка использовать имя входа Windows при использовании проверки подлинности SQL Server.
7 Имя входа отключено, и пароль неверный.
8 Пароль неверный.
9 Недопустимый пароль.
11 Допустимое имя входа, но доступ к серверу не удался. Одной из возможных причин этой ошибки является то, что пользователь Windows имеет доступ к SQL Server в качестве члена группы локальных администраторов, но Windows не предоставляет учетные данные администратора. Чтобы установить соединение, запустите программу подключения от имени администратора, а затем добавьте имя пользователя Windows в SQL Server в качестве определенного имени входа.|
12 Допустимое имя входа, но доступ к серверу не удался.
18 Пароль должен быть изменен.
38, 46 Не удалось найти базу данных, запрошенную пользователем.
58 Если SQL Server настроен на использование только проверки подлинности Windows, а клиент пытается выполнить вход с использованием проверки подлинности SQL. Другая причина заключается в том, что идентификаторы безопасности не совпадают.
102–111 Ошибка AAD.
122–124 Сбой из-за пустого имени пользователя или пароля.
126 База данных, запрашиваемая пользователем, не существует.
132–133 Ошибка AAD.

Есть другие коды ошибок, которые означают непредвиденные внутренние ошибки обработки.

Более редкая возможная причина

Причина ошибки. Попытка входа с помощью проверки подлинности SQL завершилась сбоем. Сервер настроен только для проверка подлинности Windows. Его можно вернуть в следующих ситуациях.

Если сервер настроен для проверки подлинности в смешанном режиме, а подключение ODBC использует протокол TCP, а в соединении явно не указано, что соединение должно использовать доверенное соединение.

Если SQL Server настроен для проверки подлинности в смешанном режиме, а подключение ODBC использует именованные каналы, а учетные данные, используемые клиентом для открытия именованного канала, используются для автоматического олицетворения пользователя, а строка подключения явно не указывает использование доверенной проверки подлинности.

Чтобы решить эту проблему, включите в строку подключения параметр TRUSTED_CONNECTION = TRUE.

Примеры

В этом примере состояние ошибки проверки подлинности равно 8. Это означает, что пароль неверный.

Дата Источник Сообщение
2007-12-05 20:12:56.34 Вход в систему Ошибка: 18456, серьезность: 14, состояние: 8.
2007-12-05 20:12:56.34 Вход в систему Сбой входа для пользователя » «. [КЛИЕНТ: ]

Если SQL Server устанавливается в режиме аутентификации Windows, а затем переключается на аутентификацию SQL Server и Windows, то имя входа sa будет по умолчанию отключено. Это приводит к ошибке с состоянием 7: «Ошибка входа для пользователя sa». Чтобы включить имя для входа sa, выполните инструкции из статьи об изменении режима проверки подлинности сервера.

Источник

Доброго дня.

Исходное, два отдельных сервера AD+SQL и Sharepoint. Создан внешний список. Я могу его смотреть и менять локально на сервере Sharepoint, НО посмотреть или изменить на другом ПК или на сервере AD+SQL нельзя. Понимаю, что служба SP на Sharepoint сервере запущена не
от того пользователя. Перебрал все службы SP, пробоваль запускать даже от имени администратора домена, результат =0

Смотрел рекомендации здесь:

http://social.technet.microsoft.com/Forums/ru-RU/sharepointru/thread/c60574da-3ae2-4f79-ab33-e158f92165e8

http://social.technet.microsoft.com/Forums/ru-RU/sharepointru/thread/9bc2508c-78be-4de8-97f5-ef3bf9c06c5a

http://blogs.msdn.com/b/sridhara/archive/2010/01/27/setting-up-bcs-with-secure-store-application-impersonation.aspx

и другие

Ошибка по ссылке:

Ошибка входа пользователя "NT AUTHORITYАНОНИМНЫЙ ВХОД". Edit in Dashboard Designer/_layouts/images/ppsEditDesigner.png{SiteUrl}/_layouts/ppswebparts/DesignerRedirect.aspx?Operation=OpenItem&ItemLocation={ItemUrl}0x00x0ContentType0x0101004C06BE72B56941358D9BD0B31603EC4D230View in Web Browser/portal_en/_layouts/VisioWebAccess/VisioWebAccess.aspx?listguid={ListId}&itemid={ItemId}&DefaultItemOpen=10x00x1FileTypevdw255Manage Subscriptions/_layouts/images/ReportServer/Manage_Subscription.gif/portal_en/_layouts/ReportServer/ManageSubscriptions.aspx?list={ListId}&ID={ItemId}0x800x0FileTyperdl350Manage Data Sources/portal_en/_layouts/ReportServer/DataSourceList.aspx?list={ListId}&ID={ItemId}0x00x20FileTyperdl351Manage Shared Datasets/portal_en/_layouts/ReportServer/DatasetList.aspx?list={ListId}&ID={ItemId}0x00x20FileTyperdl352Manage Parameters/portal_en/_layouts/ReportServer/ParameterList.aspx?list={ListId}&ID={ItemId}0x00x4FileTyperdl353Manage Processing Options/portal_en/_layouts/ReportServer/ReportExecution.aspx?list={ListId}&ID={ItemId}0x00x4FileTyperdl354Manage Cache Refresh Plans/portal_en/_layouts/ReportServer/CacheRefreshPlanList.aspx?list={ListId}&ID={ItemId}0x00x4FileTyperdl355View Report History/portal_en/_layouts/ReportServer/ReportHistory.aspx?list={ListId}&ID={ItemId}0x00x40FileTyperdl356View Dependent Items/portal_en/_layouts/ReportServer/DependentItems.aspx?list={ListId}&ID={ItemId}0x00x4FileTypersds350Edit Data Source Definition/portal_en/_layouts/ReportServer/SharedDataSource.aspx?list={ListId}&ID={ItemId}0x00x4FileTypersds351View Dependent Items/portal_en/_layouts/ReportServer/DependentItems.aspx?list={ListId}&ID={ItemId}0x00x4FileTypesmdl350Manage Clickthrough Reports/portal_en/_layouts/ReportServer/ModelClickThrough.aspx?list={ListId}&ID={ItemId}0x00x4FileTypesmdl352Manage Model Item Security/portal_en/_layouts/ReportServer/ModelItemSecurity.aspx?list={ListId}&ID={ItemId}0x00x2000000FileTypesmdl353Regenerate Model/portal_en/_layouts/ReportServer/GenerateModel.aspx?list={ListId}&ID={ItemId}0x00x4FileTypesmdl354Manage Data Sources/portal_en/_layouts/ReportServer/DataSourceList.aspx?list={ListId}&ID={ItemId}0x00x20FileTypesmdl351Load in Report Builder/portal_en/_layouts/ReportServer/RSAction.aspx?RSAction=ReportBuilderModelContext&list={ListId}&ID={ItemId}0x00x2FileTypesmdl250Edit in Report Builder/_layouts/images/ReportServer/EditReport.gif/portal_en/_layouts/ReportServer/RSAction.aspx?RSAction=ReportBuilderReportContext&list={ListId}&ID={ItemId}0x00x4FileTyperdl250Edit in Report Builder/portal_en/_layouts/ReportServer/RSAction.aspx?RSAction=ReportBuilderDatasetContext&list={ListId}&ID={ItemId}0x00x4FileTypersd250Manage Caching Options/portal_en/_layouts/ReportServer/DatasetCachingOptions.aspx?list={ListId}&ID={ItemId}0x00x4FileTypersd350Manage Cache Refresh Plans/portal_en/_layouts/ReportServer/CacheRefreshPlanList.aspx?list={ListId}&ID={ItemId}&IsDataset=true0x00x4FileTypersd351Manage Data Sources/portal_en/_layouts/ReportServer/DataSourceList.aspx?list={ListId}&ID={ItemId}0x00x20FileTypersd352View Dependent Items/portal_en/_layouts/ReportServer/DependentItems.aspx?list={ListId}&ID={ItemId}0x00x4FileTypersd353Edit in Browser/portal_en/_layouts/xlviewer.aspx?id={ItemUrl}&DefaultItemOpen=1&Edit=10x00x25FileTypexlsx256Edit in Browser/portal_en/_layouts/xlviewer.aspx?id={ItemUrl}&DefaultItemOpen=1&Edit=10x00x25FileTypexlsm256Edit in Browser/portal_en/_layouts/xlviewer.aspx?id={ItemUrl}&DefaultItemOpen=1&Edit=10x00x25FileTypexlsb256Edit in Dashboard Designer/_layouts/images/ppsEditDesigner.png{SiteUrl}/_layouts/ppswebparts/DesignerRedirect.aspx?Operation=OpenItem&ItemLocation={ItemUrl}&ItemType=Dashboard0x00x0ContentType0x01002DDC53CB1D5F4520BE0568558051291F06230Edit in Dashboard Designer/_layouts/images/ppsEditDesigner.png{SiteUrl}/_layouts/ppswebparts/DesignerRedirect.aspx?Operation=OpenItem&ItemLocation={ItemUrl}&ItemType=Filter0x00x0ContentType0x01002DDC53CB1D5F4520BE0568558051291F05230Edit in Dashboard Designer/_layouts/images/ppsEditDesigner.png{SiteUrl}/_layouts/ppswebparts/DesignerRedirect.aspx?Operation=OpenItem&ItemLocation={ItemUrl}&ItemType=Indicator0x00x0ContentType0x01002DDC53CB1D5F4520BE0568558051291F03230Edit in Dashboard Designer/_layouts/images/ppsEditDesigner.png{SiteUrl}/_layouts/ppswebparts/DesignerRedirect.aspx?Operation=OpenItem&ItemLocation={ItemUrl}&ItemType=Kpi0x00x0ContentType0x01002DDC53CB1D5F4520BE0568558051291F01230Display Report/_layouts/images/ppsEditDesigner.pngjavascript:window.open('{SiteUrl}/_layouts/ppswebparts/ReportViewPreview.aspx?SiteLocation={SiteUrl}&ItemLocation={ItemUrl}') 0x00x0ContentType0x01002DDC53CB1D5F4520BE0568558051291F04231Edit in Dashboard Designer/_layouts/images/ppsEditDesigner.png{SiteUrl}/_layouts/ppswebparts/DesignerRedirect.aspx?Operation=OpenItem&ItemLocation={ItemUrl}&ItemType=ReportView0x00x0ContentType0x01002DDC53CB1D5F4520BE0568558051291F04230Display Scorecard/_layouts/images/ppsEditDesigner.pngjavascript:window.open('{SiteUrl}/_layouts/ppswebparts/ScorecardPreview.aspx?SiteLocation={SiteUrl}&ItemLocation={ItemUrl}')0x00x0ContentType0x01002DDC53CB1D5F4520BE0568558051291F02231Edit in Dashboard Designer/_layouts/images/ppsEditDesigner.png{SiteUrl}/_layouts/ppswebparts/DesignerRedirect.aspx?Operation=OpenItem&ItemLocation={ItemUrl}&ItemType=Scorecard0x00x0ContentType0x01002DDC53CB1D5F4520BE0568558051291F02230Edit in Browser/portal_en/_layouts/PowerPoint.aspx?PowerPointView=EditView&PresentationId={ItemUrl}&source={Source}0x00x4FileTypepptx256Edit in Browser/portal_en/_layouts/PowerPoint.aspx?PowerPointView=EditView&PresentationId={ItemUrl}&source={Source}0x00x4FileTypeppsx256View in Browser{SiteUrl}/_layouts/WordViewer.aspx?id={ItemUrl}&source={Source}0x00x1FileTypedocx255Edit in Browser{SiteUrl}/_layouts/WordEditor.aspx?id={ItemUrl}&source={Source}0x00x4FileTypedocx255View in Browser{SiteUrl}/_layouts/WordViewer.aspx?id={ItemUrl}&source={Source}0x00x1FileTypedoc255View in Browser{SiteUrl}/_layouts/WordViewer.aspx?id={ItemUrl}&source={Source}0x00x1FileTypedotx255View in Browser{SiteUrl}/_layouts/WordViewer.aspx?id={ItemUrl}&source={Source}0x00x1FileTypedot255View in Browser{SiteUrl}/_layouts/WordViewer.aspx?id={ItemUrl}&source={Source}0x00x1FileTypedotm255View in Browser{SiteUrl}/_layouts/WordViewer.aspx?id={ItemUrl}&source={Source}0x00x1FileTypedocm255Edit in Browser{SiteUrl}/_layouts/WordEditor.aspx?id={ItemUrl}&source={Source}0x00x1FileTypedocm255View in Browser{SiteUrl}/_layouts/OneNote.aspx?id={ItemUrl}&Edit=0&source={Source}0x00x1FileTypeone255Edit in Browser{SiteUrl}/_layouts/OneNote.aspx?id={ItemUrl}&Edit=1&source={Source}0x00x4FileTypeone255View in Browser{SiteUrl}/_layouts/OneNote.aspx?id={ItemUrl}&Edit=0&source={Source}0x00x1ProgIdOneNote.Notebook252Edit in Browser{SiteUrl}/_layouts/OneNote.aspx?id={ItemUrl}&Edit=1&source={Source}0x00x4ProgIdOneNote.Notebook254Compliance Detailsjavascript:commonShowModalDialog('{SiteUrl}/_layouts/itemexpiration.aspx?ID={ItemId}&List={ListId}', 'center:1;dialogHeight:500px;dialogWidth:500px;resizable:yes;status:no;location:no;menubar:no;help:no', function GotoPageAfterClose(pageid){if(pageid == 'hold') {STSNavigate(unescape(decodeURI('{SiteUrl}'))+'/_layouts/hold.aspx?ID={ItemId}&List={ListId}'); return false;} if(pageid == 'audit') {STSNavigate(unescape(decodeURI('{SiteUrl}'))+'/_layouts/Reporting.aspx?Category=Auditing&backtype=item&ID={ItemId}&List={ListId}'); return false;} if(pageid == 'config') {STSNavigate(unescape(decodeURI('{SiteUrl}'))+'/_layouts/expirationconfig.aspx?ID={ItemId}&List={ListId}'); return false;}}, null); return false;0x00x1ContentType0x01898Edit in Browser/_layouts/images/icxddoc.gif/portal_en/_layouts/formserver.aspx?XsnLocation={ItemUrl}&OpenIn=Browser&Source={Source}0x00x1FileTypexsn255Edit in Browser/_layouts/images/icxddoc.gif/portal_en/_layouts/formserver.aspx?XmlLocation={ItemUrl}&OpenIn=Browser&Source={Source}0x00x1ProgIdInfoPath.Document255Edit in Browser/_layouts/images/icxddoc.gif/portal_en/_layouts/formserver.aspx?XmlLocation={ItemUrl}&OpenIn=Browser&Source={Source}0x00x1ProgIdInfoPath.Document.2255Edit in Browser/_layouts/images/icxddoc.gif/portal_en/_layouts/formserver.aspx?XmlLocation={ItemUrl}&OpenIn=Browser&Source={Source}0x00x1ProgIdInfoPath.Document.3255Edit in Browser/_layouts/images/icxddoc.gif/portal_en/_layouts/formserver.aspx?XmlLocation={ItemUrl}&OpenIn=Browser&Source={Source}0x00x1ProgIdInfoPath.Document.4255View in Browser/portal_en/_layouts/xlviewer.aspx?id={ItemUrl}&DefaultItemOpen=10x00x1FileTypexlsx255View in Browser/portal_en/_layouts/xlviewer.aspx?id={ItemUrl}&DefaultItemOpen=10x00x1FileTypexlsm255View in Browser/portal_en/_layouts/xlviewer.aspx?id={ItemUrl}&DefaultItemOpen=10x00x1FileTypexlsb255View in Browser/portal_en/_layouts/PowerPoint.aspx?PowerPointView=ReadingView&PresentationId={ItemUrl}&source={Source}portalin Browser/portal_en/_layouts/PowerPoint.aspx?PowerPointView=ReadingView&PresentationId={ItemUrl}&source={Source}0x00x1FileTypeppt255View in Browser/portal_en/_layouts/PowerPoint.aspx?PowerPointView=ReadingView&PresentationId={ItemUrl}&source={Source}0x00x1FileTypepptm255View in Browser/portal_en/_layouts/PowerPoint.aspx?PowerPointView=ReadingView&PresentationId={ItemUrl}&source={Source}0x00x1FileTypeppsx255View in Browser/portal_en/_layouts/PowerPoint.aspx?PowerPointView=ReadingView&PresentationId={ItemUrl}&source={Source}0x00x1FileTypeppsm255View in Browser/portal_en/_layouts/PowerPoint.aspx?PowerPointView=ReadingView&PresentationId={ItemUrl}&source={Source}0x00x1FileTypepps255View in Browser/portal_en/_layouts/PowerPoint.aspx?PowerPointView=ReadingView&PresentationId={ItemUrl}&source={Source}0x00x1FileTypepotx255View in Browser/portal_en/_layouts/PowerPoint.aspx?PowerPointView=ReadingView&PresentationId={ItemUrl}&source={Source}0x00x1FileTypepotm255View in Browser/portal_en/_layouts/PowerPoint.aspx?PowerPointView=ReadingView&PresentationId={ItemUrl}&source={Source}0x00x1FileTypepot255Document Set Version Historyjavascript:SP.UI.ModalDialog.ShowPopupDialog('{SiteUrl}/_layouts/DocSetVersions.aspx?List={ListId}&ID={ItemId}')0x00x0ContentType0x0120D520330Send To other locationjavascript:GoToPage('{SiteUrl}/_layouts/docsetsend.aspx?List={ListId}&ID={ItemId}')0


приложение, которое работает без проблем (и не было никакой активной разработки сделано на нем около 6 месяцев или около того) недавно начал не удается подключиться к базе данных. Администраторы операций не могут сказать, что могло бы измениться, что вызвало бы проблему.

клиентское приложение использует жестко закодированную строку подключения с Integrated Security=True, но когда приложения пытаются создать соединение с базой данных, оно выдает исключение SQLException со словами » ошибка входа для пользователя ‘NT AUTHORITYANONYMOUS LOGON».

Я могу войти в базу данных через Management Studio на этой учетной записи без проблем. Все вещи, которые я видел для этой проблемы, предназначены для ASP.NET проекты, и это, по-видимому, «проблема двойного прыжка», которая является клиентским приложением чертовски хорошо, лучше не быть проблемой. Любая помощь будет очень признательна.

Edit

клиентская машина и серверная машина, а также учетные записи пользователей находятся на одном и том же домен.
Это происходит, когда Брандмауэр Windows выключен.

ведущая теория:
Сервер был перезапущен около недели назад, и не удалось зарегистрировать имя участника-службы (SPN). Сбой регистрации имени участника-службы может привести к возвращению встроенной проверки подлинности в NTLM вместо Kerberos.


949  


5  

5 ответов:

Если ваша проблема связана с серверами, вы должны смотреть на несколько вещей.

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

во-вторых, ваша учетная запись(ы) службы должна быть доверенной для делегирования. Поскольку вы недавно изменили свою учетную запись службы, я подозреваю, что это виновник. (http://technet.microsoft.com/en-us/library/cc739474 (v=ws.10).aspx)

вы упомянули, что у вас могут быть некоторые проблемы с SPN, поэтому обязательно установите SPN для обеих конечных точек, иначе вы не сможете увидеть вкладку делегирование в AD. Также убедитесь, что вы находитесь в расширенном виде в «Active Directory-пользователи и компьютеры.»

Если вы все еще не видите вкладку делегирование, даже после исправления SPN, убедитесь, что ваш домен не в режиме 2000. Если это так, вы можете «повышение уровня функционирования домена.»

теперь вы можете отметить учетную запись как доверенную для делегирования:

в области сведений щелкните правой кнопкой мыши пользователя, которому вы хотите доверять
делегирование и нажмите кнопку Свойства.

перейдите на вкладку делегирование, выберите Учетная запись доверена для делегирования
установите флажок и нажмите кнопку ОК.

наконец, Вам также нужно будет установить все машины как доверенные для делегирования.

Как только вы это сделаете, снова подключитесь к sql server и протестируйте свои любимые серверы. Они должны работать.

во-первых: моя проблема не такая же, как у вас, но этот пост-первое, что появляется в google для Login failed for user 'NT AUTHORITYANONYMOUS LOGON' ошибка в то время, когда я написал это. Решение может быть полезно для людей, ищущих эту ошибку, поскольку я не нашел это конкретное решение в любом месте в интернете.

в моем случае я использовал Xampp / Apache и PHP sqlsrv, чтобы попытаться подключиться к базе данных MSSQL с помощью проверки подлинности Windows и получил Login failed for user 'NT AUTHORITYANONYMOUS LOGON' ошибка, которую вы описали. Я, наконец, нашел проблему быть самой службой Apache, работающей под пользователем «LOCAL SERVICE»вместо учетной записи Пользователя, в которую я вошел. Другими словами, он буквально использовал анонимный аккаунт. Было принято решение ехать в сервис.msc, щелкните правой кнопкой мыши службу Apache, перейдите в Свойства, перейдите на вкладку Вход в систему и введите учетные данные для пользователя. Это соответствует вашей проблеме, связанной с SPN, поскольку ваши SPN настроены для запуска от определенного пользователя в домене. Поэтому, если правильное имя участника-службы не работает, окна аутентификация будет по умолчанию для неправильного пользователя (вероятно, пользователя «локальной службы») и даст вам анонимную ошибку.

вот где это отличается от вашей проблемы. Ни один из компьютеров в локальной сети не находится в домене, они находятся только в рабочей группе. Чтобы использовать проверку подлинности Windows с рабочей группой, как компьютер с сервером (в моем случае MSSQL Server), так и компьютер со службой запроса данных (в моем случае Apache) должны иметь пользователя с одинаковым именем и идентичный пароль.

подведем итоги:Login failed for user 'NT AUTHORITYANONYMOUS LOGON' ошибка в обоих наших случаях, по-видимому, вызвана не запущенной службой и/или не на правильном пользователе. Обеспечение правильного SPN или другой службы выполняется и под правильным пользователем должно решить анонимную часть проблемы.

Я думаю, что должно было быть какое-то изменение в группе объявлений, используемой для аутентификации в базе данных. Добавить название веб-сервера, в форматесервера домен$, в группе объявлений, которые имели доступ к базе данных. Кроме того, также попробуйте установить веб.config атрибут «false». Надеюсь, это поможет.

EDIT: идя по тому, что вы редактировали.. это, скорее всего, указывает на то, что протокол проверки подлинности вашего SQL Server откатился от Kerberos(по умолчанию, если вы использовали встроенную проверку подлинности Windows) для NTLM. Для использования Kerberos имя участника-службы (SPN) должно быть зарегистрировано в службе каталогов Active Directory. Имя участника — службы (SPN) — это уникальные идентификаторы служб, запущенных на серверах. Для каждой службы, которая будет использовать проверку подлинности Kerberos, необходимо задать имя участника-службы, чтобы клиенты могли идентифицировать службу в сети. Он зарегистрирован в Active Directory под учетной записью компьютера или учетной записью пользователя. Хотя Протокол Kerberos используется по умолчанию, если по умолчанию происходит сбой, процесс проверки подлинности будет опробован с помощью NTLM.

в вашем сценарии клиент должен устанавливать tcp-соединение, и он, скорее всего, работает под учетной записью LocalSystem, и для экземпляра SQL не зарегистрировано SPN, следовательно, используется NTLM, однако учетная запись LocalSystem наследует от системного контекста вместо истинного пользовательского контекста, таким образом, не удалось выполнить «анонимный вход».

чтобы решить эту проблему, спросите свой домен администратор вручную зарегистрировать имя участника-службы, если SQL Server работает под учетной записью пользователя домена.
Следующие ссылки могут помочь вам more:
http://blogs.msdn.com/b/sql_protocols/archive/2005/10/12/479871.aspx
http://support.microsoft.com/kb/909801

У одного из моих заданий SQL была такая же проблема. Он включал в себя загрузку данных с одного сервера на другой. Ошибка произошла, потому что я использовал учетную запись службы агента sql Server. Я создал учетные данные, используя идентификатор пользователя (который использует проверку подлинности окна), общий для всех серверов. Затем создал прокси-сервер, используя эти учетные данные. Использовал прокси-сервер в задании sql server, и он работает нормально.

вам, вероятно, просто нужно указать имя пользователя и пароль в вашей connectionstring и установить Integrated Security=false

   shevchya

03.11.16 — 10:42

Добрый день.

Может знает как вылечить. Есть база ms sql, в которой заведен пользователь с доменной аутентификацией.

Подключаюсь строкой: DRIVER={SQL Server};SERVER=****;DATABASE=***;Trusted_Connection=Yes;

При подключении вылезает ошибка: «Ошибка входа пользователя NT AUTHORITYАНОНИМНЫЙ ВХОД».

В локальной базе естественно проблем нет. Может знает кто как вылечить?

   Ёпрст

1 — 03.11.16 — 10:44

в строке подключения указывай юзверя и пароль

   shevchya

2 — 03.11.16 — 10:46

Windows аутентификация. Какой пользователь и пароль?

   Ёпрст

3 — 03.11.16 — 10:49

(2) дык ты пытаешься зайти с системной учетной записью, тебе оутлуп.

Заведи смешанную авторизацию в скуле, делов то. Будешь задавать нормального юзверя и пароль.

   shevchya

4 — 03.11.16 — 10:52

(3) Это решение — крайняя мера. Понимаю, что простое, ну а если нужно, что бы каждый под своей доменной учеткой работал?

   SSSSS_AAAAA

5 — 03.11.16 — 10:52

(0) А не могли бы вы выражаться яснее?

Откуда и куда «подключаюсь»? О какой «локальной» базе речь? А проблема в «не локальной» базе? А подключение идет с сервера или с клиента?

   shevchya

6 — 03.11.16 — 10:54

(5)

1. Есть база ms sql

2. Есть база 1С, расположенная на сервере 1с предприятия

3. Есть локальная файловая база.

при подключении из 3 к 1, все работает

при подключении из 2 к 1 не работает

   shevchya

7 — 03.11.16 — 10:56

(5) Еще раз, пользуюсь внешними источниками данных. Как оно там сделано, я без понятия. Судя по тому что выдает ошибку, дело происходит на стороне сервера 1с предприятия.

   YFedor

8 — 03.11.16 — 11:00

(2) Имя пользователя и пароль Windows

   Sammo

9 — 03.11.16 — 11:00

(6) Под каким пользователем запущена служба 1с? Должна быть под тем же доменным, под которым надо входить в скуль — тогда будет работать. Но лучше используется смешанную авторизацию.

   DmitrO

10 — 03.11.16 — 11:00

ну так из серверной базы авторизация будет от пользователя под которым работает рабочий процесс сервера 1С

   shevchya

11 — 03.11.16 — 11:05

(10) Об этом я догадываюсь, но не понятно

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

б) Ошибка была бы типа «Нет доступа для пользователя доменпользователь», а тут выскакивает анонимная аутентификация

   shevchya

12 — 03.11.16 — 11:09

(8) Доменная аутентификация она же сквозная, то есть один раз вошел в домен, потом вводить ничего не надо.

   YFedor

13 — 03.11.16 — 11:47

(12) кто там в домен вошел, системная учетная запись сервера 1с?

   Ёпрст

14 — 03.11.16 — 11:48

Че паришься ?

Ну запусти службу агента 1с от имени пользователя, у которого есть права на вход в скуль и привет.

   shevchya

15 — 03.11.16 — 11:51

(14) Ну у меня их будет несколько десятков разных, поэтому и парюсь. Я вот думаю я где-то косячу или 1С просто не доделали.

   b_ru

16 — 03.11.16 — 11:56

(15) Ты просто не въежаешь в клиент-серверный принцип работы. Серверу на доменную авторизацию клиента чихать — он сам по себе, и клиентов у него много разных.

Если сильно хочешь на сиквеле авторизоваться как клиент — придется этот код на клиенте и выполнять.

   YFedor

17 — 03.11.16 — 11:59

(15) так на сервере же соединение создается

   shevchya

18 — 03.11.16 — 12:10

(16) Ну ну, не понимаю. То, что оно так реализовано, не означает что это единственно правильное решение.

Это я так воздух сотрясаю.

Ладно, всем спасибо за соучастие.

   YFedor

19 — 03.11.16 — 12:15

(18) В 1С хорошее и логичное (с точки зрения использования) решение Windows-авторизации …

Ты просто в Eset Nod не видел

   shevchya

20 — 03.11.16 — 12:51

В продолжение

Завели пользователя в базу sql, под которым службы сервера 1с подняты.

Завели хорошо, через ADO на сервере коннект есть.

Но вот внешние источники данных так и не заработали.

(19) Так что, хорошо, может и хорошо (мне тоже нравится), но не идеально.

   shevchya

21 — 03.11.16 — 12:55

Ну и кстати, не вижу проблемы протянуть аутентификацию до сервера (При входе в 1С они то это сделали), хотя тут уже я все-таки не эксперт.

(17) По поводу соединений: на сервере то на сервере, но не обязательно же под пользователем, под которым запущена служба, это же все-таки не внутренний код 1С.

   shevchya

22 — 03.11.16 — 13:06

Подумалось. У меня то прав на вход на сервер 1С нет, может поэтому он там дальше и не прокидывает. Но это так, размышления, как оно там может быть реализовано в этих внешних источниках данных.

   DmitrO

23 — 03.11.16 — 13:42

(22)То что тебе нужно называется Имперсонализация, этого в 1С нет, ни в родных процессах доступа к ресурсам, ни во внешних источниках.

   DmitrO

24 — 03.11.16 — 13:49

(23)+ и да, это понятие есть только под Windows, так что вряд ли 1С поспешат это реализовывать, хотя несомненно это вполне реализуемо и может быть востребовано. )

   b_ru

25 — 03.11.16 — 15:56

(20) В вашем случае надо было сделать ровно наоборот. Настроить запуск сервера 1С не от имени локальной записи, а от доменного пользователя, и уж этому доменному пользователю давать права на базу sql.

Админа, что ли, пригласили бы уже.

  

shevchya

26 — 03.11.16 — 16:10

(25) Именно это и было сделано.

Кстати походу с доменной аутентификацией походу вообще плохо во внешних источниках. Пробовали вообще под одним пользователем:

1) Вход в домен Windows

2) Вход в базу под тем же пользователем

3) Сервер так же под ним же поднят.

В итоге не работает.

An application that has been working without problem (and has not had any active development done on it in about 6 months or so) recently began failing to connect to database. Operations admins cant say what might have changed that would cause the problem.

The client application uses a hardcoded connection string with Integrated Security=True, but when the applications attempts to create a connection to the database, it throws an SQLException saying «Login failed for user ‘NT AUTHORITYANONYMOUS LOGON».

I can log on to the database through Management Studio on this account without problem. All of the things that I have seen for this issue are for ASP.NET projects and it is apparently the «Double Hop Problem» which being a client application darned well better not be a problem. Any help would be greatly appreciated.

Edit

The client machine and server machine as well as user accounts are on the same domain.
This occurs when Windows Firewall is off.

Leading theory is:
Server was restarted about a week or so ago, and failed to register Service Principal Name (SPN). Failure to register an SPN may cause integrated authentication to fall back to NTLM instead of Kerberos.

asked Sep 17, 2012 at 15:41

CodeWarrior's user avatar

CodeWarriorCodeWarrior

7,3287 gold badges51 silver badges77 bronze badges

0

If your issue is with linked servers, you need to look at a few things.

First, your users need to have delegation enabled and if the only thing that’s changed, it’l likely they do. Otherwise you can uncheck the «Account is sensitive and cannot be delegated» checkbox is the user properties in AD.

Second, your service account(s) must be trusted for delegation. Since you recently changed your service account I suspect this is the culprit. (http://technet.microsoft.com/en-us/library/cc739474(v=ws.10).aspx)

You mentioned that you might have some SPN issues, so be sure to set the SPN for both endpoints, otherwise you will not be able to see the delegation tab in AD. Also make sure you’re in advanced view in «Active Directory Users and Computers.»

If you still do not see the delegation tab, even after correcting your SPN, make sure your domain not in 2000 mode. If it is, you can «raise domain function level.»

At this point, you can now mark the account as trusted for delegation:

In the details pane, right-click the user you want to be trusted for
delegation, and click Properties.

Click the Delegation tab, select the Account is trusted for delegation
check box, and then click OK.

Finally you will also need to set all the machines as trusted for delegation.

Once you’ve done this, reconnect to your sql server and test your liked servers. They should work.

Jim G.'s user avatar

Jim G.

15k22 gold badges104 silver badges164 bronze badges

answered Sep 18, 2012 at 3:00

Code Magician's user avatar

Code MagicianCode Magician

22.9k7 gold badges59 silver badges77 bronze badges

2

First off: My problem isn’t the exact same as yours, but this post is the first thing that comes up in google for the Login failed for user 'NT AUTHORITYANONYMOUS LOGON' error at the time I wrote this. The solution may be useful to people searching for this error as I did not find this specific solution anywhere online.

In my case, I used Xampp/Apache and PHP sqlsrv to try to connect to an MSSQL database using Windows Authentication and received the Login failed for user 'NT AUTHORITYANONYMOUS LOGON' error you described. I finally found the problem to be the Apache service itself running under the user «LOCAL SERVICE» instead of the user account I was logged in as. In other words, it literally was using an anonymous account. The solution was to go into services.msc, right click the Apache service, go to Properties, go to the Log On tab, and enter the credentials for the user. This falls in line with your problem related to SPN’s as your SPN’s are set up to run from a specific user on the domain. So if the correct SPN is not running, windows authentication will default to the wrong user (likely the «LOCAL SERVICE» user) and give you the Anonymous error.

Here’s where it’s different from your problem. None of the computers on the local network are on a Domain, they are only on a Workgroup. To use Windows Authentication with a Workgroup, both the computer with the server (in my case MSSQL Server) and the computer with the service requesting data (in my case Apache) needed to have a user with an identical name and identical password.

To summarize, The Login failed for user 'NT AUTHORITYANONYMOUS LOGON' error in both our cases seems to be caused by a service not running and/or not on the right user. Ensuring the right SPN or other Service is running and under the correct user should solve the anonymous part of the problem.

answered Jul 10, 2015 at 15:01

Caboosetp's user avatar

CaboosetpCaboosetp

1111 silver badge4 bronze badges

3

I think there must have been some change in AD group used to authenticate against the database. Add the web server name, in the format domainwebservername$, to the AD group that had access to the database. In addition, also try to set the web.config attribute to «false». Hope it helps.

EDIT: Going by what you have edited.. it most probably indicate that the authentication protocol of your SQL Server has fallen back from Kerberos(Default, if you were using Windows integrated authentication) to NTLM. For using Kerberos service principal name (SPN) must be registered in the Active Directory directory service. Service Principal Name(SPNs) are unique identifiers for services running on servers. Each service that will use Kerberos authentication needs to have an SPN set for it so that clients can identify the service on the network. It is registered in Active Directory under either a computer account or a user account. Although the Kerberos protocol is the default, if the default fails, authentication process will be tried using NTLM.

In your scenario, client must be making tcp connection, and it is most likely running under LocalSystem account, and there is no SPN registered for SQL instance, hence, NTLM is used, however, LocalSystem account inherits from System Context instead of a true user-based context, thus, failed as ‘ANONYMOUS LOGON’.

To resolve this ask your domain administrator to manually register SPN if your SQL Server running under a domain user account.
Following links might help you more:
http://blogs.msdn.com/b/sql_protocols/archive/2005/10/12/479871.aspx
http://support.microsoft.com/kb/909801

answered Sep 17, 2012 at 16:10

Saurabh R S's user avatar

Saurabh R SSaurabh R S

2,9871 gold badge32 silver badges43 bronze badges

1

You probably just need to provide a user name and password in your connectionstring and set Integrated Security=false

answered May 22, 2017 at 6:11

shabber's user avatar

shabbershabber

591 silver badge1 bronze badge

1

Try setting «Integrated Security=False» in the connection string.

<add name="YourContext" connectionString="Data Source=<IPAddressOfDBServer>;Initial Catalog=<DBName>;USER ID=<youruserid>;Password=<yourpassword>;Integrated Security=False;MultipleActiveResultSets=True" providerName="System.Data.SqlClient"/>

answered Dec 17, 2018 at 6:32

Ummer Irshad's user avatar

One of my SQL jobs had the same issue. It involved uploadaing data from one server to another. The error occurred because I was using sql Server Agent Service Account. I created a Credential using a UserId (that uses Window authentication) common to all servers. Then created a Proxy using this credential. Used the proxy in sql server job and it is running fine.

answered Aug 12, 2015 at 14:42

Vipul's user avatar

VipulVipul

211 bronze badge

FWIW, in our case a (PHP) website running on IIS was showing this message on attempting to connect to a database.

The resolution was to edit the Anonymous Authentication on that website to use the Application pool identity (and we set the application pool entry up to use a service account designed for that website).

answered Jun 7, 2019 at 2:19

youcantryreachingme's user avatar

1

A similar case solved:

In our case, we wanted to set up linked servers using cnames and with the logins current security context.

All in order we checked that the service account running SQL Server had its’ proper spns set and that the AD-object was trusted for delegation. But, while we were able to connect to the cname directly, we still had issues calling a linked server on its’ cname: Login failed for user 'NT AUTHORITYANONYMOUS LOGON'.

It took us far too long to realize that the cnames we used was for A-record, [A], that was set on a higher dns level, and not in its’ own domain AD-level. Originally, we had the cname directing to [A].example.com and not (where it should) to: [A].domain.ad.example.com

Ofcourse we had these errors about anonymous logon.

answered Feb 5, 2021 at 15:50

dba's user avatar

Got it! Solved the issue modifying the user properties in security session of SQL Server. In SQL Server Management, go into security -> Logon -> Choose the user used for DB connection and go into his properties. Go to «Securators» tab and look for line «Connect SQL», mark «Grant» option and take a try. It works for me!

Regards

answered Sep 14, 2020 at 19:50

Luiz Gustavo David Ferreira's user avatar

Just Go to app pool select Process model in Advance Setting then select Identity and in identity set your account details like username and password of your system.

answered Aug 31, 2022 at 4:44

Ajit Kumar Pandey's user avatar

Разработка приложений

 > 

SharePoint

  • Question

  • Question

    Sign in to vote

    0


    Sign in to vote

    Доброго дня

    подскажите , что нужно настроить в SP2019

    чтоб заработал внешний список, а не выдавал сообщение —

    Сообщение из внешней системы: «Ошибка входа пользователя «NT AUTHORITYАНОНИМНЫЙ ВХОД».».

    Идентификатор взаимосвязи:5d56379f-c141-b0f8-059b-5ab68ac38161

    Thursday, February 20, 2020 3:58 PM

    Reply

    |

    Quote

Answers

  • Question

    Sign in to vote

    5


    Sign in to vote

    Здравствуйте

    Посмотрите подобное обсуждение: Login
    failed for user ‘NT AUTHORITYANONYMOUS LOGON’. when open external list

    Наделюсь поможет.


    Мнения, высказанные здесь, являются отражением моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется «как есть» без каких-либо гарантий.

    • Edited by
      Dmitriy VereshchakMicrosoft contingent staff, Moderator
      Tuesday, March 3, 2020 12:45 PM
    • Marked as answer by
      Иван ПродановMicrosoft contingent staff, Moderator
      Friday, March 6, 2020 8:39 AM

    Tuesday, March 3, 2020 12:45 PM

    Reply

    |

    Quote

    Moderator

Понравилась статья? Поделить с друзьями:
  • Ошибка входа ошибка при проверке пользователя ртс тендер
  • Ошибка входа открыть содержимое лост арк
  • Ошибка входа недопустимая сессия попробуйте перезагрузить игру
  • Ошибка времени смысл развязки
  • Ошибка входа недействительная сессия перезапустите лаунчер или игру