Azure Key Vault から Azure Container Apps に証明書をインポートする
コンテナー アプリの TLS/SSL 証明書を一元的に管理して更新、書き換え、監視を行うように、Azure Key Vault を設定することができます。
前提条件
証明書を格納するには、Azure Key Vault リソースが必要です。 Key Vault を作成して証明書を追加するには、Azure Key Vault への証明書のインポート、または Key Vault での証明書の自動ローテーションの構成に関するページを参照してください。
例外
証明書の種類の大部分がサポートされていますが、留意すべき例外がいくつかあります。
- ECDSA p384 および p521 証明書はサポートされていません。
- App Services 証明書が Key Vault に保存される方法が原因で、Azure Portal を使用してインポートすることはできず、Azure CLI が必要です。
Container Apps 環境のマネージド ID を有効にする
Azure Container Apps では、環境レベルのマネージド ID を使用して Key Vault にアクセスし、証明書をインポートします。 アプリケーションのシステム割り当てマネージド ID を有効にするには、次の手順に従います。
Azure portal を開き、証明書をインポートする Azure Container Apps 環境を見つけます。
[設定] から [ID] を選択します。
[システム割り当て済み] タブで、[状態] スイッチを見つけ、[オン] を選択します。
[保存] を選択し、[システム割り当てマネージド ID の有効化] ウィンドウが表示されたら、[はい] を選択します。
[アクセス許可] ラベルの下で [Azure ロールの割り当て] を選択して、ロールの割り当てウィンドウを開きます。
[ロールの割り当ての追加] を選択し、次の値を入力します。
プロパティ 値 Scope "Key Vault" を選択します。 サブスクリプション Azure サブスクリプションを選択します。 リソース コンテナーを選択します。 ロール [Key Vault Secrets User] を選択します。 [保存] を選択します。
RBAC とレガシ アクセス ポリシーの比較に関する詳細については、「Azure ロールベースのアクセス制御 (Azure RBAC) とアクセス ポリシーの比較」を参照してください。
Key Vault から証明書をインポートする
Azure portal を開き、Azure Container Apps 環境に移動します。
[設定]で、[証明書] を選択します。
[独自の証明書を持ち込む (.pfx)] タブを選択します。
[+ 証明書の追加] を選択します。
[証明書の追加] パネルの [ソース] で、[Key Vault からインポート] を選択します。
[キー コンテナー証明書の選択] を選択して次の値を選択します。
プロパティ 値 サブスクリプション Azure サブスクリプションを選択します。 Key Vault コンテナーを選択します。 [証明書] 証明書を選択します。 Note
"このキー コンテナーのアクセス ポリシーで "List" 操作が有効になっていません。" というエラーが表示された場合は、ユーザー アカウントが証明書を一覧表示できるように、Key Vault でアクセス ポリシーを構成する必要があります。 詳細については、キー コンテナーへのアクセス ポリシーの割り当てに関するページを参照してください。
[選択] を選択します。
[証明書の追加] パネルの [マネージド ID] で、[システム割り当て済み] を選択します。 ユーザー割り当てマネージド ID を使用している場合は、お使いのユーザー割り当てマネージド ID を選択してください。
[追加] を選択します。
Note
エラー メッセージが表示された場合は、マネージド ID に Key Vault の Key Vault シークレット ユーザー ロールが割り当てられていることを確認します。
カスタム ドメインを構成する
証明書を構成したら、それを使用してカスタム ドメインをセキュリティで保護できます。 カスタム ドメインの追加の手順に従って Key Vault からインポートした証明書を選択します。
証明書のローテーション
Key Vault で証明書をローテーションすると、Azure Container Apps によって環境内の証明書が自動的に更新されます。 新しい証明書が適用されるまでに最大 12 時間かかります。