SharePoint 2010 BCS игнорирует имя пользователя / пароль в строке подключения
-
28-09-2019 - |
Вопрос
Вот мой сценарий.
У меня есть SharePoint 2010, работающий на одном сервере, с помощью SQL Server работает на другом. Обе машины находятся в том же домене, но участвующие в логинах являются локальными для каждой машины. SharePoint работает как NT Authory Network Service, если это имеет значение.
Я создал BCS, которые тянут данные с удаления SQL Server. Строка подключения появляется следующим образом: Data Source={0}; Initial Catalog={1};User Id={2}; Password={3}; Integrated Security=SSPI
. Отказ Я подтвердил, что соединительная строка хорошо сформирована, однажды все заменены {x}.
Это работает просто хорошо, при условии, что вы получаете доступ к сайту SharePoint из браузера, работающего на одной и той же машине (машина, хостинг SharePoint, то есть, чтобы сказать). Как только вы подключите к нему из браузера на другой машине, не удается.
Слование профилировщика на SQL Server показывает, что когда SharePoint доступа к «локально», пользовательские запросы - это запись вошедшей учетной записи. Когда он работает удаленно, пользователь «аноним». Из-за разрешений счета, первые успехи, в то время как последний терпит неудачу. Ни в коем случае пользователь на самом деле тот, который приведен в строке подключения.
Этот ответ Указывает, что проблема, вероятно, связана с объединением подключения, но не помогло мне решить проблему.
Итак, в двух словах, как я могу получить этот BCS, чтобы на самом деле соблюдать соединение String username / Пара пароля? Или, неспособность, как я могу добиться эквивалентного конца? Настройка сервера (SharePoint On One, SQL Server на другой) не обсуждается; К сожалению.
Решение
Вы можете иметь интегрированную безопасность Хорна Вы можете иметь аутентификацию SQL. Но вы не можете их смешивать. Как только вы указали Integrated Security=SSPI
, ваше имя пользователя и пароль будут игнорироваться, так как вместо этого будет использоваться встроенная безопасность. Если вы хотите указать пользователь аутентификации SQL и пароль, удалите часть «встроенной безопасности».
Как и в случае любого встроенного соединения аутентификации, удаленные серверы попадают в ограничение ограниченной делегирования, и они аутентифицируются как анонимные. Чтобы включить примерные учетные данные NT, чтобы пройти следующий хоп (SQL Server), должна быть включена ограниченная делегация, см.: