web-dev-qa-db-ja.com

SSISの問題保護されたXMLノードの復号化に失敗しました

Ftpサーバーからftpプルファイルを取得してローカルドライブに保存するSSISパッケージを作成しましたが、この問題が発生します。

同じエラーメッセージで警告しか表示されませんでしたが、今日はジョブが失敗します。

メッセージ:

ユーザーとして実行:cam\Package.Runner。 Microsoft(R)SQL Server Execute Package Utilityバージョン10.0.4000.0(64ビット用)Copyright(C)Microsoft Corp1984-2005。全著作権所有。開始:10:00:00 AMエラー:2012-02-15 10:00:00.61コード:0xC0016016ソース:説明:保護されたXMLノード "DTS:Password"の復号化に失敗しました。エラー0x8009000B "キーは指定された状態で使用できません。 。」。この情報へのアクセスが許可されていない可能性があります。このエラーは、暗号化エラーがある場合に発生します。正しいキーが使用可能であることを確認します。終了エラーエラー:2012-02-15 10:00:00.62コード:0xC0016016ソース:説明:保護されたXMLノード「DTS:Property」の復号化に失敗しました。エラー0x8009000B「キーは指定された状態で使用できません。」この情報へのアクセスが許可されていない可能性があります。このエラーは、暗号化エラーがある場合に発生します。正しいキーが使用可能であることを確認します。終了エラーエラー:2012-02-15 10:00:33.53コード:0xC0029183ソース:プリンシパルバランスファイルFTP Get FTPタスクの説明:「/ Concerto/Virtus_Reports/Concertoプリンシパルバランスレポート* .pdf」で表されるファイルが存在しません。終了エラーDTExec:パッケージの実行でDTSER_FAILURE(1)が返されました。開始:10:00:00 AM終了:10:00:33 AM経過:33.088秒。パッケージの実行に失敗しました。ステップは失敗しました。

9
Neo

この問題は、保護レベルプロパティを設定することで修正できます

Protection Level : DontSaveSensitive

このプロパティを使用すると、パッケージはパスワードで保護されず、別のサーバーが他の資格情報を使用して任意のジョブにアクセスして実行できます。

9
Anup Kulkarni

パッケージをSQLServerにインポートするときに、保護レベルを選択します。

1-機密データを保存しないでください。

または

2-アクセス制御はサーバーストレージとロールに依存します。

SSISプロジェクトパッケージのプロパティのスクリーンショット:

enter image description here

6
Bassam Gamal

オプション「EncryptSensitiveWithPassword」を使用してパッケージを保存してみてください。

ステップ-1:FTP接続マネージャーを右クリックし、そのプロパティ([編集]ボタンではなく一番下)に移動して、パスワードを入力します。

ステップ-2:EncryptSensitiveWithPasswordを使用してパッケージを保存します。

ステップ-3:SQLジョブエージェントで次のようにコマンドリングを編集します/ FILE "C:\ Fullpath of SSIS pkg.dtsx"/DECRYPT password

1
Veer

FTP接続についても同じエラーメッセージが表示されました。これは、作成した資格情報とは異なる資格情報でBIDSを実行しているときにパッケージを開いたことが原因だと思います。

不格好な回避策として、FTP接続を削除して再作成しました。その後はうまくいきました。

1
JohnN

パッケージをビルドしてデプロイする前に、ソリューションのプロパティを次のように変更したことを確認してください。

   Run64BitRuntime = False
1
user2820151

SSISジョブエラーの主な部分は

"0xC0029183ソース:プリンシパルバランスファイルFTP Get FTPタスクの説明:"/Concerto/Virtus_Reports/Concertoプリンシパルバランスレポート* .pdfで表されるファイル "は存在しません。終了エラーDTExec:パッケージの実行でDTSER_FAILUREが返されました(1)開始:10:00:00 AM終了:10:00:33 AM経過:33.088秒。パッケージの実行に失敗しました。」

SSISパッケージで構成したパスにPDFファイルがないようです。インポートするパスとPDFファイルを確認してください。よろしく、ブラニスラフ

1
Branislav

これは私のために働いたステップです。

  1. パッケージを別のフォルダにコピーしました(念のため)
  2. 保護レベルをEncryptAllWithPasswordに設定し、「テスト」のようなパスワードを指定します
  3. 作成者名を私が作成した別のユーザーに変更しました
  4. ジョブを再作成しました
  5. ジョブを実行するためのプロキシを作成しました

働いた!

1
Miki G

FTP接続の場合、FTPタスクの前に1つのスクリプトタスクを作成し、そのためのパスワードを設定するだけです。

ConnectionManager FTPConn;

FTPConn = Dts.Connections ["FTP Connection Manager"];

FTPConn.Properties ["ServerPassword"]。SetValue(FTPConn、Dts.Variables ["FtpPwd"]。value);

OLE DBの場合は、OLEDB接続の接続文字列にパスワードを追加するだけです。

1
HARSHIT RATHORE