Python 在何处保存oAuth应用程序的用户密钥和用户密钥

Python 在何处保存oAuth应用程序的用户密钥和用户密钥,python,svn,twitter,oauth,Python,Svn,Twitter,Oauth,我正在开发一个python程序,它作为svn提交后钩子运行。它会将您的提交消息发布到Twitter 它工作得很好,但我刚刚意识到一些事情。我的CONSUMER_SECRET和CONSUMER_KEY就在源代码中。那可能是件坏事 我是python新手,实际上我只是将其他人的程序从基本HTTP身份验证转换为oAuth。我经常在推特上发帖 那么,如何安全地保存消费者oAuth密钥,以便人们无法查看它们 编辑:是否可以将我的密钥保存在我的应用程序可以读取但用户无法读取的位置?我希望每个使用这个钩子的人都

我正在开发一个python程序,它作为svn提交后钩子运行。它会将您的提交消息发布到Twitter

它工作得很好,但我刚刚意识到一些事情。我的CONSUMER_SECRET和CONSUMER_KEY就在源代码中。那可能是件坏事

我是python新手,实际上我只是将其他人的程序从基本HTTP身份验证转换为oAuth。我经常在推特上发帖

那么,如何安全地保存消费者oAuth密钥,以便人们无法查看它们


编辑:是否可以将我的密钥保存在我的应用程序可以读取但用户无法读取的位置?我希望每个使用这个钩子的人都在使用我的应用程序,所以在他们的推特上写着“通过我的应用程序”。

将这些内容保存在设置文件中,您不会以任何方式提交到版本控制系统或代码库。而是为文件提供一个模板,并提供有关如何使用所需设置(如应用程序凭据)填充文件的文档。

他说的!始终将配置文件存储在系统上web上不可用的位置,但应用程序代码仍可以读取它!当人们实现你的钩子时,他们应该把他们自己的消费者秘密和密钥放在他们的版本中,以一种你希望那时已经记录下来的方式。当然,只要你运行python程序,应用程序凭据就必须存在于代码中。哦,那么我应该要求人们制作自己的Twitter应用程序并使用自己的用户密钥吗?我希望他们都能使用我的,所以在他们的推特上会显示“via”,并带有应用程序的链接。对,也就是说,如果钩子必须在与svn实例相同的服务器上运行。您可以设置一个钩子,该钩子调用您托管的API,该API反过来会发布到twitter。但是,如果你打算以任何方式发布代码,我建议不要包括你的凭据(它们可以用于任何目的,任何应用程序,在你的控制之外)。谢谢。制作自己的API听起来是个好主意,让我学习如何制作API。我可能还应该撤销我的当前密钥,因为它在源代码>中。