linux - 在生产环境中运行 CLI 时保持密码抽象
问题描述
我希望能够pt-online-schema-change
在我的生产服务器上使用命令行工具 ( )。输入数据库密码有两种选择,可以直接在命令中输入,即
pt-online-schema-change --alter "ADD COLUMN c1 INT" D=sakila,t=actor,u=root --pasword=securepassword
另一种选择是做
pt-online-schema-change --alter "ADD COLUMN c1 INT" D=sakila,t=actor,u=root --ask-pass
这将提示用户输入密码。在这两种情况下,用户都需要访问生产数据库密码。是否有任何合理的方法可以将密码抽象出来,或者是否有可能更有意义的不同方法?
解决方案
是否有任何合理的方法可以将密码抽象出来,或者是否有可能更有意义的不同方法?
是的:Kerberos。
MySQL 支持 Kerberos。您想检查 Percona 中的 Kerberos 支持(我从未使用过。)如果它支持它,那么“所有”您需要做的就是设置 Kerberos。
更一般地说,您需要一种将登录凭据传递给 DBMS 后端的方法。通过网络以明文形式发送密码是 telnet(1) 和 ftp(1) 名不副实的原因。
推荐阅读
- nlp - 我正在寻找错字/拼写错误的字符级别统计信息
- javascript - 更改 CSS 项的值
- r - 如何根据 R 中先前变量的条件创建新变量?
- android - 将 Paging 3 alpha 更新为稳定导致索引问题 Android
- angular - npm i @devexpress/analytics-core 安装错误
- reactjs - 在 github 存储库上进行 React 登录是否有简单的工作?
- reactjs - 使用 react-dnd 时,如何指定 DragPreviewImage 的 HTML 属性?
- fragment - 带有navhostfragment的BottomNavigationView不显示片段,android?
- r - R中重复的数据框行
- javascript - 在 Next Js 的内部页面的 getStaticProps 函数中找不到文件路径