演習 - Microsoft Graph ツールキットの Login コンポーネントを使用してアプリにサインインする
このユニットでは、Web アプリケーションを作成し、スターター プロジェクトを探索します。 次に、ツールキットのログイン コンポーネントを使用して自分のアプリケーションにサインインし、Microsoft Graph の機能にアクセスします。
Web アプリのアプリ構造を設定する
プロジェクトの新しいフォルダーを作成する
- Visual Studio Code を開きます。 コマンドメニューから [ファイル]>[フォルダを開く] の順に選択します。
- フォルダーを開くと、オペレーティング システムは [新しいフォルダー] を作成するボタンを表示します。
- 新しいフォルダーを作成する場所に移動し、[新しいフォルダー] を選択します。 フォルダーに「mgt-app」という名前を付けます。
- Visual Studio Code で、「mgt-app」フォルダーを開きます。
プロジェクト フォルダーの下にファイルとフォルダーを作成します
Web アプリケーションには、1 つの HTML ファイルと、Live Serverの設定用に 1 つのフォルダーが作成されます。 Live Server は Visual Studio Code の拡張機能です。 プロジェクトの構造を作成しましょう。
[ファイル] > [新しいファイル] の順に選択します。
ファイルに index.html という名前を付け、CTRL +S (Windows) または COMMAND+S (macOS) を使用してファイルを保存します。
次の HTML をindex.htmlに追加して、ファイルを保存します。
<!DOCTYPE html> <html> <head> </head> <body> </body> </html>
*.vscode という名前のフォルダーをプロジェクト フォルダーのルートに追加する
*.vscode フォルダーに settings.json という名前のファイルを追加します。 次のコードをコピーして settings.json に貼り付け、ファイルを保存します。
{ "liveServer.settings.host": "localhost", "liveServer.settings.port": 3000 }
これらの設定により、Live Serverを使用して、ローカルでアプリケーションのテストがスムーズに行えるようになります。
Login コンポーネントを使用してコードを追加して、アプリにサインインします
Web アプリケーションでツールキットを使用するコードの追加を開始する前に、Microsoft Entra アプリケーションを設定する必要があります。
microsoft Authentication Library (MSAL) v2 プロバイダーを使用してアプリケーションを認証するには、Microsoft Entra アプリケーションの詳細を使用します。
Microsoft Entra アプリケーションを設定する
ブラウザーで、Microsoft Entra管理センターに移動し、サインインして、Microsoft Entra ID に移動します。
左側のページで [アプリの登録」を選択し、次に [新しい登録」を選択します。
[アプリケーション登録] 画面で、次の値を入力します。
- [名前]: アプリケーションの名前を入力します。
- サポートされているアカウントの種類: 任意の組織のディレクトリ (任意のMicrosoft Entra ディレクトリ - マルチテナント) と個人用 Microsoft アカウント (Skype、Xbox など) のアカウントを選択します。
- リダイレクト URI (オプション): [シングル ページ アプリケーション (SPA)] を選択して
http://localhost:3000
と入力します。 - [登録] を選択します。
これで、アプリケーションが正常に設定されました。コードを追加しましょう。
Microsoft Graph ツールキットをプロジェクトに追加します。
前に、CDN から ツールキットを直接参照できるようになっていることを学びました。 これを行うには、index.html ファイルの </head>
タグの直前に次のコードスニペットを追加します。
<script src="https://unpkg.com/@microsoft/mgt@3/dist/bundle/mgt-loader.js"></script>
MSAL v2 プロバイダーを初期化する
アプリケーションを認証するには、前のセクションで保存したアプリケーション (クライアント) ID を使用して、MSAL v2 プロバイダーを初期化します。
次のスニペットを index.html ファイルの <body>
に追加します。
<mgt-msal2-provider client-id="YOUR-CLIENT-ID"></mgt-msal2-provider>
YOUR-CLIENT-ID
を前のセクションで保存したアプリケーション (クライアント) ID で置き換えてください。
Login コンポーネントを Web アプリに追加する
ツールキットの Login コンポーネントをアプリに追加するには、次の要素をindex.htmlファイルの本文に追加します。
<mgt-login></mgt-login>
すべての変更が完了すると、index.htmlファイルは次のようになります。
<!DOCTYPE html>
<head>
<script src="https://unpkg.com/@microsoft/mgt@3/dist/bundle/mgt-loader.js"></script>
</head>
<body>
<mgt-msal2-provider client-id="YOUR-CLIENT-ID"></mgt-msal2-provider>
<mgt-login></mgt-login>
</body>
</html>
ファイルを保存して、結果をテストしましょう。
ブラウザーでアプリをテストする
ブラウザーでアプリケーションをテストするには、Visual Studio Code Live Server をインストールしておく必要があります。
Live Server でアプリを実行するには、Visual Studio Code で次のキーの組み合わせを押し、Live Server を検索します。
- Windows: CRL+SHIFT+P
- macOS: COMMAND+SHIFT+P
Live Server を開き、オプションを選択し、Enter キーを押します。
Live Server の実行後に、http://localhost:3000/index.html
のページが開く可能性があります。 ブラウザーで http://localhost:3000
ファイルを開きます。
Microsoft 365 開発者テナント アカウントで、サインイン を選択してください。 初回は必要なアクセス許可に同意を求められます。 同意すると、アプリにはサインイン情報が表示されます。
これで Microsoft 365 データにアクセスするための認証メカニズムが正常に実装されました。