使用密码文件选项进行sqoop和密码加密

Rom*_*ina 4 sqoop

我正在使用sqoop-1.4.3-cdh4.6.0.jar,我想知道--password-file选项是否在该版本中是可用的.如果是,有人可以给我一个如何调用加密过程的例子吗?提供一个命令示例,我可以看到该补丁已经与cdh4.6.0一起引入,但不确定sqoop 1.4.3是否可以使用它.

小智 5

鉴于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
Run Code Online (Sandbox Code Playgroud)

需要注意的重要参数是:

  1. org.apache.sqoop.credentials.loader.class - 凭据加载程序
  2. org.apache.sqoop.credentials.loader.crypto.alg - 用于解密文件的算法(默认为AES/ECB/PKCS5Padding).
  3. org.apache.sqoop.credentials.loader.crypto.salt - 用于使用密码短语导出密钥的salt(默认为SALT).
  4. org.apache.sqoop.credentials.loader.crypto.iterations - PBKDF2迭代次数(默认值为10000).
  5. org.apache.sqoop.credentials.loader.crypto.salt.key.len - 派生密钥长度(默认为128).
  6. org.apache.sqoop.credentials.loader.crypto.passphrase用于派生密钥的密码短语.

有提供给您多种其他选择更多.

  • 您如何制作pass.enc? (2认同)