gpt4 book ai didi

r - 如何在 R 和服务器之间建立安全的密码保护连接

转载 作者:行者123 更新时间:2023-12-04 12:54:15 24 4
gpt4 key购买 nike

我编辑了这个问题以澄清我为什么再次问这个问题(我的 Google-Fu 很弱,发现这些相当旧的 123 仅在发布后几乎重复)。

我在野外看到的访问受密码保护的资源的方法。

  • 脚本中的纯文本存储(可能通常最终被共享,或者在 Dropbox 中)
  • 配置脚本中的明文存储
  • 你可以做password = readline("Password: ")但当然密码在控制台中以明文形式结束(因此在控制台日志等中),因此不妨将其存储在明文配置文件中。
  • 我找到了 little trick避免在终端中显示密码,但运行 system("stty -echo")在 OS X Mavericks 上导致错误 stty: stdin isn't a terminal ,所以我想它不会特别便携。
  • Using tcltk .具有使 Rstudio 崩溃和难以安装的不幸效果。
  • keychain .它不在 CRAN 上,所以我认为我不能将其用作第一线方法,我还想了解更多关于密码在各种系统上的存储位置和方式的详细信息(即它会以明文形式结束 window ?)。
  • 访问 token 、OAuth 等似乎也有类似的问题。

  • 我不知道任何使用 PGP 进行连接的 R 包?对于新手用户来说可能也有点困难。

    我主要不是要求自己,但我想为可能存储明文密码以访问其 Dropbox 中敏感数据的非技术用户提供一些合理的默认设置。

    与其他提出类似问题的人不同,如果我有更好的方法,我也可以更改服务器端的东西。

    是否有我目前缺少的最佳实践方法?我对交互式 session 的关注是因为我认为这是大多数非技术类型使用 R 的方式,但是如果它在例如knitr 报告生成。

    最佳答案

    一些安全解决问题的建议。这些解决方案匹配所有编程语言。

  • 在没有 R 的情况下建立与您的资源的安全连接,例如 SSL 隧道。
  • 如果您需要 R 中的安全密码来建立安全连接,那么您可以从安全配置文件中读取此密码,如果您不再使用密码,则删除此密码变量。安全配置文件是不属于您的代码存储库(Git、SVN、...)的配置文件。你必须独立于你的代码来管理你的 secret 。这意味着将您的代码和您的 secret 分开。一种简单的方法是将您的私有(private)和安全 secret 放在您的私有(private)和安全用户主目录中。然后,您已将安全问题委托(delegate)给您的操作系统。您的 secret 现在保存为您的操作系统和主目录。请检查您的主目录的权限并启用文件系统加密(如果它们已关闭)。注意,这是 Maven 处理密码的方式。
  • 如果您加密您的密码/ secret 配置文件,您将获得更高的安全性。然后你有第二道防线。

  • 对于大多数应用程序来说,第 2 点就足够了。

    请注意,请确保您的密码未与您的代码一起部署。您需要第二种方法来管理您的 key 并将其部署到生产系统。

    请注意,如果您的程序卡住了,请确保您的 secret 不再存在于内存中。

    注意,始终使用 加密算法。不要实现自己的安全算法,是一项高复杂度的任务。更好地使用强加密算法的标准实现。

    关于r - 如何在 R 和服务器之间建立安全的密码保护连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22563561/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com