次の方法で共有


Integration Services サービス (SSIS サービス)

適用対象:SQL Server Azure Data Factory の SSIS 統合ランタイム

このセクションのトピックでは、 Integration Services パッケージを管理するための Windows サービスである Integration Services サービスについて説明します。 Integration Service パッケージの作成、保存、および実行には、このサービスは不要です。 SQL Server 2012 (11.x) 以前のリリースの Integration Services との互換性を維持するために、 Integration Servicesサービスをサポートしています。

SQL Server 2012 (11.x) 以降では、Integration Services は、プロジェクト配置モデルを使用して サーバーに配置したプロジェクトの SSISDB Integration Services データベースにオブジェクト、設定、業務データを格納します。 Integration Services データベース エンジンのインスタンスである SQL Server サーバーは、データベースをホストします。 データベースの詳細については、「 SSIS カタログ」を参照してください。 Integration Services サーバーへのプロジェクトの配置の詳細については、「Integration Services (SSIS) のプロジェクトとパッケージの配置」を参照してください。

管理機能

Integration Services サービスは、 Integration Services パッケージを管理するための Windows サービスです。 Integration Services サービスは SQL Server Management Studioでのみ使用できます。

Integration Services サービスを実行すると、以下の管理機能が使用できます。

  • リモートまたはローカルに格納されたパッケージの開始

  • リモートまたはローカルで実行中のパッケージの停止

  • リモートまたはローカルで実行中のパッケージの監視

  • パッケージのインポートおよびエクスポート

  • パッケージ ストレージの管理

  • ストレージ フォルダーのカスタマイズ

  • サービス停止時の実行中のパッケージの停止

  • Windows のイベント ログの表示

  • 複数の Integration Services サーバーへの接続

スタートアップの種類

Integration Services サービスは Integration Services の SQL Serverコンポーネントのインストール時にインストールされます。 既定では、 Integration Services サービスが起動され、スタートアップの種類が自動に設定されます。 SSIS パッケージ ストアに格納されているパッケージを監視するには、サービスが実行されている必要があります。 SSIS パッケージ ストアは、 SQL Server のインスタンス内の msdb データベース、またはファイル システム内の指定されたフォルダーのいずれかです。

Integration Services パッケージの設計と実行だけを行う場合は、 Integration Services サービスは必要ありません。 ただし、 SQL Server Management Studioを使用してパッケージを一覧表示し、監視する場合はサービスが必要です。

サービスの管理

Integration Services の SQL Serverコンポーネントのインストール時に、 Integration Services サービスもインストールされます。 既定では、 Integration Services サービスが起動され、スタートアップの種類が自動に設定されます。 ただし、サービスを使用して SQL Server Management Studio の格納されたパッケージおよび実行中のパッケージを管理するには、 Integration Services をインストールする必要があります。

注意

レガシ Integration Services サービスに直接接続するには、Integration Services サービスが実行されている SQL Server のバージョンと合わせたバージョンの SQL Server Management Studio (SSMS) を使用する必要があります。 たとえば、SQL Server 2016 のインスタンスで実行されているレガシ Integration Services サービスに接続するには、SQL Server 2016 用にリリースされたバージョンの SSMS を使用する必要があります。 SQL Server Management Studio (SSMS) をダウンロードしてください

SSMS の [サーバーへの接続] ダイアログ ボックスで、旧バージョンの Integration Services サービスが実行されているサーバーの名前を入力することはできません。 ただし、リモート サーバーに格納されるパッケージを管理するために、そのリモート サーバー上の Integration Services サービスのインスタンスに接続する必要はありません。 代わりに、 Integration Services サービスの構成ファイルを編集し、 SQL Server Management Studio でリモート サーバーに格納されているパッケージが表示されるようにします。

Integration Services サービスのインスタンスは 1 台のコンピューターに 1 つだけインストールできます。 このサービスは、 データベース エンジンの特定のインスタンスに固有ではありません。 サービスに接続するには、サービスが実行されているコンピューターの名前を使用します。

