【发布时间】:2020-05-21 20:21:16
【问题描述】:
所以我试图从我的 git 存储库中的特定目录中的 secrets.json 文件中传递加密数据,该文件被 .gitignore 文件忽略。我安装了 gpg 并能够实际加密文件,并且在我将 *.gpg 属性添加到我的 .gitignore 文件时也将其忽略在同一目录中。但是,我不知道如何从加密的 JSON 文件中传递加密数据。
我的 Json 文件如下所示,标题为 secrets.json:
{
"user": {
"name": "username",
"password": "password"
}
}
当我在基于 Windows 的机器上使用 gpg 对其进行加密时:
gpg --output secrets.gpg --encrypt .\secrets.json
这会在该目录中创建secrets.json 文件的加密 json 文件。我想通过 Python 和 Selenium 将加密数据传递给网站。我尝试使用的代码位于以下link:
我有一个特定的部分可以正确发送 json:
import json
with open('secrets.json','r') as f:
config = json.load(f)
但是我该如何处理已加密的secrets.gpg?
我不喜欢在没有加密的情况下将平面文件放在系统中。
使用gpg 命令创建文件,如果我把它找出来,它会是这样的:
…☻♀♥þÁã/æ#5☺☼ÿPÒÁÑg*af˜…‘o►⌂S.▬qd„huÖÏÜr∟ /QVuÆóë♀*3♠ž%♂ÅB☻jKÓ£+û☻¦~q~FyÎïê ☺↓Dlœ*Mgt#ɤx“gú™Ò´ee2f∟y•š„ãe@' ► 2ì4x↑hpòCž½↔¾I‡[¬Ék—F_¹]£ÂO—A♀„NÉ·/aLÄÆÚ☻òHš<›Eò£z'äÇf◄WÐr¨Cµw.→u…j⌂⌂š¯…kS↕={˜→)s~ŸÊ‡Ä^‰6h•Or>♀#È¿¿Ò"♥ºFEu^F…×f*-Bðüƒü/9
gë›t†wmî7ct§þwv]Úf:`Ì~ñ®+˜š↕¬Þí↑·O=ç<ýL↕7übV )D→.£×Ð☻»♫à‚ŠÃǶÜÿ³H”X~q” ÀOI0kÌù„¥È½Â↓b)᫬ñ⌂ÍÄ3ð¿ÀùÁà,‹A→Æ▼X0↑♣Ž↔xE‡ÿ®2Á♥aÃøÚì▲B\WSä♥ú☺dþ8ȵi8{↑(¢ËXác☼éqÍu+ôŒDA↑♣Ÿ¥→¼I1n↨rN¦ÿô0r!"ªÕ*Á‚´¡↨²€ÏXWz*³µún1u(„ÞäÇO:$iÖ(×ÃÍDÒEòp↕²Q☻pé♫6”.‰q¹ý@ÓÒAUägÊÊ#@^GQ☺;-§7™Ð±”ø›↕V@SºVK☻HãÒ,↓€W²`⌂CºŠYÕZòø®ÄwW
¯/☺Ħëa"³+(ŠM~^TÕ0Ñ↕‼ÈßZV}Q£FEû´ÏuußaæT☻ƽ„Ý?†ñ↑~↕GÎ↓2”Z£däÿÌi`m‹÷ ♂0&Õž#<”#ËZ‰§Ì§µ
☻ˆÜ¬8÷§2µù®ŒËïM×▬òkÊü+‼Í–
我意识到这是随机的,因此对于将使用 gpg 重现该问题的其他任何人来说,它可能看起来不同。
【问题讨论】:
-
文件已加密。当然,您必须对其进行解密才能访问内容。
-
有没有办法通过不通过 gpg 输出到文件的实时解密过程来传递用户凭据?
-
为什么要加密整个文件?而是加密用户名和/或密码。然后使用 python 发送 secrets.json。
-
您是否考虑过使用非专有加密来代替 gpg?
-
这个文件位于 Windows 服务器上,我不相信 Windows 的安全性,就像我相信 Linux 一样。此外,我们必须保持 HIPPA 和 FERPA 合规性,所以我试图从加密文件和非加密文件中传递数据。我确实想过只有一个
gpg --decrypt .\secrets.gpg命令可以将文件保存到特定的输出,然后在进程结束时删除文件。我想这可能是一种方式。
标签: python selenium encryption gnupg browser-automation