この記事について
この記事は、生成AIを活用した自動生成フローで作成しています。Microsoft LearnのAzure Developer CLI環境変数・環境シークレット・CLIリファレンスを確認し、旧記事の未確認機能「集中設定リゾルバー」「ターボプロビジョニング」を削除しました。検証ステータス:✅ Microsoft公式azd仕様確認済み
Azure Developer CLI(azd)では、開発・検証・本番など環境ごとの値を管理できます。ただし、通常設定とシークレットを同じ扱いにしないことが重要です。
通常の環境値はazd envで管理する
一般的な設定値は次のコマンドで扱えます。
# 値を設定
azd env set API_TIMEOUT 5000
# 1つの値を確認
azd env get-value API_TIMEOUT
# 現在の環境値を一覧表示
azd env get-values
# JSONで取得
azd env get-values --output json
azd env setで設定した値は、選択中の環境に対応する.envへ保存されます。また、Bicepのoutputをazd provision後に環境値へ取り込む仕組みもあります。
.envへシークレット値を直接入れない
Microsoftは、azdの.envファイルへシークレットを直接保存しないよう明確に警告しています。プレーンテキストのファイルは、誤コミット、共有、ログ出力などで漏えいする可能性があります。
通常設定と秘密情報を分けます。
| 値 | 例 | 扱い |
|---|---|---|
| 通常設定 | リージョン、APIのタイムアウト、リソース名 | azd env set |
| シークレット | APIキー、パスワード | Key Vault参照 / azd env set-secret |
| 可能なら不要にする資格情報 | Azureサービス間アクセス | Managed Identity + RBAC |
2026年のazdにはenv set-secretがある
現在の公式CLIでは、Key Vaultシークレットへの参照を環境へ設定するazd env set-secretが用意されています。
azd env set-secret MY_SECRET
対話に従って既存のKey Vaultシークレットを選ぶか、新しいシークレットを作成できます。環境の.envに保存されるのは実値ではなく、Key Vaultシークレットへの参照です。
Bicepへ渡す場合は、対象パラメータを@secure()にし、公式手順に従って環境キーをパラメータへマッピングします。
実行時はManaged Identityを優先できるか確認する
アプリケーションがAzure StorageやKey Vaultなどへアクセスするためだけに、接続文字列やクライアントシークレットを持つ必要がないケースがあります。その場合はManaged IdentityとRBACを使う方が、長期シークレットの保管・更新を減らせます。
Azure Container AppsでKey Vaultシークレットを参照する場合も、MicrosoftはContainer AppへManaged Identityを割り当て、そのIDにKey Vault Secrets Userなど必要な権限を付ける構成を案内しています。
「設定管理」と「プロビジョニング高速化」は別問題
旧記事には--turbo-provision、PROVISIONING_MODE=turbo、central-vaultといったコマンド・設定が掲載されていましたが、今回確認した現在のazd公式リファレンスでは、その機能を確認できませんでした。
デプロイ速度を測る場合は、存在しない高速化フラグを前提にせず、azd provisionやazd upの実行時間、Bicep側の依存関係、コンテナビルド時間などを実測してボトルネックを切り分けます。
実務の整理
- 非機密の環境差分 →
azd env set - 秘密値 → Key Vault +
azd env set-secret - サービス間認証 → Managed Identityでシークレットレス化できるか確認
- インフラ定義 → Bicep / Terraform
- アプリ構成 →
azure.yamlと環境値を役割分担
公式情報
- Microsoft Learn ― Work with Azure Developer CLI environment variables
- Microsoft Learn ― Use environment secrets with Azure Developer CLI
- Microsoft Learn ― Azure Developer CLI reference
- Microsoft Learn ― Manage secrets in Azure Container Apps
この記事の更新履歴
- 2026-09-14 追加:実在する
azd env set-secret、Key Vault参照、Managed Identityとの使い分けを追加。 - 2026-09-14 変更:架空の高速デプロイ機能中心の記事から、現在のazd環境・シークレット管理へ全面改訂。
- 2026-09-14 削除:内部JSON/style_prompt、本文H1、
--turbo-provision、PROVISIONING_MODE=turbo、central-vaultなど確認できない機能を削除。