Integration Services サービスは、SQL Server 構成マネージャーまたはサービスのいずれかの Microsoft 管理コンソール (MMC) スナップインを使用して管理できます。 SQL Server Management Studioでパッケージを管理するには、事前にサービスを起動しておく必要があります。

既定では、 Integration Services サービスは、 データベース エンジン と同時にインストールされる Integration Servicesのインスタンスの msdb データベース内にあるパッケージを管理するように構成されます。 データベース エンジン のインスタンスが同時にインストールされない場合、 Integration Services サービスは、 データベース エンジンのローカルの既定インスタンスの msdb データベース内にあるパッケージを管理するように構成されます。 データベース エンジンの名前付きインスタンスまたはリモート インスタンス、あるいは データベース エンジンの複数のインスタンスに格納されているパッケージを管理するには、サービスの構成ファイルを変更する必要があります。

既定では、 Integration Services サービスが停止すると、パッケージの実行も停止するように設定されています。 ただし、 Integration Services サービスはパッケージが停止するまで待機しないため、 Integration Services サービスの停止後に実行を続けるパッケージもあります。

Integration Services サービスが停止した場合、 SQL Server インポートおよびエクスポート ウィザード、 SSIS デザイナー、パッケージ実行ユーティリティ、および dtexec コマンド プロンプト ユーティリティ (dtexec.exe) を使用してパッケージを実行し続けることができます。 ただし、実行中のパッケージを監視することはできません。

既定では、 Integration Services サービスは NETWORK SERVICE アカウントのコンテキスト内で実行されます。 NETWORK SERVICE アカウントなど、アクセス許可が限られているアカウントの下で SQL Server Integration Services サービスを実行することをお勧めします。 高い特権を持つアカウントで SQL Server Integration Services サービスを実行すると、潜在的なセキュリティ リスクが表されます。

Integration Services サービスは Windows のイベント ログに書き込みを行います。 SQL Server Management Studioでサービス イベントを表示できます。 Windows イベント ビューアーを使用してサービス イベントを表示することもできます。

サービスのプロパティの設定

Integration Services サービスは、 SQL Server Management Studioでパッケージを管理および監視します。 SQL Server Integration Servicesを初めてインストールするときに、Integration Services サービスが起動され、スタートアップの種類が自動に設定されます。

Integration Services サービスをインストールしたら、SQL Server 構成マネージャーまたはサービス MMC スナップインを使用してサービスのプロパティを設定できます。

パッケージを格納および管理する場所など、サービスのその他の重要な機能を構成するには、サービスの構成ファイルを変更する必要があります。

SQL Server 構成マネージャーを使用して Integration Services サービスのプロパティを設定するには

  1. [スタート] ボタンをクリックし、 [すべてのプログラム][Microsoft SQL Server][構成ツール] の順にポイントして、 [SQL Server 構成マネージャー] をクリックします。

  2. [SQL Server 構成マネージャー] スナップインで、サービスの一覧から [SQL Server Integration Services] を探します。次に、 [SQL Server Integration Services]を右クリックし、 [プロパティ]をクリックします。

  3. [SQL Server Integration Services のプロパティ] ダイアログ ボックスでは、次の操作を行うことができます。

    • [ログオン] タブをクリックして、アカウント名などのログオン情報を表示します。

    • [サービス] タブをクリックして、ホスト コンピューター名などのサービスに関する情報を表示し、 Integration Services サービスの開始モードを指定します。

      注意

      [詳細設定] タブに、 Integration Services サービスに関する情報は表示されません。

  4. [OK] をクリックします。

  5. [ファイル] メニューの [終了] をクリックして [SQL Server 構成マネージャー] スナップインを終了します。

