【问题标题】:how do I hide curl arguments from command line?如何从命令行隐藏 curl 参数?
【发布时间】:2018-11-21 23:30:04
【问题描述】:

我有一个运行此命令的 cronjob:

curl -s -G -H Authorization: Bearer ${mysecret} ${myurl}

我是个叮当——我刚刚意识到每个人在发出“ps -ef | grep curl”时都可以看到我的密码。我尝试使用 -d 选项,但没有成功。你知道如何隐藏 $mysecret 的值吗?

【问题讨论】:

  • 你可以放弃 shell 和 curl 并使用像 python 或 perl 这样具有 http 用户代理库的语言。
  • 将命令放入脚本中,并从 cronjob 中调用脚本。
  • @TravisClarke 这不起作用,人们仍然可以通过运行 ps 命令看到 curl 密码。

标签: linux shell curl


【解决方案1】:

curl - Read headers from file。你有两个选择。

  1. 对于 curl 的新版本(7.55 和更高版本):

    curl -H @文件名 ${myurl}

    filename 存放标头和秘密:授权:Bearer mysecret

  2. 对于旧版本,创建一个配置文件:

    curl -K 文件名 ${myurl}

    其中 filename 包含选项:-H "Authorization: Bearer mysecret"

【讨论】:

  • 请注意,第二个选项中的双引号很重要。当我跳过它们或使用单引号时,身份验证失败。
猜你喜欢
  • 2013-03-30
  • 2016-08-04
  • 1970-01-01
  • 2011-09-27
  • 2012-11-02
  • 1970-01-01
  • 2012-07-11
  • 2020-09-08
  • 1970-01-01
相关资源
最近更新 更多