次の方法で共有


TeamsFx で既存の Entra アプリを使用する

このセクションでは、既存のMicrosoft Entra アプリを使用する方法、または TeamsFx プロジェクト用Microsoft Entraアプリを手動で作成する方法について説明します。 指示に従って、必要なすべての情報が TeamsFx プロジェクトで適切に設定されていることを確認します。

Microsoft Entra アプリを作成する

注:

Microsoft Entra アプリが既にある場合は、この部分をスキップできます。 この手順は、アクションによって aadApp/create 自動化できます。

  1. Azure portalに移動し、[Microsoft Entra ID] を選択します

  2. [アプリの>登録] [新しい登録] を選択して、新しいMicrosoft Entra アプリを作成します。

    • 名前: 構成アプリの名前。
    • サポートされているアカウントの種類: [この組織のディレクトリでのみアカウント] を選択します。
    • [ リダイレクト URL ] フィールドは今のところ空白のままにします。
    • [登録] を選択します。
  3. アプリが登録されると、アプリの [概要 ] ページに移動します。 アプリケーション (クライアント) IDオブジェクト IDディレクトリ (テナント) ID をコピーします。これは後で必要になります。 [サポートされているアカウントの種類] が [マイ organizationのみ] に設定されていることを確認します。

Microsoft Entra アプリのクライアント シークレットを作成する (省略可能)

注:

アプリケーションでクライアント シークレットが必要ない場合は、この部分をスキップできます。 この手順は、アクションによって aadApp/create 自動化できます。

  1. アプリの [証明書 & シークレット ] ページに移動し、[ クライアント シークレット ] を選択し、[ 新しいクライアント シークレット] を選択します。

    • 説明: クライアント シークレットの説明。
    • 期限切れ: クライアント シークレットの有効期限。
    • [追加] を選択します。
  2. クライアント シークレットが追加されたら、[ ] 列の下にあるコピー ボタンを押して クライアント シークレットをコピーします。

Microsoft Entra アプリのユーザー スコープとしてのアクセスを作成する (省略可能)

注:

M365 アカウントにMicrosoft Entra アプリを更新するアクセス許可がある場合は、この部分をスキップできます。 スコープを作成します。 この手順は、アクションによって aadApp/update 自動化できます。

  1. アプリの [API の公開] ページに移動し、[この API によって定義されたスコープ] で [スコープの追加] を選択します。

    • [保存して続ける] を選択します。
    • スコープ名: access_as_userを入力します。
    • 同意できるユーザー: [管理者とユーザー] を選択します。
    • 同意の表示名管理: Teams に入力すると、アプリの Web API にアクセスできます
    • 同意の説明管理: [Teams がアプリの Web API を現在のユーザーとして呼び出すことができます] に入力します
    • ユーザーの同意の表示名: Teams に入力 すると、アプリの Web API にアクセスし、ユーザーに代わって要求を行うことができます
    • ユーザーの同意の説明: [Teams でこのアプリの Web API を同じ権限で呼び出せるようにする] に入力します。
    • 状態: [有効] を選択します。
    • [スコープの追加] を選択します。
  2. 同じページで、[承認されたクライアント アプリケーション] で [クライアント アプリケーションの追加] を選択します。

    • クライアント ID: 1fec8e78-bce4-4aaf-ab1b-5451cc387264 を入力します。これは、モバイルとクライアントのMicrosoft Teamsのクライアント ID です。
    • 承認されたスコープ: 既存の access_as_user スコープを選択します。
    • [アプリケーションの追加] を選択します。
  3. [ クライアント アプリケーションの追加] でもう一度選択します。

    • クライアント ID: 5e3ce6c0-2b1f-4285-8d4b-75ee78787346 (Web 上の Teams のクライアント ID) を入力します。
    • 承認されたスコープ: 既存の access_as_user スコープを選択します。
    • [アプリケーションの追加] を選択します。
  4. アプリの [マニフェスト] ページに移動し、oauth2Permissions の下の ID をAccess As User Scope ID としてコピーします

既存のMicrosoft Entra アプリから必要な情報を取得する

注:

上記の手順に従ってMicrosoft Entra アプリを作成する場合は、この部分をスキップできます。

  1. Azure portalに移動し、[Microsoft Entra ID] を選択します

  2. [アプリの登録] を選択し、既存のMicrosoft Entra アプリを見つけます。

  3. アプリの [概要 ] ページに移動し、 アプリケーション (クライアント) IDオブジェクト IDディレクトリ (テナント) ID をコピーします。これは後で必要になります。 [サポートされているアカウントの種類] が [マイ organizationのみ] に設定されていることを確認します。

  4. アプリの [証明書 & シークレット ] ページに移動し、[ ] 列の下にあるコピー ボタンを押して クライアント シークレットをコピーします。

    注:

    シークレットをコピーできない場合は、 指示 に従って新しいクライアント シークレットを作成してください。

  5. アプリの [API の公開] ページに 移動します。 [この API によって定義されたスコープ] にスコープaccess_as_user追加し、2 つの Teams クライアント ID を事前認証している場合は、アプリの [マニフェスト] ページに移動し、[oauth2Permissions] の下の ID を[Access As User Scope ID] としてコピーします

TeamsFx プロジェクトで必要な情報を設定する

注:

アクションを使用aadApp/createしてアプリケーションMicrosoft Entra作成しない場合は、次の手順に従わずに、必要な環境変数を任意の名前で追加できます。

  1. アクションをaadApp/createteamsapp.ymlいて見つけます。

  2. 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
    
  3. 手順 2. から各環境変数の値を追加します。

    1. 以下の環境変数とその値をファイルに 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
      
    2. アプリケーションでMicrosoft Entraアプリ クライアント シークレットが必要な場合は、環境変数とその値をファイルにenv\.env.{env}.user追加します。

      SECRET_AAD_APP_CLIENT_SECRET=<value of Microsoft Entra application's client secret>
      

      注:

      で異なる名前を使用する場合は、例の環境変数の名前 writeToEnvironmentFileを必ず更新してください。

  4. Teams Toolkit 拡張機能を開き、[ クラウドでプロビジョニング] を選択します。 プロジェクトが正常にプロビジョニングされるまで待ちます。

アプリ マニフェストMicrosoft Entra Azure portalにアップロードする

Teams Toolkit がアプリMicrosoft Entra更新できない場合は、次のエラー メッセージが表示されます。

Insufficient privileges to complete the operation.

上記のメッセージが表示された場合は、アプリのアクセス許可Microsoft Entra更新し、指示に従ってアクセス許可を更新します。

  1. の下にあるMicrosoft Entraアプリ マニフェストをbuild/aad.manifest.{env}.json見つけます。

  2. マニフェスト ファイル内のコンテンツをコピーします。

  3. Azure portalに移動し、[Microsoft Entra ID] を選択します

  4. [アプリの登録] を選択し、既存のMicrosoft Entra アプリを見つけます。

  5. アプリの [マニフェスト] ページに移動し、マニフェストの内容をエディターに貼り付け、[ 保存 ] を選択して変更を保存します。