[サービス] を使用して Integration Services サービスのプロパティを設定するには

  1. [コントロール パネル]で、クラシック表示を使用している場合は [管理ツール]、カテゴリの表示を使用している場合は [パフォーマンスとメンテナンス] をクリックしてから [管理ツール]をクリックします。

  2. [サービス] をクリックします。

  3. [サービス] スナップインで、サービスの一覧から [SQL Server Integration Services] を探します。 [SQL Server Integration Services]を右クリックし、 [プロパティ]をクリックします。

  4. [SQL Server Integration Services のプロパティ] ダイアログ ボックスでは、次の操作を行うことができます。

    • [General] タブをクリックします。サービスを有効にするには、[スタートアップの種類] で [手動] または [自動] を選択します。 サービスを無効にするには、 [スタートアップの種類] ボックスで [無効] を選択します。 [無効] を選択しても、実行中のサービスは停止されません。

      サービスが既に有効になっている場合は、 [停止] をクリックしてサービスを停止したり、 [開始] をクリックしてサービスを開始したりできます。

    • [ログオン] タブをクリックして、ログオン情報を表示または編集します。

    • [復旧] タブをクリックして、サービスが失敗した場合のコンピューターの既定の応答を表示します。 これらのオプションは、環境に合わせて変更できます。

    • [依存関係] タブをクリックして、依存サービスの一覧を表示します。 Integration Services サービスは、依存関係を持ちません。

  5. [OK] をクリックします。

  6. [スタートアップの種類] で [手動] または [自動] を選択している場合は、必要に応じて、 [SQL Server Integration Services] を右クリックし、 [開始]、[停止]、または [再起動]をクリックできます。

  7. [ファイル] メニューの [終了] をクリックして [サービス] スナップインを終了します。

サービスへのアクセス許可の付与

以前のバージョンの SQL Server では、SQL Server をインストールすると、既定で Local Users と Groups の Users グループのすべてのユーザーが Integration Services サービスにアクセスできました。 SQL Server 2016 (13.x) 以降のバージョンをインストールする場合、ユーザーは Integration Services サービスにアクセスできません。 このサービスは既定で保護されます。 SQL Server のインストール後に、管理者はサービスに対するアクセスを許可する必要があります。

Integration Services サービスへのアクセスを許可するには

  1. Dcomcnfg.exe を実行します。 Dcomcnfg.exe には、レジストリ内の特定の設定を変更するためのユーザー インターフェイスが用意されています。

  2. [コンポーネント サービス] ダイアログで、[コンポーネント サービス] > [コンピューター] > [マイ コンピューター] > [DCOM の構成] ノードの順に展開します。

  3. [Microsoft SQL Server Integration Services 13.0]を右クリックし、 [プロパティ]をクリックします。

  4. [セキュリティ] タブで、 [起動とアクティブ化のアクセス許可] 領域の [編集] をクリックします。

  5. ユーザーを追加し、適切なアクセス許可を割り当てて、[OK] をクリックします。

  6. アクセス許可で手順 4. と 5. を繰り返します。

  7. SQL Server Management Studio を再起動します。

  8. Integration Services サービスを再開します。

アクセス許可が不足しているときに記録されるイベント

SQL Server エージェントのサービス アカウントに Integration Services DCOM [起動とアクティブ化のアクセス許可] が含まれていない場合は、SQL Server エージェントによって SSIS パッケージ ジョブが実行されたときに、次のイベントがシステム イベント ログに追加されます。

Log Name: System
Source: **Microsoft-Windows-DistributedCOM**
Date: 1/9/2019 5:42:13 PM
Event ID: **10016**
Task Category: None
Level: Error
Keywords: Classic
User: NT SERVICE\SQLSERVERAGENT
Computer: testmachine
Description:
The application-specific permission settings do not grant Local Activation permission for the COM Server application with CLSID
{xxxxxxxxxxxxxxxxxxxxxxxxxxxxx}
and APPID
{xxxxxxxxxxxxxxxxxxxxxxxxxxxxx}
to the user NT SERVICE\SQLSERVERAGENT SID (S-1-5-80-344959196-2060754871-2302487193-2804545603-1466107430) from address LocalHost (Using LRPC) running in the application container Unavailable SID (Unavailable). This security permission can be modified using the Component Services administrative tool.

