веб-задание azure подключается к удаленному экземпляру mssql. Доступ запрещен

Привет, я хочу использовать веб-задание для вызова следующего кода:

   using (SqlConnection con = new SqlConnection(ConfigStore.RemoteConnectionString()))
   {
       using (SqlCommand cmd = new SqlCommand(xxxxxx, con))
       {
           cmd.CommandType = CommandType.StoredProcedure;

           con.Open();

           SqlDataReader reader = cmd.ExecuteReader();
           if (!reader.HasRows)
           {

           }

           while (reader.Read())
           {

           }
           reader.Close();
       }
   }

Я получаю следующую ошибку

Как мне убедиться, что лазурь может подключиться к этому удаленному ящику sql?

Как мне добиться этого без ущерба для безопасности?

Большое спасибо

Это похоже на неправильную строку подключения. Можете ли вы отладить, что возвращает метод

   using (SqlConnection con = new SqlConnection(ConfigStore.RemoteConnectionString()))
   {
       using (SqlCommand cmd = new SqlCommand(xxxxxx, con))
       {
           cmd.CommandType = CommandType.StoredProcedure;

           con.Open();

           SqlDataReader reader = cmd.ExecuteReader();
           if (!reader.HasRows)
           {

           }

           while (reader.Read())
           {

           }
           reader.Close();
       }
   }
, и что это допустимая строка подключения?


person vaughn    schedule 12.07.2018    source источник


Ответы (2)


Я нашел ссылку, которая отвечает на него https://nishantrana.me/2018/02/19/using-azure-hybrid-connections-to-connect-to-sql-on-prem-database-from-azure-webjob/

