次の方法で共有


クイック スタート: ネイティブ認証を使用して React シングルページ アプリでユーザーをサインインする (プレビュー)

適用対象: 灰色の X 記号がある白い円。 従業員テナント 白いチェック マーク記号がある緑の円。 外部テナント (詳細情報)

このクイックスタートでは、React シングルページアプリケーション (SPA) を使用して、ユーザーを認証するためにネイティブ認証 APIを使用する方法を示します。 サンプル アプリでは、ユーザーのサインアップ、サインイン、サインアウト、パスワードのリセットを電子メールとパスワードで示します。

[前提条件]

パブリック クライアントとネイティブ認証フローを有効にする

このアプリがパブリック クライアントであり、ネイティブ認証を使用できることを指定するには、パブリック クライアントとネイティブ認証フローを有効にします。

  1. アプリ登録ページから、パブリック クライアントとネイティブ認証フローを有効にするアプリ登録を選択します。
  2. [管理] で、 [認証] を選択します。
  3. [詳細設定 で、パブリック クライアント フローを許可します。
    1. [次のモバイルとデスクトップのフローを有効にする] で、[はい] を選びます。
    2. ネイティブ認証 を有効にするには、[はい] を選択します。
  4. [保存] ボタンを選びます。

サンプル SPA を複製またはダウンロードする

サンプル アプリケーションを取得するには、GitHub から複製するか、.zip ファイルとしてダウンロードします。

サンプルを複製するには、コマンド プロンプトを開き、プロジェクトを作成する場所に移動し、次のコマンドを入力します。

git clone https://github.com/Azure-Samples/ms-identity-ciam-native-javascript-samples.git

または、サンプルをダウンロードし、名前の長さが 260 文字未満のファイル パスに抽出します。

プロジェクトの依存関係をインストールする

  1. ターミナル ウィンドウを開き、React サンプル アプリが含まれているディレクトリに移動します。

    cd API\React\ReactAuthSimple
    
  2. 次のコマンドを実行して、アプリの依存関係をインストールします。

    npm install
    

サンプル React アプリを構成する

  1. コード エディターで、src\config.ts ファイル 開きます。

  2. プレースホルダー Enter_the_Application_Id_Here を見つけて、先ほど登録したアプリのアプリケーション (クライアント) ID に置き換えます。

  3. 変更を保存します。

CORS プロキシ サーバーを構成する

ネイティブ認証 API では、クロスオリジン リソース共有 (CORS) サポートされていないため、SPA アプリと API の間にプロキシ サーバーを設定する必要があります。

このコード サンプルには、ネイティブ認証 API URL エンドポイントに要求を転送する CORS プロキシ サーバーが含まれています。 CORS プロキシ サーバーは、ポート 3001 でリッスンする Node.js サーバーです。

プロキシ サーバーを構成するには、proxy.config.js ファイルを開き、プレースホルダーを見つけます。

  • tenantSubdomain をディレクトリ (テナント) サブドメインに置き換えます。 たとえば、テナントのプライマリ ドメインが contoso.onmicrosoft.com の場合は、contoso を使用します。 テナント サブドメインがない場合は、テナントの詳細を 読み取る方法について説明します。
  • tenantId をディレクトリ (テナント) ID に置き換えます。 テナント ID がわからない場合は、テナントの詳細を読み取る方法を確認してください。

アプリを実行してテストする

これで、サンプル アプリを構成し、実行する準備ができました。

  1. ターミナル ウィンドウから、次のコマンドを実行して CORS プロキシ サーバーを起動します。

    cd API\React\ReactAuthSimple
    npm run cors
    
  2. React アプリを起動するには、別のターミナル ウィンドウを開き、次のコマンドを実行します。

    cd API\React\ReactAuthSimple
    npm start
    
  3. Web ブラウザーを開き、http://localhost:3000/に移動します。

  4. アカウントにサインアップするには、サインアップを選択し、プロンプトに従います。

  5. サインアップした後、サインインパスワードをリセット をそれぞれ選択して、サインインとパスワードリセットをテストします。