パッケージの保護レベルを設定または変更する
パッケージの内容やパッケージに含まれているパスワードなどの機密データへのアクセスを制御するには、ProtectionLevel プロパティの値を設定します。 プロジェクトをビルドするには、プロジェクトに含まれるパッケージの保護レベルがプロジェクトと同じである必要があります。 ProtectionLevel プロパティ設定をプロジェクトで変更する場合は、パッケージのプロパティ設定を手動で更新する必要があります。
パッケージのライフ サイクルの各段階のパッケージに適した ProtectionLevel 設定を判断する方法の詳細については、「パッケージ内の機微なデータへのアクセス制御」を参照してください。 Integration Services のセキュリティ機能の概要については、「セキュリティの概要 (Integration Services)」を参照してください。
このトピックの手順では、SQL Server データ ツール (SSDT) または dtutil コマンド プロンプト ユーティリティを使用して ProtectionLevel プロパティを変更する方法について説明します。
注 |
---|
このトピックの手順に加えて、通常、パッケージのインポートまたはエクスポート時にパッケージの ProtectionLevel プロパティを設定または変更できます。 また、SQL Server インポートおよびエクスポート ウィザードを使用してパッケージを保存するときにも、パッケージの ProtectionLevel プロパティを変更できます。 |
SQL Server データ ツールでパッケージの保護レベルを設定または変更するには
「パッケージの保護レベルの設定」で ProtectionLevel プロパティに使用可能な値を確認し、パッケージに適した値を判断します。
SQL Server データ ツール (SSDT) で、パッケージが含まれている Integration Services プロジェクトを開きます。
SSIS デザイナーでパッケージを開きます。
[プロパティ] ウィンドウにパッケージのプロパティが表示されない場合は、デザイン画面をクリックします。
[プロパティ] ウィンドウの [セキュリティ] グループの [ProtectionLevel] プロパティで、適切な値を選択します。
パスワードを必要とする保護レベルを選択する場合は、[PackagePassword] プロパティの値としてパスワードを入力します。
[ファイル] メニューの [選択されたファイルを上書き保存] をクリックして、変更したパッケージを保存します。
コマンド プロンプトでパッケージの保護レベルを設定または変更するには
「パッケージの保護レベルの設定」で ProtectionLevel プロパティに使用可能な値を確認し、パッケージに適した値を判断します。
「dtutil ユーティリティ」で Encrypt オプションのマッピングを確認し、選択した ProtectionLevel プロパティの値として使用するのに適した整数を判断します。
コマンド プロンプト ウィンドウを開きます。
コマンド プロンプトで、ProtectionLevel プロパティを設定するパッケージが格納されているフォルダーに移動します。
次の手順に示す構文の例では、このフォルダーは現在のフォルダーであると想定しています。
次のいずれかの例のようなコマンドを使用して、パッケージの保護レベルを設定または変更します。
次のコマンドでは、ファイル システム内の個々のパッケージの ProtectionLevel プロパティがレベル 2 の [機微なデータをパスワードで暗号化する] に設定され、パスワードが "strongpassword" に設定されます。
dtutil.exe /file "C:\Package.dtsx" /encrypt file;"C:\Package.dtsx";2;strongpassword
次のコマンドでは、ファイル システム内の特定のフォルダーに存在するすべてのパッケージの ProtectionLevel プロパティがレベル 2 の [機微なデータをパスワードで暗号化する] に設定され、パスワードが "strongpassword" に設定されます。
for %f in (*.dtsx) do dtutil.exe /file %f /encrypt file;%f;2;strongpassword
バッチ ファイルで同様のコマンドを使用する場合は、ファイルのプレースホルダー「%f」をバッチ ファイルでは「%%f」と入力します。