Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 有没有办法在ruby非Rails项目中使用Rails.application.credentials?_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails 有没有办法在ruby非Rails项目中使用Rails.application.credentials?

Ruby on rails 有没有办法在ruby非Rails项目中使用Rails.application.credentials?,ruby-on-rails,ruby,Ruby On Rails,Ruby,我需要从另一个ruby项目(实际上是AWS lambda)访问rails项目的加密凭据,该项目应该共享相同的模型和数据库。数据库连接字符串在rails凭据文件中加密 如果一个非rails ruby项目可以访问master.key文件,那么有没有办法让它访问加密的凭证数据?我在github中查看ruby/ruby repo。 您需要导入ActiveSupport。 在ruby中,您只需: require 'active_support/encrypted_configuration' 然后 cr

我需要从另一个ruby项目(实际上是AWS lambda)访问rails项目的加密凭据,该项目应该共享相同的模型和数据库。数据库连接字符串在rails凭据文件中加密


如果一个非rails ruby项目可以访问master.key文件,那么有没有办法让它访问加密的凭证数据?

我在github中查看ruby/ruby repo。 您需要导入ActiveSupport。 在ruby中,您只需:

require 'active_support/encrypted_configuration'
然后

credentials=ActiveSupport::EncryptedConfiguration.new(配置路径:,密钥路径:,环境密钥:,如果缺少密钥,则引发密钥:true)
现在可以挖掘文件,因为它是加载的YAML文件

credentials = ActiveSupport::EncryptedConfiguration.new(config_path: <path/to/credentials.yml.enc>, key_path: <path/to/master.key>, env_key: <YOUR_RAILS_MASTER_KEY>, raise_if_missing_key: true)