【问题标题】:Storing Private Files on Heroku在 Heroku 上存储私有文件
【发布时间】:2016-05-04 02:34:05
【问题描述】:

我这里有一个与在 heroku 上存储私有文件有关的场景。

我需要将私有文件(用于向 IOS 设备发送推送通知的证书和密钥)存储在 heroku 应用程序(使用 Cedar 堆栈)中,我可以通过 git 将这些文件推送到 heroku 服务器,但存储在 git 上并不安全,因为这些是私人的。所以,我想将这些文件安全复制(SCP)到heroku服务器,但heroku不允许传入连接并将这些文件存储在S3存储桶上并不是一个很好的解决方案,因为从S3存储桶获取文件需要一些时间,这会增加延迟在循环中发送每个推送通知。

我有点迷失了找到适合这种情况的解决方案。 gem https://github.com/NicosKaralis/pushmeup 接受私有文件作为文件对象或字符串(指出服务器上文件的路径)。 Heroku 允许设置可以在环境中使用但不能在文件中使用的配置变量(仅限字符串)。

有人可以在这种情况下建议我一些解决方法吗,谢谢。

【问题讨论】:

    标签: ruby ruby-on-rails-4 heroku amazon-s3 apple-push-notifications


    【解决方案1】:

    您应该考虑使用一些外部存储服务,因为您无法在 Heroku 上存储文件。

    Using AWS S3 to Store Static Assets and File Uploads

    【讨论】:

      【解决方案2】:

      你不能在 Heroku 中使用文件系统,因此你需要一个不同的存储系统。

      您可以使用 Amazon S3 等云系统存储,并对连接和传输的数据进行加密,以确保信息保持私密性。使用基于内存的缓存系统(例如 memcached)可以最大限度地减少延迟。

      另一种方法是将数据作为二进制信息存储在数据库中。您可以使用相同的应用程序数据库,也可以使用专门为此设计的数据库。

      【讨论】:

        猜你喜欢
        • 2013-08-10
        • 2012-12-20
        • 2023-03-19
        • 2020-10-25
        • 1970-01-01
        • 2013-03-23
        • 2018-10-26
        • 2019-01-25
        • 2017-03-19
        相关资源
        最近更新 更多