Node.js: ついやってしまいがちなこと

このドキュメントはシークレットの管理ガイドの一部です。完全なガイドはこちらからご覧いただけます:Node.jsでシークレットを管理する方法

👋 Stackheroのドキュメントへようこそ!

Stackheroは、数多くの利点を提供するNode.jsクラウドソリューションを提供しています。主な利点は以下の通りです:

  • シンプルなgit push数秒でアプリケーションをデプロイ
  • 独自のドメイン名を使用し、HTTPS証明書の自動設定による強化されたセキュリティを享受。
  • 自動バックアップワンクリックアップデート、そしてシンプルで透明性があり、予測可能な価格設定で安心を提供。
  • プライベートで専用のVMによる最適なパフォーマンスと強固なセキュリティを実現。

時間を節約し、生活を簡素化:StackheroのNode.jsクラウドホスティングソリューションを試すのに5分しかかかりません

最初は、以下のように認証情報をコード内に直接記述したくなるかもしれません。

// PostgreSQLデータベースへの接続
const pg = new Client({
  host: '<XXXXXX>.stackhero-network.com',
  user: 'admin',
  password: 'myPassword',
  database: 'admin'
});

しかし、この方法は安全ではありません。なぜなら、シークレットが簡単にGitリポジトリに含まれてしまい、アクセス権を持つ誰もが閲覧できてしまうからです。たとえ自分しかアクセスしないと思っていても、パスワードを書いた付箋をモニターに貼っておき、誰にも見られないことを願うようなものです。最終的には深刻なセキュリティ問題につながる可能性があります。

さらに、シークレットをハードコーディングすると、開発環境や本番環境など、異なる環境の管理が難しくなります。