2017-01-18 3 views
0

Webサービスリクエストを作成してデータを取得しているSSISパッケージがあります。 APIプロバイダーは、セキュリティ上の理由から、要求と共にクライアント証明書を提出する必要があります。SSISスクリプトタスクでクライアント証明書を使用したWebサービスコールSSL/TLSの問題の結果

VSシェル(またはVSコンソールアプリケーション)からパッケージを実行すると完全に正常に動作しますが、SQLAgentを使用してパッケージを実行してSSMSから起動すると、次のようになりますエラー:

System.ServiceModel.Security.SecurityNegotiationException: Could not establish secure channel for SSL/TLS with authority 'mywebservice.com/endpoint:6185'. ---> System.Net.WebException: The request was aborted: Could not create SSL/TLS secure channel. at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
at System.ServiceModel.Channels.HttpChannelFactory'1.HttpRequestChannel.HttpChannelAsyncRequest.CompleteGetResponse(IAsyncResult result) --- End of inner exception stack trace --- at System.Runtime.AsyncResult.End[TAsyncResult](IAsyncResult result)
at System.ServiceModel.Channels.ServiceChannel.SendAsyncResult.End(SendAsyncResult result) at System.ServiceModel.Channels.ServiceChannel.EndCall(String action, Object[] outs, IAsyncResult result) at System.ServiceModel.Channels.ServiceChannelProxy.TaskCreator.<>c__DisplayClass5'1.b__4(IAsyncResult asyncResult) at System.Threading.Tasks.TaskFactory'1.FromAsyncCoreLogic(IAsyncResult iar, Func'2 endFunction, Action'1 endAction, Task'1 promise, Boolean requiresSynchronization) --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() at ST_1ccd678422b8432a8ea14ce911c575f3.Myclass.<>c__DisplayClass39.<b__22>d__55.MoveNext()

私はNT SERVICE\SQLAgent$Instanceとしての仕事を実行していると、証明書は以下の店舗では、ローカルマシンに配置されています。個人的な、信頼されたルート証明機関、および信頼されたユーザー。これは、私はVSシェル/データツールを介してデバッグするときにこれらのいずれかで動作するようになることができるので、これは問題ではないようです。

事前にお手数ですが、ありがとうございます。

答えて

0

は、次の手順を実行して、それを解決:

  1. saにジョブの所有者を設定します。
  2. SQL Serverエージェント - >プロキシ - > SSISパッケージ実行の下にプロキシアカウントを作成し、プリンシパルをSQLログイン(ドメイン)アカウントに設定します。プリンシパルの下にSQLAgent Reader、User、およびOperatorロールも追加されました。
  3. 希望は、これは他の誰かを助け

私の新しいプロキシアカウントにSQL Serverエージェントサービスアカウントを変更することにより、SSISのジョブステップを更新しました。

関連する問題