TeamsFx で既存の Entra アプリを使用する
このセクションでは、既存のMicrosoft Entra アプリを使用する方法、または TeamsFx プロジェクト用Microsoft Entraアプリを手動で作成する方法について説明します。 指示に従って、必要なすべての情報が TeamsFx プロジェクトで適切に設定されていることを確認します。
Microsoft Entra アプリを作成する
注:
Microsoft Entra アプリが既にある場合は、この部分をスキップできます。 この手順は、アクションによって aadApp/create
自動化できます。
Azure portalに移動し、[Microsoft Entra ID] を選択します。
[アプリの>登録] [新しい登録] を選択して、新しいMicrosoft Entra アプリを作成します。
- 名前: 構成アプリの名前。
- サポートされているアカウントの種類: [この組織のディレクトリでのみアカウント] を選択します。
- [ リダイレクト URL ] フィールドは今のところ空白のままにします。
- [登録] を選択します。
アプリが登録されると、アプリの [概要 ] ページに移動します。 アプリケーション (クライアント) ID、オブジェクト ID、ディレクトリ (テナント) ID をコピーします。これは後で必要になります。 [サポートされているアカウントの種類] が [マイ organizationのみ] に設定されていることを確認します。
Microsoft Entra アプリのクライアント シークレットを作成する (省略可能)
注:
アプリケーションでクライアント シークレットが必要ない場合は、この部分をスキップできます。 この手順は、アクションによって aadApp/create
自動化できます。
アプリの [証明書 & シークレット ] ページに移動し、[ クライアント シークレット ] を選択し、[ 新しいクライアント シークレット] を選択します。
- 説明: クライアント シークレットの説明。
- 期限切れ: クライアント シークレットの有効期限。
- [追加] を選択します。
クライアント シークレットが追加されたら、[ 値 ] 列の下にあるコピー ボタンを押して クライアント シークレットをコピーします。
Microsoft Entra アプリのユーザー スコープとしてのアクセスを作成する (省略可能)
注:
M365 アカウントにMicrosoft Entra アプリを更新するアクセス許可がある場合は、この部分をスキップできます。 スコープを作成します。 この手順は、アクションによって aadApp/update
自動化できます。
アプリの [API の公開] ページに移動し、[この API によって定義されたスコープ] で [スコープの追加] を選択します。
- [保存して続ける] を選択します。
- スコープ名: access_as_userを入力します。
- 同意できるユーザー: [管理者とユーザー] を選択します。
- 同意の表示名管理: Teams に入力すると、アプリの Web API にアクセスできます。
- 同意の説明管理: [Teams がアプリの Web API を現在のユーザーとして呼び出すことができます] に入力します。
- ユーザーの同意の表示名: Teams に入力 すると、アプリの Web API にアクセスし、ユーザーに代わって要求を行うことができます。
- ユーザーの同意の説明: [Teams でこのアプリの Web API を同じ権限で呼び出せるようにする] に入力します。
- 状態: [有効] を選択します。
- [スコープの追加] を選択します。
同じページで、[承認されたクライアント アプリケーション] で [クライアント アプリケーションの追加] を選択します。
- クライアント ID: 1fec8e78-bce4-4aaf-ab1b-5451cc387264 を入力します。これは、モバイルとクライアントのMicrosoft Teamsのクライアント ID です。
- 承認されたスコープ: 既存の access_as_user スコープを選択します。
- [アプリケーションの追加] を選択します。
[ クライアント アプリケーションの追加] でもう一度選択します。
- クライアント ID: 5e3ce6c0-2b1f-4285-8d4b-75ee78787346 (Web 上の Teams のクライアント ID) を入力します。
- 承認されたスコープ: 既存の access_as_user スコープを選択します。
- [アプリケーションの追加] を選択します。
アプリの [マニフェスト] ページに移動し、oauth2Permissions の下の ID をAccess As User Scope ID としてコピーします。
既存のMicrosoft Entra アプリから必要な情報を取得する
注:
上記の手順に従ってMicrosoft Entra アプリを作成する場合は、この部分をスキップできます。
Azure portalに移動し、[Microsoft Entra ID] を選択します。
[アプリの登録] を選択し、既存のMicrosoft Entra アプリを見つけます。
アプリの [概要 ] ページに移動し、 アプリケーション (クライアント) ID、 オブジェクト ID、 ディレクトリ (テナント) ID をコピーします。これは後で必要になります。 [サポートされているアカウントの種類] が [マイ organizationのみ] に設定されていることを確認します。
アプリの [証明書 & シークレット ] ページに移動し、[ 値 ] 列の下にあるコピー ボタンを押して クライアント シークレットをコピーします。
注:
シークレットをコピーできない場合は、 指示 に従って新しいクライアント シークレットを作成してください。
アプリの [API の公開] ページに 移動します。 [この API によって定義されたスコープ] にスコープaccess_as_user追加し、2 つの Teams クライアント ID を事前認証している場合は、アプリの [マニフェスト] ページに移動し、[oauth2Permissions] の下の ID を[Access As User Scope ID] としてコピーします。
TeamsFx プロジェクトで必要な情報を設定する
注:
アクションを使用aadApp/create
してアプリケーションMicrosoft Entra作成しない場合は、次の手順に従わずに、必要な環境変数を任意の名前で追加できます。
アクションを
aadApp/create
開teamsapp.yml
いて見つけます。Microsoft Entra アプリの情報を格納する環境変数名を
writeToEnvironmentFile
プロパティで検索します。 Teams Toolkit を使用してプロジェクトを作成する場合の既定writeToenvironmentFile
の定義を次に示します。writeToEnvironmentFile: clientId: AAD_APP_CLIENT_ID clientSecret: SECRET_AAD_APP_CLIENT_SECRET objectId: AAD_APP_OBJECT_ID tenantId: AAD_APP_TENANT_ID authority: AAD_APP_OAUTH_AUTHORITY authorityHost: AAD_APP_OAUTH_AUTHORITY_HOST
手順 2. から各環境変数の値を追加します。
以下の環境変数とその値をファイルに
env\.env.{env}
追加します。AAD_APP_CLIENT_ID=<value of Microsoft Entra application's client id (application id)> # example: 00000000-0000-0000-0000-000000000000 AAD_APP_OBJECT_ID=<value of Microsoft Entra application's object id> # example: 00000000-0000-0000-0000-000000000000 AAD_APP_TENANT_ID=<value of Microsoft Entra's (tenant) id> # example: 00000000-0000-0000-0000-000000000000 AAD_APP_OAUTH_AUTHORITY=<value of Microsoft Entra's authority> # example: https://login.microsoftonline.com/<Directory (tenant) ID> AAD_APP_OAUTH_AUTHORITY_HOST=<host of Microsoft Entra's authority> # example: https://login.microsoftonline.com AAD_APP_ACCESS_AS_USER_PERMISSION_ID=<id of access_as_user permission> # example: 00000000-0000-0000-0000-000000000000
アプリケーションでMicrosoft Entraアプリ クライアント シークレットが必要な場合は、環境変数とその値をファイルに
env\.env.{env}.user
追加します。SECRET_AAD_APP_CLIENT_SECRET=<value of Microsoft Entra application's client secret>
注:
で異なる名前を使用する場合は、例の環境変数の名前
writeToEnvironmentFile
を必ず更新してください。
Teams Toolkit 拡張機能を開き、[ クラウドでプロビジョニング] を選択します。 プロジェクトが正常にプロビジョニングされるまで待ちます。
アプリ マニフェストMicrosoft Entra Azure portalにアップロードする
Teams Toolkit がアプリMicrosoft Entra更新できない場合は、次のエラー メッセージが表示されます。
Insufficient privileges to complete the operation.
上記のメッセージが表示された場合は、アプリのアクセス許可Microsoft Entra更新し、指示に従ってアクセス許可を更新します。
の下にあるMicrosoft Entraアプリ マニフェストを
build/aad.manifest.{env}.json
見つけます。マニフェスト ファイル内のコンテンツをコピーします。
Azure portalに移動し、[Microsoft Entra ID] を選択します。
[アプリの登録] を選択し、既存のMicrosoft Entra アプリを見つけます。
アプリの [マニフェスト] ページに移動し、マニフェストの内容をエディターに貼り付け、[ 保存 ] を選択して変更を保存します。
Platform Docs