如何在Python脚本中隐藏个人数据

时间:2016-07-07 15:03:11

标签: python git

我需要将Python脚本推送到Git repo。脚本包含包含USER_NAME = "some_name"USER_PASS = "some_password"等个人数据的变量。其他用户可以访问此数据。我想要隐藏这些数据。

我找到了以下方法:

  • 使用data.pyUSER_NAME = "some_name"
  • 创建单独的USER_PASS = "some_password"模块
  • 导入一次以生成已编译的版本 - data.pyc
  • 更改主脚本源:变量应该像

    一样可访问

    import data

    username = data.USER_NAME

    password = data.USER_PASS

  • 删除data.py并将data.pyc推送至repo

这很有希望,但实际上data.pyc中的数据显示为???some_namet???some_passwords???,仍然可以识别为用户名和密码。

那么在Python脚本中隐藏数据的最佳做法是什么?

3 个答案:

答案 0 :(得分:2)

包含在git repo代码中以从环境变量中读取这些内容。在目标计算机上,设置这些环境变量。这可以通过手工完成,也可以使用您不在回购中的脚本完成。在自述文件中包含说明

答案 1 :(得分:1)

尝试使用YAML文件,而不是将其推送到您的仓库,例如here。您可以使用python模块yaml来读取数据。

答案 2 :(得分:1)

您永远不应将敏感信息放入代码中,也不应将其存储到公共存储库中。

最好遵循Joel Goldstick的建议并修改您的代码以获取私人来源的密码,例如本地环境变量或本地模块。

尝试使用Google搜索“python商店敏感信息”来查看一些想法(以及相关问题)。