使用密码文件选项的 sqoop 和密码加密
Posted
技术标签:
【中文标题】使用密码文件选项的 sqoop 和密码加密【英文标题】:sqoop and password encryption using password-file option 【发布时间】:2014-05-28 16:21:32 【问题描述】:我正在使用 sqoop-1.4.3-cdh4.6.0.jar,我想知道 --password-file 选项在该版本中是否可用。 如果是的话,有人可以给我一个如何调用加密过程的例子吗?提供一个命令示例,我可以看到cdh4.6.0已经引入了补丁,但不确定sqoop 1.4.3是否可以使用。
【问题讨论】:
【参考方案1】:鉴于https://issues.apache.org/jira/browse/SQOOP-1223,它可能不在 CDH 4.6.0 中。我会升级到 Sqoop 1.4.5 来获得这个功能。
这是一个 Sqoop 命令的快速示例:
sqoop import \
-Dorg.apache.sqoop.credentials.loader.class=org.apache.sqoop.util.password.CryptoFileLoader \
-Dorg.apache.sqoop.credentials.loader.crypto.passphrase=sqoop2 \
--connect jdbc:mysql://example.com/sqoop \
--username sqoop \
--password-file file:///tmp/pass.enc \
--table tbl
需要注意的重要参数有:
-
org.apache.sqoop.credentials.loader.class - 凭据加载器
org.apache.sqoop.credentials.loader.crypto.alg – 用于解密文件的算法(默认为 AES/ECB/PKCS5Padding)。
org.apache.sqoop.credentials.loader.crypto.salt – 用于派生带有密码短语的密钥的 salt(默认为 SALT)。
org.apache.sqoop.credentials.loader.crypto.iterations – PBKDF2 迭代次数(默认为 10000)。
org.apache.sqoop.credentials.loader.crypto.salt.key.len – 派生密钥长度(默认为 128)。
org.apache.sqoop.credentials.loader.crypto.passphrase 用于派生密钥的密码。
您还可以使用其他几个选项more。
【讨论】:
如何制作 pass.enc?以上是关于使用密码文件选项的 sqoop 和密码加密的主要内容,如果未能解决你的问题,请参考以下文章