2014-12-02 23 views
0

我使用Network Associates PGP 6.5.8命令行实用程序解密传入文件以便在SSIS作业中导入。这是一个非常古老的遗留系统的一方,所以我不能改变解密方法。运行Network Associates来自SSIS的PGP命令行

手册密码:

如果我创建在SSIS一个新Execute Process Task并通过以下命令行参数,然后PGP要求一个passpharse解锁密钥。手动提供密码允许PGP成功解密文件。

-o L:\xxxx\xxxxx\MyFile_decrypted.xml L:\xxxx\xxxxx\MyFile_Encrypted.xml +pubring=L:\pgp\keyring\pubring.pkr +secring=L:\pgp\keyring\secring.skr +force 

enter image description here

自动口令:

望着文档,如下面,我需要使用--passphrase参数

enter image description here

提供密钥enter image description here

更改参数添加密码

-o L:\xxxx\xxxxx\MyFile_decrypted.xml L:\xxxx\xxxxx\MyFile_Encrypted.xml +pubring=L:\pgp\keyring\pubring.pkr +secring=L:\pgp\keyring\secring.skr +force --passphrase abcdef 

我的问题是,我需要提供密钥,作为命令行参数的一部分,到目前为止,这是行不通的。如果我通过SSIS运行,则会出现进程错误,the process exit code was "5" while the expected was "0".通过命令行直接运行也会导致类似的错误。

提供密码参数的正确语法是什么?

回答

0

看起来像我有一个较新版本的文档。

6.5.x的文档使用-z参数传递密码。

-z Identifies the passphrase on the command line. (From Page 13) 

更改我的参数如下解决了问题。

-o L:\xxxx\xxxxx\MyFile_decrypted.xml L:\xxxx\xxxxx\MyFile_Encrypted.xml +pubring=L:\pgp\keyring\pubring.pkr +secring=L:\pgp\keyring\secring.skr +force -z abcdef