カスタム ドメインの追加
Azure Web PubSub のインスタンスに含まれる既定のドメインに加えて、カスタム ドメインを追加できます。 カスタム ドメインは、ユーザーが所有し、管理するドメイン名です。 カスタム ドメインを使用して、Web PubSub リソースにアクセスできます。 たとえば、contoso.webpubsub.azure.com
ではなく contoso.example.com
を使用してリソースにアクセスできます。
前提条件
- アクティブなサブスクリプションが含まれる Azure アカウント。 Azure アカウントをお持ちでない場合は、無料でアカウントを作成することができます。
- 最低でも Premium レベルの Azure Web PubSub リソース。
- Azure Key Vault リソース。
- Azure Key Vault に格納されている、カスタム ドメインと一致するカスタム証明書。
カスタム証明書を追加する
カスタム ドメインを追加する前に、一致するカスタム証明書を追加します。 カスタム証明書は、Web PubSub のインスタンスのリソースです。 これはキー コンテナー内の証明書を参照します。 セキュリティとコンプライアンスのため、Web PubSub では証明書を永続的に保存しません。 代わりに、キー コンテナーから証明書をフェッチし、それをメモリに保持します。
マネージド ID を使用してキー コンテナーにアクセスする
Azure Web PubSub では、マネージド ID を使用してキー コンテナーにアクセスします。 アクセスを認可するには、アクセス許可を付与する必要があります。
マネージド ID の作成
Azure portal で、お使いの Web PubSub リソースに移動します。
左側のメニューで [ID] を選択します。
使用する ID の種類を選択します ([システム割り当て] または [ユーザー割り当て])。 ユーザー割り当て ID を使用するには、まず作成します。
システム割り当て ID を使用するには:
[ON] を選択します。
[はい] を選択して確定します。
[保存] を選択します。
ユーザー割り当て ID を追加するには:
[ユーザー割り当てマネージド ID の追加] を選択します。
既存の ID を選択します。
[追加] を選択します。
[保存] を選択します。
キー コンテナーにマネージド ID へのアクセスを付与する
Azure Key Vault アクセス許可モデルの構成方法によっては、Azure portal の別の場所でアクセス許可を付与する必要があります。
キー コンテナーの組み込みアクセス ポリシーをキー コンテナーのアクセス許可モデルとして使用する場合:
Azure portal で自分のキー コンテナーに移動します。
左側のメニューから [アクセス構成] を選択します。
[コンテナー アクセス ポリシー] を選択します。
[アクセス ポリシーに移動する] を選択します。
[作成] を選択します
[アクセス ポリシーの作成] ペインで、[アクセス許可] タブを選択します。
[シークレットのアクセス許可] で、[取得] を選択します。
[証明書のアクセス許可] で、[取得] を選択します。
[次へ] を選択します。
Web PubSub リソース名を検索します。
[次へ] を選択します。
[アプリケーション] タブを選んでから、[次へ] を選択します。
[作成] を選択します
カスタム証明書を作成する
Azure portal で、お使いの Web PubSub リソースに移動します。
左側のメニューで、[カスタム ドメイン] を選択します。
[カスタム証明書] ペインで [追加] を選択します。
カスタム証明書の名前を入力します。
[キー コンテナーから選択する] を選択して、キー コンテナー証明書を選択します。 キー コンテナーを選択すると、[Key Vault ベース URI] と [Key Vault シークレット名] の値が自動的に追加されます。 また、これらのフィールドを手動で編集する必要があります。
(省略可能) 証明書を特定のバージョンにピン留めするには、[Key Vault のシークレット バージョン] の値を入力します。
[追加] を選択します。
Web PubSub によって証明書がフェッチされ、その内容が検証されます。 証明書の検証が成功すると、証明書の [プロビジョニングの状態] は "成功" になります。
カスタム ドメインの CNAME を作成する
カスタム ドメインの所有権を検証するには、カスタム ドメインの CNAME レコードを作成して、Web PubSub リソースの既定のドメインを指します。
たとえば、既定のドメインが contoso.webpubsub.azure.com
で、カスタム ドメインが contoso.example.com
の場合は、次の例のように example.com
に CNAME レコードを作成します。
contoso.example.com. 0 IN CNAME contoso.webpubsub.azure.com
Azure DNS ゾーンを使用している場合、CNAME レコードを追加する方法については、DNS レコードの管理に関するページを参照してください。
他の DNS プロバイダーを使用する場合は、プロバイダーのドキュメントのガイダンスに従って CNAME レコードを作成します。
カスタム ドメインを Web PubSub に追加する
カスタム ドメインは、Web PubSub インスタンスの別のサブ リソースです。 これには、カスタム ドメインに必要なすべての構成が含まれています。
Azure portal で、お使いの Web PubSub リソースに移動します。
左側のメニューで、[カスタム ドメイン] を選択します。
[カスタム ドメイン] ペインで [追加] を選択します。
カスタム ドメインの名前を入力します。 サブ リソース名を使用します。
ドメイン名を入力します。 カスタム ドメインの完全なドメイン名を使用します (
contoso.com
など)。このカスタム ドメインに適用されるカスタム証明書を選択します。
[追加] を選択します。
カスタム ドメイン名を検証する
これで、カスタム ドメインを使用して Web PubSub エンドポイントにアクセスできるようになりました。
ドメインを確認するには、正常性 API にアクセスします。 次の例では cURL を使用しています。
PS C:\> curl.exe -v https://contoso.example.com/api/health
...
> GET /api/health HTTP/1.1
> Host: contoso.example.com
< HTTP/1.1 200 OK
...
PS C:\>
正常性 API から、証明書エラーなしで 200
の状態コードが返されるはずです。
プライベート ネットワーク キー コンテナーを構成する
キー コンテナーにプライベート エンドポイントを構成すると、Web PubSub は公衆ネットワークを使用してキー コンテナーにアクセスできなくなります。 Web PubSub がプライベート ネットワーク経由でキー コンテナーにアクセスできるようにするには、共有プライベート エンドポイントを設定する必要があります。
共有プライベート エンドポイントの作成後は、通常どおりカスタム証明書を作成できます。 キー コンテナー URI でドメインを変更する必要はありません。 たとえば、キー コンテナー ベースの URI が https://contoso.vault.azure.net
の場合、この URI を使用してカスタム証明書を構成します。
キー コンテナーのファイアウォール設定で、Web PubSub の IP アドレスを明示的に許可する必要はありません。 詳細については、キー コンテナーのプライベート リンク診断に関する記事を参照してください。
証明書をローテーションする
カスタム証明書の作成時にシークレット バージョンを指定しない場合、Web PubSub はキー コンテナー内の最新バージョンを定期的に確認します。 新しいバージョンが検出されると、自動的にそれが適用されます。 通常、遅延は 1 時間未満です。
または、キー コンテナーの特定のシークレット バージョンにカスタム証明書をピン留めすることができます。 新しい証明書を適用する必要がある場合は、シークレット バージョンを編集してから、カスタム証明書を事前に更新できます。