クイック スタート: Azure Active Directory B2C を使用したデスクトップ アプリのサインインの設定
Azure Active Directory B2C (Azure AD B2C) は、アプリケーション、ビジネス、顧客を保護するためのクラウド ID 管理を提供します。 Azure AD B2C に対応したアプリケーションは、オープンな標準プロトコルを使用し、ソーシャル アカウントやエンタープライズ アカウントで認証を行うことができます。 このクイック スタートでは、WPF (Windows Presentation Foundation) デスクトップ アプリケーションにソーシャル ID プロバイダーを使ってサインインし、Azure AD B2C で保護された Web API を呼び出します。
Azure サブスクリプションをお持ちでない場合は、開始する前に Azure 無料アカウントを作成してください。
前提条件
Visual Studio 2019 と ASP.NET と Web 開発ワークロード。
Facebook、Google、Microsoft のいずれかのソーシャル アカウント。
GitHub から ZIP ファイルをダウンロードするか、Azure-Samples/active-directory-b2c-dotnet-desktop リポジトリをクローンします。
git clone https://github.com/Azure-Samples/active-directory-b2c-dotnet-desktop.git
Visual Studio でアプリケーションを実行する
- サンプル アプリケーションのプロジェクト フォルダーにある active-directory-b2c-wpf.sln ソリューションを Visual Studio で開きます。
- NuGet パッケージを復元します。
- F5 キーを押してアプリケーションをデバッグします。
自分のアカウントを使用してサインインする
[サインイン] を選び、サインアップまたはサインイン ワークフローを開始します。
このサンプルは、いくつかのサインアップ オプションをサポートしています。 これらのオプションには、ソーシャル ID プロバイダーの使用や、メール アドレスを使用したローカル アカウントの作成が含まれます。 このクイック スタートでは、Facebook、Google、Microsoft のいずれかのソーシャル ID プロバイダー アカウントを使用します。
Azure AD B2C には、サンプルの Web アプリケーション用に Fabrikam という名前の架空の会社のサインイン ページが用意されています。 ソーシャル ID プロバイダーを使用してサインアップするには、使用する ID プロバイダーのボタンを選択します。
ユーザーは、ソーシャル アカウントの資格情報を使用して認証 (サインイン) し、アプリケーションがそのソーシャル アカウントから情報を読み取ることを承認します。 アクセスを許可することにより、アプリケーションはソーシャル アカウントからプロファイル情報 (名前やお住まいの都市など) を取得できるようになります。
ID プロバイダーのサインイン プロセスを完了します。
新しいアカウントのプロファイルの詳細には、ソーシャル アカウントからの情報があらかじめ設定されています。
プロファイルの編集
Azure AD B2C には、ユーザーが自分のプロファイルを更新することができる機能があります。 このサンプル Web アプリのワークフローには、Azure AD B2C の編集プロファイル ユーザー フローが使用されます。
作成したプロファイルを編集するには、アプリケーションのメニュー バーで [プロファイルの編集] を選びます。
作成したアカウントに関連付けられている ID プロバイダーを選択します。 たとえば、アカウントの作成時に ID プロバイダーとして Facebook を使用した場合は、Facebook を選択して、関連付けられているプロファイルの詳細を変更します。
表示名や都市を変更し、[続行] を選びます。
新しいアクセス トークンが [Token info](トークン情報) テキスト ボックスに表示されます。 プロファイルに対する変更を確認する場合は、アクセス トークンをコピーしてトークン デコーダー https://jwt.ms に貼り付けます。
保護された API リソースにアクセスする
[Call API](API の呼び出し) を選び、保護されたリソースに対して要求を行います。
このアプリケーションは、保護された Web API リソースへの要求に Microsoft Entra アクセス トークンを追加します。 Web API からは、アクセス トークンに含まれている表示名が返されます。
Azure AD B2C ユーザー アカウントを使用して、Azure AD B2C で保護された Web API の承認済みの呼び出しを正しく行いました。
リソースをクリーンアップする
他の Azure AD B2C クイックスタートやチュートリアルを試す場合は、Azure AD B2C テナントを使用できます。 不要になったら、Azure AD B2C テナントを削除することができます。
次のステップ
このクイック スタートでは、サンプルのデスクトップ アプリケーションを使用して次のことを行いました。
- カスタム サインイン ページを使用してサインインする
- ソーシャル ID プロバイダーを使用してサインインする
- Azure AD B2C アカウントを作成する
- Azure AD B2C によって保護された Web API を呼び出す
独自の Azure AD B2C テナントを作成してみましょう。