码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • sqoop 脚本密码管理


    1:背景

    生产上很多sqoop脚本的密码都是铭文,很不安全,找了一些帖子,自己尝试了下,记录下细节,使用的方式是将密码存在hdfs上然后在脚本里用别名来替代。

    2:正文

    第一步:创建密码对应的别名。

    1. hadoop credential create mytest(你的密码别名,随便起就好,或者根据公司的规范来) -provider jceks://hdfs/tmp/test1011
    2. 注意:运行上述命令的时候会提示让你输入密码:直接输入就好了,这个密码是你的数据库的真实密码
    3. 解析下:
    4. jceks://hdfs/tmp/test1011 这里都是自由发挥,或者根据公司的规范来
    5. 1:jceks://hdfs 是固定的 因为我们放到hdfs 如果说放到本地就换为file,推荐放到hdfs
    6. 2:/tmp/test1011 这部分是hdfs上的文件,不用事先创建,没有的话会自动创建


    第二步:直接使用就好了

    1. sqoop import -Dhadoop.security.credential.provider.path=jceks://hdfs/tmp/test1011  --connect 'jdbc:mysql://xxx.xxx.20.9:3306/xxx' --username mdreadonly --password-alias 就是你上述步骤create后面那个别名 --table xxx_opportunity --target-dir /tmp/textfiles
    2. 解析下:
    3. 1: -Dhadoop.security.credential.provider.path= 这些都是固定的
    4. 2: jceks://hdfs/tmp/test1011 这个是第一步里的内容,就是你的真实密码存放的位置
    5. 3: --password-alias 这里就是你的密码的别名

    我刚开始想走个捷径:我没有把import加上,运行的 list-database这个指令,来测试这个方式是否类型,一直报错:

    1. sqoop -Dhadoop.security.credential.provider.path=jceks://hdfs/tmp/test1011 list-databases --connect 'jdbc:mysql://xxxxx:3306/bss' --username mdreadonly --password-alias mytest
    2. 这样不行的

    报错如下:

    归根结底是姿势不对,就得吧import这些都给加上才可以。

  • 相关阅读:
    鸿蒙原生应用元服务开发-位置服务申请权限
    【Spring Security】安全框架学习(二)
    TIPC Getting Started6
    基于STM32G431嵌入式学习笔记——八、PWM脉冲输出(基于第12届蓝桥杯节选PA7作引脚)
    QTableWidget的初始化、批量添加数据、批量添加控件、分页跳转、定位到指定行、添加/插入/删除行的功能实现
    概率论知识点总结(上)
    微信公众号消息推送教程
    58-DOS与DDOS分析(正常TCP会话与SYN Flood攻击、ICMP Flood 攻击、SNMP放大攻击等)
    Linux Centos系统 磁盘分区和文件系统管理 (深入理解)
    VR虚拟现实在室内设计仿真教学中的应用演示
  • 原文地址:https://blog.csdn.net/weixin_36630761/article/details/133776842
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号