jdbc - Kafka Connect,明文的 JDBC 连接器密码。如何避免?
问题描述
我有一个我正在使用的 jdbc 源连接器,并且我一直在使用 Postman 来测试和设置它。db 连接的密码是明文,只要我是唯一看到它的人就可以了。
"config": {
"connector.class": "io.confluent.connect.jdbc.JdbcSourceConnector",
"connection.url": "jdbc:db2://db2server.mycompany.com:4461/myDB",
"connection.user: "dbUser",
"connection.password": "DBPASSinClearText!",
"dialect.name": "Db2DatabaseDialect",
"mode": "timestamp",
"query": "select fname, lname, custId, custRegion, lastUpdate from CustomerMaster",
"timestamp.column.name": "lastUpdate",
"table.types": "TABLE",
"topic.prefix": "master.customer"
}
}
在生产中,部署团队是设置配置的人。有没有办法对此进行加密,所以我不必与该团队共享明文密码?
解决方案
是的,您可以使用外部化凭据。这是通过KIP-297在 Apache Kafka 2.0 中添加的。
您可以使用外部凭据提供程序(一个基本示例是平面文件),然后代替:
"connection.password": "DBPASSinClearText!",
你会有类似的东西:
"connection.password": "${file:/data/foo_credentials.properties:FOO_PASSWORD}",
这是一个仅使用平面文件的示例,并在此处的文档中完整阅读有关功能的更多信息
推荐阅读
- git - git clone - 分离的 HEAD - 获取克隆的标签名称
- typescript - What is equivalent interface to the "AppThunk" type from redux docs?
- angular - 使用 Angular ErrorHandler 并映射错误结果
- android - 如何从现有的 react-native 项目生成 AndroidManifest.xml?
- python - Python无法将字符串中的utf-8解码串行数据转换为浮点数
- sql - 按第一行进行 PROC SQL/SQL 多连接
- javascript - 反应:将上传的数组存储到全局变量中?
- javascript - 空闲 x 秒后触发功能
- asp.net-mvc - 如何使用表 aspNetUsers 在 ASP.NET MVC 5 中创建管理员用户
- reactjs - 使用 React 在初始页面加载时自动尝试登录,关于如何做到这一点的想法?