> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Auth0 組織 に代わって machine-to-machine クライアントを認可し、バックエンド API 呼び出し用に、その組織にスコープが設定されたアクセストークンを発行します。

# 組織向けMachine-to-Machine (M2M) Access

<Card title="利用可否はAuth0のプランによって異なります">
  この機能は、B2B Professional、Enterprise、および Enterprise Premium プランで利用できます。詳しくは、[Pricing](https://auth0.com/pricing) をご覧ください。
</Card>

[クライアント認証情報フロー](/docs/ja-jp/get-started/authentication-and-authorization-flow/client-credentials-flow) は、アプリケーションがユーザーのためではなく、自身のために <Tooltip tip="Access Token: API へのアクセスに使用される、opaque文字列またはJWT形式の認可資格情報。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=access+tokens">アクセストークン</Tooltip> を取得する際に使用されます。これは、ボット、CLI、バックエンドやデーモンプロセス、または自身の代わりに API を利用するあらゆるアプリケーションなど、machine-to-machine のユースケースで役立ちます。エンドユーザーは関与しませんが、許可されたアプリケーションだけが各組織のデータにアクセスできるようにするため、クライアント認証情報フローでも組織ごとにスコープを設定する必要があります。

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  各リクエストを特定の組織にスコープするには、対応する `org_id` claim を machine-to-machine token に含めてください。API server は、API リソースやデータへのアクセスを認可する際に、この claim を考慮し、適用する必要があります。詳しくは、[Work with Tokens and Organizations](/docs/ja-jp/manage-users/organizations/using-tokens) をご覧ください。
</Callout>

Machine-to-Machine Access for 組織 を使用すると、クライアント認証情報フローを使う各 API について、特定のアプリケーションがアクセスできる組織を定義できます。詳しくは、以下をご覧ください。

| **Read...**                                                                                                                                                      | **To learn...**                                         |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------- |
| [Configure Your Application For M2M Access](/docs/ja-jp/manage-users/organizations/organizations-for-m2m-applications/configure-your-application-for-m2m-access) | テナント内の各 API に対する 組織 への M2M アクセスを制御するための、一般的なアプリケーション設定。 |
| [Configure M2M Access with Auth0 組織](/docs/ja-jp/manage-users/organizations/organizations-for-m2m-applications/manage-m2m-access)                                | テナント内のアプリケーションと組織に対する M2M アクセスを認可、取り消し、監査する方法。          |

関連する 2 つのユースケース例を示すために、架空の [Travel0 company](/docs/ja-jp/manage-users/organizations/organizations-overview#sample-scenario) を見てみましょう。

<div id="open-up-apis-to-third-party-applications">
  ## サードパーティアプリケーション向けにAPIを公開する
</div>

Auth0 Organizations と <Tooltip tip="Management API: 顧客が管理タスクを実行できるようにする製品。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Management+API">Management API</Tooltip> を使用して、Travel0 は顧客が自身の 組織 を作成・管理できるセルフサービスポータルを提供しています。Travel0 は、エンドユーザーがアドベンチャーを見つけて購入するのを支援するボットを、顧客が簡単に構築できるようにしたいと考えています。そのため、このポータルの一環として、Travel0 は顧客が自身に代わって machine-to-machine アクセスを使用して Travel0 API を利用できるよう、アプリケーション (たとえばボット) を登録できるようにしています。このユースケースでは、ある 組織 に属するアプリケーションが、Travel0 API を介してその 組織 のデータにのみアクセスできるよう、組織 間のアクセスを適切に制御する必要があります。

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  [サードパーティアプリケーション](/docs/ja-jp/get-started/applications/third-party-applications)では、`allow_any_organization` は利用できません。各 組織 は `organization_client_grant` を通じて明示的に認可する必要があります。詳細については、[Machine-to-Machine Access を設定する](/docs/ja-jp/manage-users/organizations/organizations-for-m2m-applications/manage-m2m-access#authorize-m2m-access)をお読みください。
</Callout>

Machine-to-Machine Access for Organizations を使用すると、特定の 組織 に関連付けることで、API ごとに Client Credentials アクセスを設定できます。次の図では、例として示す 組織 である org\_X のアプリケーションは、org\_X の範囲内でのみ Travel0 API にアクセスできます。アグリゲーターを使用するケースでは、1 つのアプリケーションから複数の 組織 へのアクセスを設定することもできます。M2M Access for Organizations を使用すると、machine-to-machine アクセスを使って特定の 組織 にアクセスできるアプリケーションを、API ごとに制御できます。

<Frame>
  <img src="https://mintcdn.com/translations/6GE5Z24GDCZehiJ9/docs/images/cdy7uua7fh8z/6LksrBOcNzo2RXI3Tp6mCo/7c36f114ad9c1d238c23dfebe422f5de/image4.png?fit=max&auto=format&n=6GE5Z24GDCZehiJ9&q=85&s=470dad0015dd188f70ed2eaf62033d00" alt="サードパーティアプリは M2M アクセスを使用して org_x に接続し、次に Travel0 API に接続する" width="549" height="254" data-path="docs/images/cdy7uua7fh8z/6LksrBOcNzo2RXI3Tp6mCo/7c36f114ad9c1d238c23dfebe422f5de/image4.png" />
</Frame>

<div id="isolation-of-organizations-for-internal-applications">
  ## 内部アプリケーション向けの組織の分離
</div>

Travel0 には、クライアント認証情報フローを使用して Travel0 API にアクセスする必要がある内部プロセスや CLI ツールもあります。API 全体で一貫したアクセス制御戦略を適用するため、Travel0 は、自社のアプリケーションからのリクエストを特定の 組織 にスコープ設定し、各ケースで適切なデータのみにアクセスできるようにしたいと考えています。

<Frame>
  <img src="https://mintcdn.com/translations/MV7tE-x71x8RWRES/docs/images/cdy7uua7fh8z/5bMEPlmTLGgBn8fq5Fp59S/fe874efcfba549114ad062bd7e3d874d/image7.png?fit=max&auto=format&n=MV7tE-x71x8RWRES&q=85&s=8ee672353e3bc32fbc49dfdc87199b2f" alt="Travel0 アプリケーションは、machine-to-machine アクセスを使用して特定の組織にスコープ設定された Travel0 API にアクセスします" width="894" height="593" data-path="docs/images/cdy7uua7fh8z/5bMEPlmTLGgBn8fq5Fp59S/fe874efcfba549114ad062bd7e3d874d/image7.png" />
</Frame>

Machine-to-Machine Access for Organizations を使用すると、クライアント認証情報フローを使って、テナント内の各 API に対し、任意の 組織 へアクセスできるようアプリケーションを設定できます。
