Microsoft Entra ID を使用してアプリケーション要求を承認する
Azure Web PubSub では、アプリケーションからの要求を認可するために Microsoft Entra ID がサポートされています。
この記事では、Azure アプリケーションからの Web PubSub リソースへの要求を承認するように Web PubSub リソースとコードを構成する方法について説明します。
アプリケーションの登録
最初の手順では、Azure アプリケーションを登録します。
- Azure portal で、Microsoft Entra ID を探して選択します。
- 左側のメニューの [管理] で、[アプリの登録] を選択します。
- [新規登録] を選択します。
- [名前] に、アプリケーションに使用する名前を入力します。
- [登録] を選択して、アプリケーションの登録を確認します。
アプリケーションが登録されたら、アプリケーションの概要に移動して、[アプリケーション (クライアント) ID] と [ディレクトリ (テナント) ID] の値を表示します。 これらの値は、次のセクションで使用します。
アプリケーションの登録の詳細については、Microsoft ID プラットフォームを使用したアプリケーションの登録に関するクイック スタートを参照してください。
資格情報の追加
証明書とクライアント シークレット (文字列) の両方を資格情報として Confidential クライアント アプリの登録に追加できます。
資格情報の追加の詳細については、「資格情報を追加する」を参照してください。
クライアント シークレットの追加
アプリケーションでは、クライアントがトークンを要求するときに、その ID を証明するためのクライアント シークレットが必要です。
クライアント シークレットを作成するには、次の手順に従います。
左側のメニューで、[管理] の [証明書とシークレット] を選択します。
[クライアント シークレット] タブで、[新しいクライアント シークレット] を選択します。
クライアント シークレットの説明を入力し、シークレットの [期限切れ] 時を選択します。
クライアント シークレットの値をコピーし、後で使用できるように安全な場所に貼り付けます。
Note
シークレットは、シークレットの作成時にのみ表示されます。 後でポータルでクライアント シークレットを表示することはできません。
証明書を追加する
クライアント シークレットを作成する代わりに、証明書をアップロードすることもできます。
Azure portal でロールの割り当てを追加する
このセクションでは、Web PubSub リソースのサービス プリンシパル (アプリケーション) に Web PubSub サービス所有者ロールを割り当てる方法について説明します。
Note
管理グループ、サブスクリプション、リソース グループ、1 つのリソースなど、任意のスコープにロールを割り当てることができます。 スコープの詳細については、Azure ロールベースのアクセス制御のスコープの理解に関する記事を参照してください。
Azure portal で、お使いの Web PubSub リソースに移動します。
左側のメニューの [アクセス制御 (IAM)] を選択し、リソースのアクセス制御設定を表示します。
[ロールの割り当て] タブを選択して、このスコープのロールの割り当てを表示します。
次の図は、Web PubSub リソースの [アクセス制御 (IAM)] ペインの例を示しています。
[追加] > [ロール割り当ての追加] の順に選択します。
[ロール] タブを選択し、[Web PubSub サービス所有者] を選択します。
[次へ] を選択します。
[メンバー] タブを選択します。[アクセス権の割り当て先] で、[ユーザー、グループ、またはサービス プリンシパル] を選択します。
[メンバーの選択] を選択します。
ロールを割り当てるアプリケーションを探して選択します。
[選択] を選択して、選択内容を確認します。
[次へ] を選択します。
[レビューと割り当て] を選択して、変更内容を確認します。
重要
Azure ロールの割り当ての反映には最大で 30 分かかる可能性があります。
Azure ロールの割り当てを割り当てて管理する方法の詳細については、次の記事を参照してください。
- Azure portal を使用して Azure ロールを割り当てる
- REST API を使用して Azure ロールを割り当てる
- Azure PowerShell を使用して Azure ロールを割り当てる
- Azure CLI を使用して Azure ロールを割り当てる
- Azure Resource Manager テンプレートを使用して Azure ロールを割り当てる
Microsoft Entra 認可を使用するコード サンプル
公式にサポートされている 4 つのプログラミング言語で Microsoft Entra 認可を使用するサンプルを利用してください。