person LH_    schedule 12.07.2018
comment
018-07-12T07:13:25 PID[4540] Информация Microsoft.Azure.WebJobs.Host.FunctionInvocationException : Исключение при выполнении функции: Functions.FiveSecondTask ---> System.Data.SqlClient.SqlException : Связанное с сетью или экземпляр Произошла конкретная ошибка при установлении соединения с SQL Server. Сервер не найден или не был доступен. Убедитесь, что имя экземпляра указано правильно и что SQL Server настроен на разрешение удаленных подключений. (поставщик: поставщик именованных каналов, ошибка: 40 — не удалось открыть соединение с SQL Server) ---> System.ComponentModel.Win32Exception: доступ запрещен 2018-07-12T07:13:25 PID[4540] Информация Конец внутреннего исключение 2018-07-12T07:13:25 PID [4540] Информация в System.Data.ProviderBase.DbConnectionPool.TryGetConnection (DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, логическое значение allowCreate, логическое значение onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal & connection) 2018-07:12T07 13:25 PID[4540] Информация в System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject,TaskCompletionSource_2_1 retry,DbConnectionOptions userOptions,DbConnectionInternal oldConnection,DbConnectionInternal&connection) 2018-07-12T07:13:25 PID[4540] Информация в системе .Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal (DbConnection externalConnection, DbConnectionFactory connectionFactory, TaskCompletionSource_3_1 повтор, DbConnectionOptions userOptions) 2018-07-12T07:13:25 PID[4540] Информация в System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource_4_1 повтор) 2018-07-12T07:13:25 PID[4540] Информация в System.Data. SqlClient.SqlConnection.Open() 2018-07-12T07:13:25 PID[4540] Информация в WebJob5.Functions.FiveSecondTask(таймер TimerInfo) 2018-07-12T07:13:25 PID[4540] Информация в lambda_method(Closure , Функции ,Объект[] ) 2018-07-12T07:13:25 Информация о PID[4540] в Microsoft.Azure.WebJobs.Host.Executors.VoidMethodInvoker_5_2.InvokeAsync[TReflected,TReturnValue](экземпляр объекта,аргументы Object[]) 2018- 07-12T07:13:25 PID[4540] Информация в асинхронном режиме Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor.InvokeAsync (вызывающий IFunctionInvoker, ParameterHelper parameterHelper, CancellationTokenSource timeoutTokenSource, CancellationTokenSource functionCancellationTokenSource, Boolean throw) OnTimeout, TimeSpan timerInterval, IFSpan timerInterval, 18-07-12T07:13:25 PID[4540] Информация в асинхронном Microsoft. Azure.WebJobs.Host.Executors.FunctionExecutor.ExecuteWithWatchersAsync(экземпляр IFunctionInstance,ParameterHelper parameterHelper,TraceWriter traceWriter,CancellationTokenSource functionCancellationTokenSource) 2018-07-12T07:13:25 PID[4540] Информация в асинхронном Microsoft.Azure.WebJobs.Host.Executors. FunctionExecutor.ExecuteWithLoggingAsync(??) 2018-07-12T07:13:25 PID[4540] Асинхронная информация Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor.ExecuteWithLoggingAsync(??) 2018-07-12T07:13:25 PID [4540] Информация Конец внутреннего исключения 2018-07-12T07:13:26 PID[4540] Информация о выполнении «Functions.FiveSecondTask» (сбой, идентификатор = beb15926-66b3-4f7e-900a-ebf855feb07b) 2018-07-12T07:13 :26 PID[4540] Информация Microsoft.Azure.WebJobs.Host.FunctionInvocationException : Исключение при выполнении функции: Functions.FiveSecondTask ---> System.Data.SqlClient.SqlException : При установлении подключение к SQL-серверу э. Сервер не найден или не был доступен. Убедитесь, что имя экземпляра указано правильно и что SQL Server настроен на разрешение удаленных подключений. (поставщик: поставщик именованных каналов, ошибка: 40 — не удалось открыть соединение с SQL Server) ---> System.ComponentModel.Win32Exception: доступ запрещен 2018-07-12T07:13:26 PID[4540] Информация Конец внутреннего исключение 2018-07-12T07:13:26 PID [4540] Информация в System.Data.ProviderBase.DbConnectionPool.TryGetConnection (DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, логическое значение allowCreate, логическое значение onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal & connection) 2018-07:12T07 13:26 PID[4540] Информация в System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject,TaskCompletionSource_6_1 retry,DbConnectionOptions userOptions,DbConnectionInternal oldConnection,DbConnectionInternal&connection) 2018-07-12T07:13:26 PID[4540] Информация в системе .Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal (DbConnection externalConnection, DbConnectionFactory connectionFactory, TaskCompletionSource_7_1 повтор, DbConnectionOptions userOptions) 2018-07-12T07:13:26 PID[4540] Информация в System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource_8_1 retry) 2018-07-12T07:13:26 PID[4540] Информация в System.Data. SqlClient.SqlConnection.Open() 2018-07-12T07:13:26 Информация о PID[4540] в WebJob5. Functions.FiveSecondTask(TimerInfo timer) 2018-07-12T07:13:26 PID[4540] Информация в lambda_method(Closure ,Functions ,Object[] ) 2018-07-12T07:13:26 PID[4540] Информация в Microsoft.Azure .WebJobs.Host.Executors.VoidMethodInvoker_9_2.InvokeAsync[TReflected,TReturnValue](экземпляр объекта,аргументы Object[]) 2018-07-12T07:13:26 PID[4540] Информация в асинхронном Microsoft.Azure.WebJobs.Host.Executors. FunctionExecutor.InvokeAsync (вызывающий IFunctionInvoker, ParameterHelper parameterHelper, CancellationTokenSource timeoutTokenSource, CancellationTokenSource functionCancellationTokenSource, Boolean throwOnTimeout, TimeSpan timerInterval, IFunctionInstance instance) 2018-07-12T07:13:26 PID[4540] Информация в async Microsoft.WebExecutors.Hazure.H. .FunctionExecutor.ExecuteWithWatchersAsync(экземпляр IFunctionInstance,ParameterHelper parameterHelper,TraceWriter traceWriter,CancellationTokenSource functionCancellationTokenSource) 2018-07-12T07:13:26 PID[4540] Информация в асинхронном Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor.ExecuteWithLoggingAsync(??) 2018-07-12T07:13:26 PID[4540] Информация в асинхронном Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor.ExecuteWithLoggingAsync(? ?) 2018-07-12T07:13:26 PID[4540] Информация Конец внутреннего исключения 2018-07-12T07:13:26 PID[4540] Информация в System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 2018-07- 12T07:13:26 PID[4540] Асинхронная информация Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor.ExecuteWithLoggingAsync(??) 2018-07-12T07:13:26 PID[4540] Асинхронная информация Microsoft.Azure.WebJobs .Host.Executors.FunctionExecutor.TryExecuteAsync(IFunctionInstance functionInstance,CancellationToken CancellationToken) 2018-07-12T07:13:26 Информация PID[4540] Функция имела ошибки. Дополнительные сведения см. на панели мониторинга Azure WebJobs SDK. Идентификатор экземпляра: beb15926-66b3-4f7e-900a-ebf855feb07b 2018-07-12T07:13:26 PID[4540] Информация Microsoft.Azure.WebJobs.Host.FunctionInvocationException : Исключение при выполнении функции: Functions.FiveSecondTask ---> System.Data.SqlClient.SqlException : при установлении соединения с SQL Server произошла ошибка, связанная с сетью или экземпляром. Сервер не найден или не был доступен. Убедитесь, что имя экземпляра указано правильно и что SQL Server настроен на разрешение удаленных подключений. (поставщик: поставщик именованных каналов, ошибка: 40 — не удалось открыть соединение с SQL Server) ---> System. ComponentModel.Win32Exception : Доступ запрещен 2018-07-12T07:13:26 PID[4540] Информация Конец внутреннего исключения 2018-07-12T07:13:26 PID[4540] Информация в System.Data.ProviderBase.DbConnectionPool.TryGetConnection( DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection) 2018-07-12T07:13:26 PID[4540] Информация в System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection1 recentionObject,TaskCompletionSource userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& соединение) 2018-07-12T07:13:26 PID [4540] Информация в System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal (DbConnection externalConnection, DbConnectionFactory connectionFactory, TaskCompletionSource_11_1 retry, DbConnectionOptions userOptions) 7-07TionOptions userOptions) 2018 :13:26 Информация о PID[4540] в System.Data.Sq lClient.SqlConnection.TryOpenInner(TaskCompletionSource_12_1 retry) 2018-07-12T07:13:26 PID[4540] Информация в System.Data.SqlClient.SqlConnection.Open() 2018-07-12T07:13:26 PID[4540] Информация в WebJob5.Functions.FiveSecondTask(TimerInfo timer) 2018-07-12T07:13:26 PID[4540] Информация в lambda_method(Closure,Functions,Object[] ) 2018-07-12T07:13:26 PID[4540] Информация в Microsoft .Azure.WebJobs.Host.Executors.VoidMethodInvoker_13_2.InvokeAsync[TReflected,TReturnValue](экземпляр объекта,аргументы Object[]) 2018-07-12T07:13:26 PID[4540] Информация в асинхронном Microsoft.Azure.WebJobs.Host. Executors.FunctionExecutor.InvokeAsync (вызывающий IFunctionInvoker, ParameterHelper parameterHelper, CancellationTokenSource timeoutTokenSource, функция CancellationTokenSourceCancellationTokenSource, логическое значение throwOnTimeout, TimeSpan timerInterval, IFunctionInstance instance) 2018-07-12T07:13:26 PID[4540] Microsoft.HobAzure Microsoft.HobAz.zure. .Executors.Func tionExecutor.ExecuteWithWatchersAsync (экземпляр IFunctionInstance, ParameterHelper parameterHelper, TraceWriter traceWriter, CancellationTokenSource functionCancellationTokenSource) 2018-07-12T07:13:26 PID[4540] Информация в асинхронном Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor.Execute(1??LoggingA) -07-12T07:13:26 PID[4540] Информация в асинхронном режиме Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor.ExecuteWithLoggingAsync(??) 2018-07-12T07:13:26 PID[4540] Информация Конец внутреннего исключения 2018-07-12T07:13:26 Информация о PID[4540] в системе. Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 2018-07-12T07:13:26 PID[4540] Асинхронная информация Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor.ExecuteWithLoggingAsync(??) 2018-07-12T07:13: 26 Информация о PID[4540] в асинхронном Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor.TryExecuteAsync(IFunctionInstance functionInstance,CancellationToken CancellationToken) - person vaughn; 12.07.2018

похоже, что формулировка моего поиска в Google была неверной. Azure относится к удаленным, как к локальным соединениям.... нашел ссылку nishantrana.me/2018/02/19/

person vaughn    schedule 12.07.2018