mal*_*dle 6 c# encryption mono password-encryption libgit2sharp
我已经环顾四周,因为我不是安全或加密专家,我仍然对如何在我的程序中实现加密感到困惑.我需要一台服务器登录其gitHub帐户以更新带有特殊标头的代码文件.我现在唯一的挂断是如何存储/检索服务器的凭据.
PushOptions push = new PushOptions
{
Credentials =
new UsernamePasswordCredentials
{
Password = "password",
Username = "Username"
}
};
Run Code Online (Sandbox Code Playgroud)
我如何加密这些凭据以进行存储?我知道将它们存储在代码中是一个坏主意,就像示例那样,并且将它们存储在未加密的任何文件中也是一个坏主意.
此外,我想要的唯一用户交互是在服务器上编译和设置程序时发生的.它是Linux服务器上的cronjob,以防万一.需要注意的另一个细节是,我使用的是libgit2sharp,但之前使用的是bash脚本和ssh进行身份验证以进行测试.
我发现的最好的解决方案就是简单地将它们放入日志文件中,因为服务器已经受到密码保护,并且我可以做到这一点,以便只有一个用户(我猜是 root)能够读取它们,但很少有人知道服务器存在,并且只有一个人应该知道确切地在哪里找到它们并拥有这样做的凭据。
尽管缺乏安全性,但它达到了目的,并且仍然具有足够的安全性。如果不受欢迎的人获得了凭据,很容易重置几个密码,这样他们就无法访问 gitHub 帐户。