Azure Key Vault を使用して、コンテナー アプリのトランスポート層セキュリティ (TLS) 証明書と Secure Sockets Layer (SSL) 証明書を一元的に管理できます。 Key Vault では、証明書の更新、更新、監視を処理できます。
この記事では、Azure Container Apps 環境に Key Vault 証明書をインポートする方法について説明します。
前提条件
- キー・ボールトのリソース
- キー コンテナーに格納されている証明書
キー コンテナーを作成して証明書を追加する手順については、「 Azure Key Vault に証明書をインポート する」または「 Key Vault で証明書の自動ローテーションを構成する」を参照してください。
例外
Container Apps では、ほとんどの種類の証明書がサポートされています。 ただし、注意すべきいくつかの例外があります。
- 楕円曲線デジタル署名アルゴリズム (ECDSA) p384 および p521 証明書はサポートされていません。
- Azure App Service 証明書を使用する場合は、Azure CLI を使用して Key Vault から Container Apps にインポートする必要があります。 この記事では、Azure portal を使用して証明書をインポートする方法について説明します。 ただし、Azure portal を使用して App Service 証明書をインポートすることはできません。これは、これらの証明書を Key Vault に保存する方法が原因です。
Container Apps 環境のマネージド ID を有効にする
Container Apps では、環境レベルのマネージド ID を使用してキー コンテナーにアクセスし、証明書をインポートします。 この目的には、システム割り当て ID またはユーザー割り当て ID を使用できます。 システム割り当てマネージド ID を使用するには、次の手順に従います。
Azure portal に移動し、証明書をインポートする Container Apps 環境に移動します。
設定>Identity を選択します。
[ システム割り当て済み ] タブで、[ 状態 ] スイッチをオンにします。
[保存] を選択します。 [システム割り当てマネージド ID を有効にする] ウィンドウが表示されたら、[はい] を選択します。
[ アクセス許可] で[ Azure ロールの割り当て ] を選択し、[ロールの割り当て] ウィンドウを開きます。
[ ロールの割り当ての追加] を選択し、次の値を選択します。
プロパティ 値 Scope Key Vault(キーボールト) サブスクリプション お使いの Azure サブスクリプション リソース 自分のキー コンテナー Role Key Vault シークレット ユーザー [保存] を選択します。
Key Vault には、Azure ロールベースのアクセス制御 (Azure RBAC) と従来のアクセス ポリシー モデルの 2 つの承認システムが用意されています。 2 つのシステムの詳細については、 Azure ロールベースのアクセス制御 (Azure RBAC) とアクセス ポリシー (レガシ) に関するページを参照してください。
Key Vault から証明書をインポートする
Key Vault からコンテナー アプリ環境に証明書をインポートするには、次のセクションの手順を実行します。
プロセスを開始する
Azure portal で Container Apps 環境に移動します。
[設定]>Certificates を選択します。
[ Bring Your Own Certificates (.pfx)] タブに移動します。
[+ 証明書の追加] を選択します。
証明書を追加する
[ 証明書の追加 ] ダイアログの [ ソース] の横にある [ Key Vault からインポート] を選択します。
[ キー コンテナー証明書の選択] を選択し、次の値を選択します。
プロパティ 値 サブスクリプション お使いの Azure サブスクリプション Key Vault 自分のキー コンテナー Certificate あなたの証明書 Note
"このキー コンテナーのアクセス ポリシーで操作 'List' が有効になっていません" というエラー メッセージが表示された場合は、ユーザー アカウントが証明書を一覧表示できるように、キー コンテナーのアクセス ポリシーを構成する必要があります。 詳細については、「Key Vault アクセス ポリシーを割り当てる (レガシ)」を参照してください。
[選択]を選択します。
[ 証明書の追加 ] ダイアログで、[ マネージド ID] の横にある [ システム割り当て済み] を選択します。 ユーザー割り当てマネージド ID を使用している場合は、代わりにユーザー割り当てマネージド ID を選択します。
[追加]を選択します。
Note
エラー メッセージが表示されたら、マネージド ID に キー コンテナーの Key Vault シークレット ユーザー ロールが割り当てられていることを確認します。
カスタム ドメインを構成する
証明書を構成したら、それを使用してカスタム ドメインをセキュリティで保護できます。 「カスタム ドメインと証明書を追加する」の手順に従って、Key Vault からインポートした証明書を選択します。
証明書のローテーション
Key Vault で証明書をローテーションすると、Container Apps によって環境内の証明書が自動的に更新されます。 新しい証明書が適用されるまでに最大 12 時間かかります。