GCP (Google Could Platform)JavaScript
VercelなどでGoogle APIのキーを環境変数から読む方法
VercelでGoogle Calendar APIを使おうとした時に、少しハマったので覚え書き。 1行のフォームに、複数行のデータを入れる Google APIのプライベートキーは複数行で構成されています。 みたいなイ […]
広告ここから
広告ここまで
VercelでGoogle Calendar APIを使おうとした時に、少しハマったので覚え書き。
目次
1行のフォームに、複数行のデータを入れる
Google APIのプライベートキーは複数行で構成されています。
-----BEGIN PRIVATE KEY-----
XXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXX
-----END PRIVATE KEY-----
みたいなイメージですね。
これをVercelなどの環境変数に設定する場合、1行で納める必要があります。
-----BEGIN PRIVATE KEY-----\nXXXXXXXXXXXXXXXXXXXXXXXXXXXX\nXXXXXXXXXXXXXXXXXXXXXXXXXXXX\nXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n-----END PRIVATE KEY-----
環境変数を読み込む時に、改行しなおす
Next.jsのDiscussionsを参考に、改行コード部分をreplace
関数で変更しました。
const private_key = process.env.GOOGLE_PRIVATE_KEY?.replace(/\\n/g, '\n')
「安全な運用」を目指す場合
今回は「READオンリー」かつ「見られても問題のないデータ」でしたので、手早く環境変数をつかいました。
本来はSecrets Managerなどを使う方が安全かと思います。
- https://cloud.google.com/secret-manager?hl=ja
- https://docs.aws.amazon.com/ja_jp/secretsmanager/latest/userguide/intro.html
この辺りのサービスでは、複数行のデータも保存できるケースがあったはずなので、replace
などの考慮も不要になるかしれません。
参考記事
ブックマークや限定記事(予定)など
WP Kyotoサポーター募集中
WordPressやフロントエンドアプリのホスティング、Algolia・AWSなどのサービス利用料を支援する「WP Kyotoサポーター」を募集しています。
月額または年額の有料プランを契約すると、ブックマーク機能などのサポーター限定機能がご利用いただけます。
14日間のトライアルも用意しておりますので、「このサイトよく見るな」という方はぜひご検討ください。
広告ここから
広告ここまで