ruby-on-rails - 作为开发人员,如何防止自己看到服务器上用户提交的数据?

标签 ruby-on-rails security heroku web

我运营一个网站,用户可以在其中提交 secret 信息。举个例子,假设这是一个供用户存储最深奥和最黑暗的 secret 的网站。

保护这些数据并保持其私密性对我来说很重要。我使用 HTTPS,加密数据库中的数据,在我的帐户上使用长密码和两因素身份验证等。

上周,我遇到了一些生产问题,需要查看服务器日志输出以了解服务器正在接收哪些请求,以及一般情况下发生了什么。它托管在 Heroku 上,其中有一些工具,例如 Papertrail,可以轻松查看服务器日志。问题在于 Web 服务器正在接收用户提交的表单输入,该输入出现在服务器输出中(作为从表单提交接收的参数哈希)。

所以我在这里,试图模糊我的视野,这样我在试图找出问题时就不会阅读某人的私有(private)信息。当服务器接收到这些数据时,有什么方法可以隐藏这些数据吗?

当人们听说该网站时,我收到的问题之一是,“那么,我怎么知道你不仅仅是在阅读我的 secret ?”事实是,据我所知,如果有权访问服务器的管理员想要读取任何此类数据,实际上没有什么可以阻止他们。我希望能够说:“没有人能看到你的 secret 。连我也不能,哈哈!”

这合理吗?甚至可能吗?

注意:这是一个 Ruby on Rails 5 应用程序,托管在 Heroku 上,使用 Postgres。

最佳答案

我认为将这样的内容添加到您的配置中将是第一步:

config.filter_parameters += [:password, :password_confirmation, :credit_card, :your_secret, ...]

关于ruby-on-rails - 作为开发人员,如何防止自己看到服务器上用户提交的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41190235/

相关文章:

ruby-on-rails - 在 Ruby On Rails/PostgreSQL 中按日期对时间戳字段进行分组

Heroku 推送拒绝,未检测到 Cedar 支持的应用程序

ruby-on-rails - Rails 部署,每个客户端一个环境是正确的方法吗?

javascript - 如何在 Rails 应用程序中以不显眼的 javascript 访问全局 javascript 变量?

json - 如何计算主节点的投资返回率

c# - 在 Membership.ValidateUser(string userName, string password) 中使用 SecureString

针对 SQL 注入(inject)的 PHP 安全登录身份验证

angularjs - 具有 Angular 2 环境的 Heroku 管道

node.js - Heroku 上的 Express 应用程序出现应用程序错误

ruby-on-rails - 如何为两个命名空间创建路由