Соединение SSAS ADOMD принудительно закрыто - PullRequest
0 голосов
/ 23 января 2019

Я создал веб-приложение (c # ASP.Net 4.0).В этом приложении я хочу подключиться к кубу SSAS (SQL Server 2017)

using (AdomdConnection connection = new AdomdConnection(connectionString))
{
    AdomdCommand command = new AdomdCommand(query, connection)
    {
        CommandTimeout = connection.ConnectionTimeout
    };
    AdomdDataAdapter mdAdapter = new AdomdDataAdapter(command);
    connection.Open();
    result = (CellSet)command.Execute();
    connection.Close();
}

Если я запускаю приложение на своем локальном компьютере разработки, соединение работает.При развертывании приложения в IIS (версия 6.2 / Server 2012 R2) и просмотре сайта я получаю эту ошибку.

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

Я проверил соединение с помощью SQL Management-Studio на веб-сервере.Я использую локального пользователя Windows на DB-хосте для входа в SSAS.Все отлично работает (соединение, MDX).

my connection-String:

 <add name="MyConnection" connectionString="Provider=MSOLAP;Persist Security Info=True;Update Isolation Level=2;User ID= XXX ;Password= XX;Data Source= My DB-HOST:SSAS-Port;Catalog=My SSAS-CUBE;"/>

Может быть, у вас есть идея, как я могу получить больше информации об этой проблеме?

Спасибо, С уважением, Томас

1 Ответ

0 голосов
/ 23 января 2019

connectionString = "Provider = MSOLAP; Persist Security Info = True; уровень изоляции обновления = 2; ID пользователя = XXX; пароль = XX; источник данных = мой DB-HOST: SSAS-порт; каталог = мой SSAS-CUBE; «

SSAS поддерживает только встроенную аутентификацию Windows (или HTTP Basic через передачу данных). Таким образом, вы можете удалить идентификатор пользователя и пароль из строки подключения и предоставить доступ к кубу IIS App App Identity для доступа (при условии, что вы не олицетворяете себя). Если вы олицетворяете, вам нужно заставить работать Kerberos Constrained Delegation, если SSAS не работает на том же сервере, что и IIS.

Если вы используете какие-либо локальные автоматические идентификаторы для пула приложений, вы бы использовали учетную запись компьютера для предоставления доступа к удаленным ресурсам. Поэтому, если ваш IIS-сервер называется MyDomain \ MyServer, предоставьте доступ к MyDomain \ MyServer $.

...