次の方法で共有


Integration Services のロール (SSIS サービス)

SQL Server Integration Services には、パッケージへのアクセスを制御するための、db_ssisadmin3 つの固定データベース レベルロール、db_ssisltduserおよびdb_ssisoperatorが含まれています。 ロールは、SQL Serverのデータベースにmsdb保存されているパッケージにのみ実装できます。 パッケージにロールを割り当てるには、 SQL Server Management Studioを使用します。 ロールの割り当てがデータベースに msdb 保存されます。

読み取りアクションと書き込みアクション

次の表で、Windows の読み取りおよび書き込みアクションと、 Integration Servicesでの固定データベース レベル ロールの読み取りおよび書き込みアクションについて説明します。

Role 読み取りアクション 書き込みアクション
db_ssisadmin

または

sysadmin
独自のパッケージを列挙する。

すべてのパッケージを列挙する。

独自のパッケージを表示する。

すべてのパッケージを表示する。

独自のパッケージを実行する。

すべてのパッケージを実行する。

独自のパッケージをエクスポートする。

すべてのパッケージをエクスポートする。

SQL Server エージェント内のすべてのパッケージを実行する。
パッケージをインポートする。

独自のパッケージを削除する。

すべてのパッケージを削除する。

独自のパッケージのロールを変更する。

すべてのパッケージのロールを変更する。



**大事な** db_ssisadmin ロールとdc_admin ロールのメンバーは、特権を sysadmin に昇格できる場合があります。 このような特権の昇格が発生するのは、それらのロールが Integration Services パッケージを変更でき、 Integration Services エージェントの sysadmin セキュリティ コンテキストを使用して SQL Server で SQL Server パッケージを実行できるためです。 メンテナンス プラン、データ コレクション セット、およびその他の Integration Services パッケージの実行時にこの特権の昇格を防ぐには、特権が制限されたプロキシ アカウントを使用するようにパッケージを実行する SQL Server エージェント ジョブを構成するか、db_ssisadmin ロールおよび dc_admin ロールには sysadmin メンバーのみを追加するようにします。
db_ssisltduser 独自のパッケージを列挙する。

すべてのパッケージを列挙する。

独自のパッケージを表示する。

独自のパッケージを実行する。

独自のパッケージをエクスポートする。
パッケージをインポートする。

独自のパッケージを削除する。

独自のパッケージのロールを変更する。
db_ssisoperator すべてのパッケージを列挙する。

すべてのパッケージを表示する。

すべてのパッケージを実行する。

すべてのパッケージをエクスポートする。

SQL Server エージェント内のすべてのパッケージを実行する。
なし
Windows 管理者 実行中のすべてのパッケージの実行時の詳細を表示する。 現在実行中のパッケージをすべて停止する。

sysssispackages テーブル

sysssispackages テーブルmsdbには、SQL Serverに保存されたパッケージが含まれています。 詳細については、「sysssispackages (Transact-SQL)」を参照してください。

sysssispackages テーブルには、パッケージに割り当てられるロールに関する情報が含まれている列があります。

  • readerrole 列は、パッケージへの読み取りアクセスが可能なロールを指定します。

  • writerrole 列は、パッケージへの書き込みアクセスが可能なロールを指定します。

  • ownersid 列には、パッケージを作成したユーザーの一意なセキュリティ識別子が格納されています。 この列により、パッケージの所有者が定義されます。

アクセス許可

既定では、 と db_ssisoperator固定データベース レベルのdb_ssisadminロールのアクセス許可と、パッケージを作成したユーザーの一意のセキュリティ識別子がパッケージの閲覧者ロールに適用され、ロールのアクセス許可とパッケージを作成したユーザーのdb_ssisadmin一意のセキュリティ識別子がライター ロールに適用されます。 パッケージへの読み取りアクセス権を持つには、ユーザーが 、db_ssisltduser、または db_ssisoperator ロールのメンバーdb_ssisadminである必要があります。 書き込みアクセス権を持つには、ユーザーがロールの db_ssisadmin メンバーである必要があります。

パッケージへのアクセス

固定データベース レベル ロールは、ユーザー定義ロールと組み合わせて使用されます。 ユーザー定義ロールとは、ユーザーが SQL Server Management Studio で作成するロールのことで、権限をパッケージに割り当てるために使用します。 パッケージにアクセスするには、ユーザーは、ユーザー定義ロールおよび関連する Integration Services 固定データベースレベル ロールのメンバーである必要があります。 たとえば、ユーザーがパッケージに割り当てられている AuditUsers ユーザー定義ロールの db_ssisadminメンバーである場合、パッケージへの読み取りアクセス権を持つには、 ロール、 db_ssisltduserロール、または db_ssisoperator ロールのメンバーである必要があります。

ユーザー定義ロールをパッケージに割り当てていない場合、パッケージへのアクセスは固定データベース レベル ロールによって決定されます。

ユーザー定義ロールを使用する場合は、パッケージに msdb 割り当てる前に、それらをデータベースに追加する必要があります。 SQL Server Management Studioでは、新しいデータベース ロールを作成できます。

Integration Services データベース レベルのロールは、msdb データベース内の Integration Services システム テーブルに対する権限を付与します。

データベース エンジンに接続してデータベースにアクセスするには、SQL Server (MSSQLSERVER サービス) を開始するmsdb必要があります。

パッケージにロールを割り当てるには、次のタスクを完了する必要があります。

  • オブジェクト エクスプローラーを開いて Integration Services に接続する

    SQL Server Management Studioを使用してパッケージにロールを割り当てるには、 SQL Server Management Studio のオブジェクト エクスプローラーを開き、 Integration Servicesに接続する必要があります。

    Integration Services サービスを起動してから、 Integration Servicesに接続します。

  • リーダー ロールおよびライター ロールをパッケージに割り当てる

    リーダー ロールおよびライター ロールをそれぞれのパッケージに割り当てることができます。