GCSからダウンロードしたサービスアカウントキーをRailsのconfig/storage.ymlに設定します。
その際、最低限、private_key_idとprivate_keyはCredentialsに登録し呼び出すように設定する必要があるのですが、private_keyには改行(\n)が入っていて、普通に登録する方法ではうまくいきませんでした。
その際、最低限、private_key_idとprivate_keyはCredentialsに登録し呼び出すように設定する必要があるのですが、private_keyには改行(\n)が入っていて、普通に登録する方法ではうまくいきませんでした。
Credentialsの設定方法
gcs: private_key_id: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx private_key: "-----BEGIN PRIVATE KEY-----\nXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX..."
改行(\n)が入っているprivate_keyはダブルクオーテーション("")でくくります。
storage.ymlの設定方法
google: service: GCS project: someproject credentials: type: "service_account" project_id: "someproject" private_key_id: <%= Rails.application.credentials.dig(:gcs, :private_key_id) %> private_key: <%= Rails.application.credentials.dig(:gcs, :private_key).dump %> ...
private_keyの値に.dumpをつけます。