サービスの構成

Integration Servicesをインストールすると、セットアップ プロセスによって Integration Services サービスの構成ファイルが作成およびインストールされます。 この構成ファイルには、次の設定が含まれます。

  • サービスが停止すると、パッケージに中止コマンドが送信されます。

  • Integration Services のオブジェクト エクスプローラー内の SQL Server Management Studio に表示するルート フォルダーは、[MSDB] および [ファイル システム] フォルダーです。

  • Integration Services サービスが管理するファイル システム内のパッケージは、%ProgramFiles%\Microsoft SQL Server\130\DTS\Packages にあります。

この構成ファイルは、 Integration Services サービスが管理するパッケージを含む msdb データベースも指定します。 既定では、 Integration Services サービスは、 データベース エンジン と同時にインストールされる Integration Servicesのインスタンスの msdb データベース内にあるパッケージを管理するように構成されます。 データベース エンジン のインスタンスが同時にインストールされない場合、 Integration Services サービスは、 データベース エンジンのローカルの既定インスタンスの msdb データベース内にあるパッケージを管理するように構成されます。

既定の構成ファイルの例

次の設定を含む既定の構成ファイルを以下の例に示します。

  • Integration Services サービスが停止すると、パッケージは実行を停止します。

  • Integration Services 内のパッケージ ストレージのルート フォルダーは、[MSDB] および [ファイル システム] フォルダーです。

  • このサービスは、 SQL Serverのローカルの既定インスタンスの msdb データベースに格納されるパッケージを管理します。

  • このサービスは、ファイル システムの [パッケージ] フォルダーに格納されるパッケージを管理します。

既定の構成ファイルの例

\<?xml version="1.0" encoding="utf-8"?>  
\<DtsServiceConfiguration xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">  
  <StopExecutingPackagesOnShutdown>true</StopExecutingPackagesOnShutdown>  
  <TopLevelFolders>  
    \<Folder xsi:type="SqlServerFolder">  
      <Name>MSDB</Name>  
      <ServerName>.</ServerName>  
    </Folder>  
    \<Folder xsi:type="FileSystemFolder">  
      <Name>File System</Name>  
      <StorePath>..\Packages</StorePath>  
    </Folder>  
  </TopLevelFolders>    
</DtsServiceConfiguration>  

構成ファイルを変更します

構成ファイルを変更することによって、サービスが停止した場合にパッケージを継続して実行できるようにしたり、オブジェクト エクスプローラー内に別のルート フォルダーを表示したり、 Integration Services サービスが管理するファイル システム内に別のフォルダーまたは追加のフォルダーを指定することができます。 たとえば、 SqlServerFolder型の別のルート フォルダーを作成して、 データベース エンジンの追加インスタンスの msdb データベースでパッケージを管理できます。

注意

