5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

APIキーはハードコーディングせず.envファイルを活用しよう

Posted at

対象の方

  • プログラミング初心者
  • .envを使用した事がない方

ハードコーディングって何?

ハードコーディングとは、本来プログラム中に記述すべきでないリソースを、直接ソースコード中に埋め込むことである。これらは本来、外部ソースから取得するか、実行時に生成するべきものであり、これをソフトコーディングという。
ウィキペディア

# このようなコードの事
api_key = "xxxxxxxxxxxx" 

実際プログラミング初めて間もない頃は環境変数の言葉すら知らず、この様に直書きしてました笑
今考えると、Githubにpublicで上げるのに論外ですよね…

ハードコーディングのここがダメ

  • 特定のkeyが存在する場合はそれに関連する情報がコードの漏洩と共に盗まれる可能性がある。
  • 複数箇所で使用する場合、毎回書くのは面倒く際
  • などなど…

結果.envファイルを作成して、変数として管理しよう!!

使い方

  1. 隠しファイル.envを作業ディレクトリに作成しよう。
  2. 変数名=値の形で宣言しよう
    api_key="xxxxxxxx" #変数名 = 実際の値

手順としてはこれだけで後はこの値を使用したい箇所で呼び出すだけ!
とっても簡単!!

こうする事で、apiキーだけでなくdockerで構築するdb情報を書いておけば

docker-compose.yml

USER : ${変数名}

の様に使用することが出来る。

また、node.jsなどで使用したい場合はdotenvを利用して.envを読み込み使用する事が出来る。

例
require('dotenv').config({path: ここに.envまでのパス})

process.env.変数名 #呼び出し

後書き

初めてQiitaに記事を書いてみました。
読みづらい箇所が所々あったとは思いますが読んで頂きありがとうございます。
また、間違えがあればご指摘頂けると幸いです

5
5
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?