本文へスキップ
hdknr blog
戻る

Infisical — .env に別れを告げるオープンソース・シークレット管理プラットフォーム

更新日:

.env よ、安らかに眠れ——。

AI 時代の開発現場では、シークレット(API キー・データベースパスワード・証明書など)の扱い方が大きな課題になっています。従来は .env ファイルに書いておけばなんとかなっていました。しかしチーム規模が拡大したり、AI エージェントが複数のサービスを横断して動くようになると、.env ベースの管理はほころびを見せてきます。

Infisical は、そんな .env の時代を終わらせるべく登場したオープンソースのシークレット管理プラットフォームです。

.env の何が問題なのか

.env ファイルによるシークレット管理には以下のような問題があります。

Infisical とは

Infisical は、シークレット・証明書・特権アクセスを一元管理するオープンソースプラットフォームです。2026年4月時点で GitHub 26,000 スター超を獲得しており、Vault の OSS 代替として注目されています。

最大の特徴は、シークレットをランタイム時に取得する設計にあります。.env ファイルのようにディスクに値を保存しないため、ファイルベースの漏洩リスクを根本から排除します。

主な機能

シークレット管理

証明書管理(PKI)

統合機能

基本的な使い方

インストール

# macOS (Homebrew)
brew install infisical/get-cli/infisical

# npm
npm install -g @infisical/cli

ログインとプロジェクト初期化

# Infisical にログイン
infisical login

# プロジェクトに紐付け
infisical init

シークレットを注入してコマンドを実行

# .env の代わりに Infisical からシークレットを取得してアプリを起動
infisical run -- node app.js

# 環境を指定
infisical run --env=staging -- python manage.py runserver

SDK から直接取得(Node.js の例)

import { InfisicalSDK } from "@infisical/sdk";

const client = new InfisicalSDK();

await client.auth().universalAuth.login({
  clientId: process.env.INFISICAL_CLIENT_ID,
  clientSecret: process.env.INFISICAL_CLIENT_SECRET,
});

const secret = await client.secrets().getSecret({
  secretName: "DATABASE_URL",
  projectId: "my-project-id",
  environment: "production",
});

AI 時代のシークレット管理

AI エージェントや MCP サーバーが普及した今、シークレット管理の重要性はさらに高まっています。

Infisical は、マシン ID(Machine Identity)という概念でエージェント・CI/CD・サービスアカウントを管理します。人間のユーザーと同じ認証基盤で非人間アクター(AI エージェントを含む)を制御できる点が現代的な設計です。

セルフホストとクラウド

Infisical はクラウド版(infisical.com)とセルフホスト版の両方を提供しています。

クラウド版セルフホスト版
運用コスト要インフラ整備
データ管理Infisical 管理自社管理
コンプライアンスSOC 2 対応自社ポリシー対応
無料枠あり無制限

Docker Compose を使ってセルフホストを始めることもできます。

curl -o docker-compose.prod.yml https://raw.githubusercontent.com/Infisical/infisical/main/docker-compose.prod.yml
curl -o .env https://raw.githubusercontent.com/Infisical/infisical/main/.env.example
docker compose -f docker-compose.prod.yml up -d

まとめ

.env ファイルは長年の功労者ですが、現代の開発・運用スタイルには限界があります。Infisical は以下を提供します。

オープンソースで始められる点も魅力で、まずは小規模プロジェクトから導入を試みるとよい。



前の記事
django-mptt はなぜ「unmaintained」と書かれているのか — そして django-tree-queries への移行
次の記事
株式投資の短期売買とは — デイトレード/スイングトレード/スキャルピング/中長期投資の違いとメリット・デメリット