一部の文字は、フォルダー名には無効です。 フォルダー名として有効な文字は、 .NET Framework クラスの System.IO.Path および GetInvalidFilenameChars フィールドによって決まります。 GetInvalidFilenameChars フィールドでは、 Path クラスのメンバーに渡されるパス文字列引数に指定できない、プラットフォーム固有の文字配列が指定されます。 無効な文字のセットは、ファイル システムによって異なる場合があります。 通常、無効な文字は、引用符 (")、小なり (<) 文字、パイプ (|) 文字です。

ただし、 データベース エンジンの名前付きインスタンスまたはリモート インスタンスに格納されているパッケージを管理するには、構成ファイルを変更する必要があります。 構成ファイルを更新しないと、 オブジェクト エクスプローラー SQL Server Management Studio を使用して名前付きインスタンスまたはリモート インスタンス上の msdb データベースに格納されているパッケージを表示することはできません。 オブジェクト エクスプローラー を使用してこのようなパッケージを表示しようとすると、次のエラー メッセージが返されます。

Failed to retrieve data for this request. (Microsoft.SqlServer.SmoEnum)

The SQL Server specified in Integration Services service configuration is not present or is not available. This might occur when there is no default instance of SQL Server on the computer. For more information, see the topic "Configuring the Integration Services Service" in SQL Server 2008 Books Online.

Login Timeout Expired

An error has occurred while establishing a connection to the server. When connecting to SQL Server 2008, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections.

Named Pipes Provider: Could not open a connection to SQL Server [2]. (MsDtsSvr).

Integration Services サービスの構成ファイルを変更するには、テキスト エディターを使用します。

重要

サービス構成ファイルを変更したら、更新されたサービス構成を使用するためにサービスを再起動する必要があります。

変更された構成ファイルの例

変更された Integration Servicesの構成ファイルの例を次に示します。 このファイルは、 SQL Server という名前のサーバー上で、 InstanceName と呼ばれる ServerNameの名前付きインスタンス用のファイルです。

SQL Server の名前付きインスタンス用構成ファイルの変更例

\<?xml version="1.0" encoding="utf-8"?>  
\<DtsServiceConfiguration xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">  
  <StopExecutingPackagesOnShutdown>true</StopExecutingPackagesOnShutdown>  
  <TopLevelFolders>  
    \<Folder xsi:type="SqlServerFolder">  
      <Name>MSDB</Name>  
      <ServerName>ServerName\InstanceName</ServerName>  
    </Folder>  
    \<Folder xsi:type="FileSystemFolder">  
      <Name>File System</Name>  
      <StorePath>..\Packages</StorePath>  
    </Folder>  
  </TopLevelFolders>    
</DtsServiceConfiguration>  

構成ファイルの場所の変更

レジストリ キー HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\130\SSIS\ServiceConfigFile には、Integration Services サービスが使用する構成ファイルの場所と名前を指定します。 レジストリ キーの既定値は、C:\Program Files\Microsoft SQL Server\130\DTS\Binn\MsDtsSrvr.ini.xml です。 レジストリ キーの値を更新すると、構成ファイルに別の名前と場所を使用することができます。 パスのバージョン番号 (SQL Server SQL Server 2014 (12.x) の場合は 120、SQL Server 2016 (13.x) の場合は 130 など) は、 SQL Server のバージョンによって異なるので注意してください。

注意事項

レジストリの編集を誤ると、深刻な問題が発生し、オペレーティング システムの再インストールが必要になる場合があります。 Microsoft レジストリの誤った編集により発生した問題に関しては、一切責任を負わないものとします。 レジストリを編集する前に、重要なデータをすべてバックアップしてください。 レジストリのバックアップ、復元、および編集の方法については、 Microsoft サポート技術情報の記事「 Microsoft Windows レジストリの説明」を参照してください。

Integration Services サービスは、サービスの開始時に構成ファイルを読み込みます。 レジストリ エントリを変更した場合、サービスを再起動する必要があります。

ローカル サービスへの接続

Integration Services サービスに接続する前に、管理者からこのサービスに対するアクセス権を付与してもらう必要があります。

Integration Services サービスに接続するには

  1. SQL Server Management Studioを開きます。

  2. [表示] メニューの [オブジェクト エクスプローラー] をクリックします。

  3. [オブジェクト エクスプローラー] のツール バーの [接続]をクリックし、 [Integration Services]をクリックします。

  4. [サーバーへの接続] ダイアログ ボックスで、サーバー名を指定します。 ピリオド (.)、(local)、または localhost を使用すると、ローカル サーバーを指定できます。

  5. [Connect] をクリックします。

リモート SSIS サーバーへの接続

Integration Services または他の管理アプリケーションからリモート サーバー上の SQL Server Management Studio のインスタンスに接続するには、アプリケーションのユーザーがそのサーバーに対して特定の権限を持っている必要があります。

重要

レガシ Integration Services サービスに直接接続するには、Integration Services サービスが実行されている SQL Server のバージョンと合わせたバージョンの SQL Server Management Studio (SSMS) を使用する必要があります。 たとえば、SQL Server 2016 のインスタンスで実行されているレガシ Integration Services サービスに接続するには、SQL Server 2016 用にリリースされたバージョンの SSMS を使用する必要があります。 SQL Server Management Studio (SSMS) をダウンロードしてください

リモート サーバーに格納されるパッケージを管理するために、そのリモート サーバー上の Integration Services サービスのインスタンスに接続する必要はありません。 代わりに、 Integration Services サービスの構成ファイルを編集し、 SQL Server Management Studio でリモート サーバーに格納されているパッケージが表示されるようにします。

リモート サーバー上の Integration Services への接続

リモート サーバー上の Integration Services に接続するには

  1. SQL Server Management Studioを開きます。

  2. [ファイル]メニューの [オブジェクト エクスプローラーを接続] をクリックして、 [サーバーへの接続] ダイアログ ボックスを表示します。

  3. [サーバーの種類] ボックスの一覧で [Integration Services] を選択します。

  4. [サーバー名] テキスト ボックスに SQL Server Integration Services サーバーの名前を入力します。

    注意

    Integration Services サービスは、そのインスタンスに固有のものではありません。 このサービスに接続するには、Integration Services サービスが実行されているコンピューターの名前を使用します。

  5. [Connect] をクリックします。

注意

[サーバーの参照] ダイアログ ボックスには、 Integration Servicesのリモート インスタンスは表示されません。 また、 [サーバーへの接続] ダイアログ ボックスで [オプション] ボタンをクリックしたときに表示される [接続プロパティ] タブのオプションは、 Integration Services への接続時には適用されません。

"アクセスが拒否されました" エラーの回避

十分な権限を持っていないユーザーがリモート サーバー上の Integration Services インスタンスに接続しようとすると、サーバーから "アクセスは拒否されました" というエラー メッセージが返されます。 必要な権限がユーザーに与えられていることを確認すれば、このエラー メッセージを回避できます。

Windows Server 2003 または Windows XP でリモート ユーザーの権限を構成するには

  1. ユーザーがローカルの Administrators グループのメンバーでない場合、そのユーザーを Distributed COM Users グループに追加します。 この操作は、 [管理ツール] メニューからアクセスできるコンピューターの管理 MMC スナップインで実行できます。

  2. コントロール パネルを開き、 [管理ツール][コンポーネント サービス] の順にダブルクリックして、コンポーネント サービス MMC スナップインを起動します。

  3. コンソールの左ペインで [コンポーネント サービス] ノードを展開します。 [コンピューター] ノード、 [マイ コンピューター]の順に展開し、 [DCOM の構成] ノードをクリックします。

  4. [DCOM の構成] ノードを選択し、構成できるアプリケーションの一覧から [SQL Server Integration Services 11.0] を選択します。

  5. [SQL Server Integration Services 11.0] を右クリックし、 [プロパティ]を選択します。

  6. [SQL Server Integration Services 11.0 のプロパティ] ダイアログ ボックスで、 [セキュリティ] タブをクリックします。

  7. [起動とアクティブ化のアクセス許可][カスタマイズ]を選択し、 [編集] をクリックして [起動許可] ダイアログ ボックスを開きます。

  8. [起動許可] ダイアログ ボックスで、ユーザーを追加または削除し、適切なアクセス許可を適切なユーザーとグループに割り当てます。 使用可能なアクセス許可は、[ローカルからの起動]、[リモートからの起動]、[ローカルからのアクティブ化]、[リモートからのアクティブ化] です。 起動権限ではサービスを開始および停止するアクセス許可を許可または拒否し、アクティブ化権限ではサービスに接続するアクセス許可を許可または拒否します。

  9. [OK] をクリックして、ダイアログ ボックスを閉じます。

  10. [アクセス許可]で手順 7. ~ 8. を繰り返し、適切なユーザーとグループに適切なアクセス許可を割り当てます。

  11. MMC スナップインを閉じます。

  12. Integration Services サービスを再開します。

最新の Service Pack が適用されている Windows 2000 でリモート ユーザーの権限を構成するには

  1. コマンド プロンプトで dcomcnfg.exe を実行します。

  2. [分散 COM の構成のプロパティ] ダイアログ ボックスの [アプリケーション] ページで、[SQL Server Integration Services 11.0] をクリックして [プロパティ]をクリックします。

  3. [セキュリティ] ページを選択します。

  4. 2 つのダイアログ ボックスを使用して、 [アクセスの許可][起動の許可]を構成します。 リモートとローカルのアクセスは区別できません。アクセスの許可にはローカルとリモートのアクセス権が含まれており、起動の権限にはローカルとリモートの起動権限が含まれています。

  5. ダイアログ ボックスを閉じ、 dcomcnfg.exeを閉じます。

  6. Integration Services サービスを再開します。

ローカル アカウントを使用した接続

クライアント コンピューターのローカル Windows アカウントで作業している場合、リモート コンピューターの Integration Services サービスに接続できるのは、同じ名前、同じパスワード、および十分な権限が設定されたローカル アカウントがリモート コンピューター上に存在する場合だけです。

SSIS Windows サービスでは委任がサポートされていません

SSIS では資格情報を委任できません。資格情報の委任はダブル ホップとも呼ばれます。 たとえば、ユーザーがクライアント コンピューターで作業しており、SSIS は別のコンピューターにインストールされているとします。SQL Server はさらに別のコンピューターにインストールされています。 SSMS では、クライアント コンピューターから (SSIS が実行されている) 2 番目のコンピューターに資格情報を正常に渡されますが、SSIS では、2 番目のコンピューターから (SQL Server が実行されている) 3 番目のコンピューターに資格情報を委任できません。

ファイアウォールを構成する

Windows ファイアウォール システムは、ネットワーク接続経由でコンピューター リソースに不正なアクセスが行われるのを防ぐのに役立ちます。 このファイアウォールを経由して Integration Services にアクセスするには、アクセスを有効にするようにファイアウォールを構成する必要があります。

重要

リモート サーバーに格納されるパッケージを管理するために、そのリモート サーバー上の Integration Services サービスのインスタンスに接続する必要はありません。 代わりに、 Integration Services サービスの構成ファイルを編集し、 SQL Server Management Studio でリモート サーバーに格納されているパッケージが表示されるようにします。

Integration Services サービスは、DCOM プロトコルを使用しています。

多くのファイアウォール システムが市販されています。 Windows ファイアウォール以外のファイアウォールを実行している場合、使用しているシステム固有の情報については、そのファイアウォールのマニュアルを参照してください。

ファイアウォールでアプリケーション レベルのフィルター処理がサポートされている場合は、Windows によって提供されるユーザー インターフェイスを使用して、プログラムやサービスなどの例外を指定し、ファイアウォールを通過することを許可できます。 それ以外の場合は、限定された TCP ポートのセットを使用するように DCOM を構成する必要があります。 上記の Microsoft Web サイト リンクには、使用する TCP ポートを指定する方法が紹介されています。

Integration Services サービスでは、ポート 135 を使用します。このポートは変更できません。 サービス コントロール マネージャー (SCM) のアクセスのためには、TCP ポート 135 を開く必要があります。 SCM は、 Integration Services サービスの起動と停止、実行中のサービスに対する制御要求の転送などのタスクを実行します。

以下のセクションに記載されている情報は、Windows ファイアウォールに固有の情報です。 Windows ファイアウォール システムを構成する方法には、コマンド プロンプトでコマンドを実行する方法と、[Windows ファイアウォール] ダイアログ ボックスでプロパティを設定する方法があります。

Windows ファイアウォールの既定の設定の詳細と、データベース エンジン、Analysis Services、Reporting Services、および Integration Services に影響する TCP ポートの説明については、「 SQL Server のアクセスを許可するための Windows ファイアウォールの構成」をご覧ください。

Windows ファイアウォールの構成

次のコマンドを使用すると、TCP ポート 135 を開き、MsDtsSrvr.exe を例外リストに追加し、ファイアウォールのブロックを解除するスコープを指定できます。

コマンド プロンプト ウィンドウを使用して Windows ファイアウォールを構成するには

  1. 次のコマンドを実行します。

    netsh firewall add portopening protocol=TCP port=135 name="RPC (TCP/135)" mode=ENABLE scope=SUBNET
    
  2. 次のコマンドを実行します。

    netsh firewall add allowedprogram program="%ProgramFiles%\Microsoft SQL Server\100\DTS\Binn\MsDtsSrvr.exe" name="SSIS Service" scope=SUBNET
    

    注意

    すべてのコンピューターおよびインターネット上のコンピューターに対してファイアウォールを開くには、scope=SUBNET を scope=ALL に変更します。

次の手順では、Windows のユーザー インターフェイスを使用して、TCP ポート 135 を開き、MsDtsSrvr.exe を例外リストに追加して、ファイアウォールのブロックを解除するスコープを指定する方法について説明します。

[Windows ファイアウォール] ダイアログ ボックスを使用してファイアウォールを構成するには

  1. コントロール パネルの [Windows ファイアウォール]をダブルクリックします。

  2. [Windows ファイアウォール] ダイアログ ボックスで、 [例外] タブをクリックし、 [プログラムの追加]をクリックします。

  3. [プログラムの追加] ダイアログ ボックスで、 [参照]をクリックし、Program Files\Microsoft SQL Server\100\DTS\Binn フォルダーに移動します。次に MsDtsSrvr.exe をクリックし、 [開く]をクリックします。 [OK] をクリックして、 [プログラムの追加] ダイアログ ボックスを閉じます。

  4. [例外] タブで、 [ポートの追加]をクリックします。

  5. [ポートの追加] ダイアログ ボックスの [名前] ボックスに、「 RPC(TCP/135)」またはその他のわかりやすい名前を入力します。次に、 [ポート番号] ボックスに「 135 」と入力し、 [TCP]をクリックにします。

    重要

    Integration Services サービスは常にポート 135 を使用します。 別のポートを指定することはできません。

  6. [ポートの追加] ダイアログ ボックスで、必要に応じて [スコープの変更] をクリックし、既定のスコープを変更できます。

  7. [スコープの変更] ダイアログ ボックスで、 [ユーザーのネットワーク (サブネット) のみ] を選択するか、カスタムの一覧を入力し、 [OK]をクリックします。

  8. [OK] をクリックして [ポートの追加]ダイアログ ボックスを閉じます。

  9. [OK] をクリックして [Windows ファイアウォール]ダイアログ ボックスを閉じます。

    注意

    Windows ファイアウォールを構成するために、この手順では、コントロール パネルの [Windows ファイアウォール] を使用します。 [Windows ファイアウォール] では、現在のネットワークの場所のプロファイルに対してのみファイアウォールを構成できます。 ただし、Windows ファイアウォールは、 netsh コマンド ライン ツール、またはセキュリティが強化された Windows ファイアウォールの Microsoft 管理コンソール (MMC) スナップインを使用して構成することもできます。 これらのツールの詳細については、「 SQL Server のアクセスを許可するための Windows ファイアウォールの構成」を参照してください。