> ## 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 Dashboard または Management API を使用して 組織 のアプリケーション単位のアクセスを有効にすると、メンバーがログインできるアプリケーションを制御できます。

export const ReleaseStageNotice = ({feature, stage, plans, contact, terms}) => {
  const stageTextMap = {
    "beta": "Beta",
    "ea": "早期アクセス"
  };
  const stageText = stageTextMap[stage] || "製品リリース段階";
  const prsLink = "/docs/troubleshoot/product-lifecycle/product-release-stages";
  const linkify = (text, url) => {
    return <a href={url} target="_blank" rel="noreferrer" class="link">{text}</a>;
  };
  const includeDetails = (plans, contact, terms) => {
    const hasDetails = terms || plans || contact;
    if (!hasDetails) return null;
    return <span data-as="p">
            {plans && <>この機能は{linkify(`${plans}プラン`, "https://auth0.com/pricing")}でご利用いただけます。 </>}
            {contact && "参加をご希望の場合は、" + contact + "までお問い合わせください。 "}
            {terms && <>この機能を使用することにより、Oktaの該当する無料トライアル規約および{linkify("Master Subscription Agreement", "https://www.okta.com/legal")}に同意したものとみなされます。</>}
        </span>;
  };
  return <Warning>
            <span data-as="p">
                <strong>{feature}機能は現在、{linkify(stageText, prsLink)}です。</strong>
            </span>

            {includeDetails(plans, contact, terms)}
        </Warning>;
};

<ReleaseStageNotice feature="アプリケーションごとのアクセス許可" stage="ea" plans="B2C Professional、B2B Professional、Enterprise" terms="true" />

Auth0 では、アプリケーションに組織へのアクセスを許可することで、その組織のメンバーがログインできるアプリケーションを制御できます。デフォルトでは、組織は暗黙的なアクセスモデルを使用しており、メンバーは次の条件を満たすすべてのアプリケーションにアクセスできます。

* Auth0 組織 が有効になっている
  * アクティブな接続が設定されている

組織でアプリケーションごとのアクセスを有効にすると、メンバーがアクセスできるのは明示的に許可したアプリケーションのみになります。

アプリケーションごとのアクセスは組織ごとに設定します。ある組織で有効にしても、テナント内の他の組織には影響しません。

<Card title="開始する前に">
  アプリケーションごとのアクセスを設定するには、次の要件を満たす必要があります。

  * Management API トークンには、次のスコープが必要です: `update:organizations` および `create:organization_clients`。
  * アプリケーションで[Auth0 組織 を有効化](/docs/ja-jp/manage-users/organizations/configure-organizations/define-organization-behavior)する必要があります。
  * アプリケーションで `authorization_code` または `implicit` グラントタイプを使用するように設定します。これらのグラントタイプがないアプリケーションも組織に関連付けることはできますが、Member Access 設定はログインに影響しません。
  * 早期アクセスでは、各組織でユーザー向けアプリケーションの関連付けを最大100件までサポートします。
</Card>

<div id="enable-per-application-access">
  ## アプリケーションごとのアクセスを有効にする
</div>

組織 でアプリケーションごとのアクセスを有効にすると、アクセス制御が暗黙的なものから明示的なものに切り替わります。メンバーは、明示的にアクセスを許可されたアプリケーションにのみログインできます。

アクセス制御を有効にする前に、アプリケーションのグラントを事前に設定できます。アプリケーションごとのアクセスがオフの間に追加したグラントは Auth0 に保存され、オンにすると有効になります。

アプリケーションごとのアクセスを有効にすると、Auth0 は明示的なグラントがないファーストパーティアプリケーションをブロックします。明示的なグラントがないサードパーティアプリケーションには、引き続き 組織 の[サードパーティアプリケーションアクセス](/docs/ja-jp/manage-users/organizations/configure-organizations/enable-third-party-application-access)ポリシーが適用されます。特定のサードパーティアプリケーションに対してこのポリシーをオーバーライドするには、そのアプリケーションをリストに追加し、**Member Access** を直接設定します。

<Tabs>
  <Tab title="Auth0 Dashboard">
    1. [Auth0 Dashboard > 組織](https://manage.auth0.com/#/organizations) に移動し、組織 を選択します。
    2. **アプリケーション** タブを選択します。
    3. **Per-Application Access** トグルを有効にします。
    4. **Save** を選択します。
  </Tab>

  <Tab title="Management API">
    `is_app_entitlement_active` を `true` に設定して、[組織 の更新](/docs/ja-jp/api/management/v2/organizations/patch-organizations-by-id)エンドポイントに `PATCH` リクエストを送信します。

    ```bash cURL wrap lines theme={null}
    curl --request PATCH \
      --url 'https://YOUR_DOMAIN/api/v2/organizations/ORG_ID' \
      --header 'Authorization: Bearer YOUR_MANAGEMENT_API_TOKEN' \
      --header 'Content-Type: application/json' \
      --data '{
        "is_app_entitlement_active": true
      }'
    ```

    | **パラメータ**                   | **説明**                                                                             |
    | --------------------------- | ---------------------------------------------------------------------------------- |
    | `is_app_entitlement_active` | この 組織 で明示的なアプリケーションごとのアクセスを適用するかどうかを制御します。有効にするには `true` を設定します。デフォルトは `false` です。 |
  </Tab>
</Tabs>

<div id="grant-access-to-an-application">
  ## アプリケーションへのアクセスを許可する
</div>

アプリケーションを組織に追加すると、Member Access設定で、メンバーがそのアプリケーションを通じてログインできるかどうかを制御できます。

<Tabs>
  <Tab title="Auth0 Dashboard">
    1. [Auth0 Dashboard > 組織](https://manage.auth0.com/#/organizations)に移動し、組織を選択します。
    2. **アプリケーション**タブを選択します。
    3. **+ Add Application**を選択します。
    4. アプリケーションを検索して選択します。
    5. 組織のメンバーがこのアプリケーションを通じてログインできるように、**Member Access**を有効にします。
    6. **Save**を選択します。

    既存のアプリケーション関連付けのメンバーアクセスを更新するには、アプリケーションテーブルで**Member Access**をオンまたはオフに切り替え、**Save**を選択します。

    アプリケーションがユーザーベースのログインをサポートしているかどうかは、**Authentication**列で確認します。アプリケーションのグラントタイプに`authorization_code`または`implicit`が含まれていない場合、Authenticationには**Not applicable**と表示され、Member Accessトグルは無効になります。そのアプリケーションのメンバーアクセスを有効にするには、アプリケーションの設定で[グラントタイプ](/docs/ja-jp/get-started/applications/application-grant-types)を更新します。

    サードパーティアプリケーション (strict) も追加でき、テーブルには**Third-party**ラベル付きで表示されます。サードパーティアプリケーションを追加して**Member Access**を設定すると、そのアプリケーションに対する組織の**サードパーティアプリケーションアクセス**ポリシーが上書きされます。
  </Tab>

  <Tab title="Management API">
    Create 組織 Client Associationsエンドポイントに`POST`リクエストを送信します。1回のリクエストで追加できるアプリケーションは最大10個で、組織ごとに最大100個まで追加できます。

    ```bash cURL wrap lines theme={null}
    curl --request POST \
      --url 'https://YOUR_DOMAIN/api/v2/organizations/ORG_ID/clients' \
      --header 'Authorization: Bearer YOUR_MANAGEMENT_API_TOKEN' \
      --header 'Content-Type: application/json' \
      --data '{
        "clients": [
          {
            "client_id": "YOUR_CLIENT_ID",
            "use_for_member_access": true
          }
        ]
      }'
    ```

    | **パラメータ**               | **説明**                                                                                                                                       |
    | ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
    | `client_id`             | 組織に関連付けるアプリケーションのClient ID。                                                                                                                  |
    | `use_for_member_access` | `true`の場合、アプリケーションごとのアクセスが有効であれば、組織のメンバーはこのアプリケーションを通じてログインできます。`authorization_code`または`implicit`のグラントタイプを持つアプリケーションにのみ有効です。デフォルトは`false`です。 |

    <Callout icon="file-lines" color="#0EA5E9" iconType="regular">
      マシンツーマシンアプリケーションを組織に関連付け、`use_for_member_access`を設定できますが、メンバーのログインには影響しません。アプリケーションをユーザー向けのタイプに変換する前に、この値を事前に設定できます。
    </Callout>
  </Tab>
</Tabs>

<div id="revoke-access-to-an-application">
  ## アプリケーションへのアクセスを取り消す
</div>

<Tabs>
  <Tab title="Auth0 Dashboard">
    1. [Auth0 Dashboard > Organizations](https://manage.auth0.com/#/organizations)に移動し、組織を選択します。
    2. **アプリケーション**タブを選択します。
    3. アプリケーションの横にあるオーバーフローメニュー (**...**) を選択し、**削除**を選択します。
  </Tab>

  <Tab title="Management API">
    Delete 組織 Client Associations endpoint に `DELETE` リクエストを送信します。1回のリクエストで最大10個のアプリケーションを削除できます。この操作は冪等であり、存在しない関連付けを削除してもエラーは返されません。

    ```bash cURL wrap lines theme={null}
    curl --request DELETE \
      --url 'https://YOUR_DOMAIN/api/v2/organizations/ORG_ID/clients' \
      --header 'Authorization: Bearer YOUR_MANAGEMENT_API_TOKEN' \
      --header 'Content-Type: application/json' \
      --data '{
        "clients": [
          { "client_id": "YOUR_CLIENT_ID" }
        ]
      }'
    ```
  </Tab>
</Tabs>

<div id="list-an-organizations-applications">
  ## 組織のアプリケーションを一覧表示する
</div>

Management API を使用して、組織に関連付けられているすべてのアプリケーションと、各アプリケーションに対するメンバーのアクセスステータスを取得します。

```bash cURL wrap lines theme={null} theme={null}
  curl --request GET \
    --url 'https://YOUR_DOMAIN/api/v2/organizations/ORG_ID/clients' \
    --header 'Authorization: Bearer YOUR_MANAGEMENT_API_TOKEN'
```

レスポンスには、関連付けられた各アプリケーションとその `use_for_member_access` の値が含まれます。レスポンスでは、チェックポイントベースのページネーションが使用されます。

<div id="limitations">
  ## 制限事項
</div>

* 各組織で関連付けられるユーザー向けアプリケーションは、早期アクセス期間中、最大100件です。この制限は、`use_for_member_access` の対象となるタイプ (SPA、Regular Web Application、Native) のアプリケーションに適用されます。マシンツーマシンの関連付け上限は、早期アクセス期間中に変更される場合があります。
* 接続レベルおよびクライアントレベルの設定で、アプリケーションごとのアクセス制御を回避することはできません。組織の［アプリケーション］タブに明示的に記載されていないサードパーティアプリケーションは、アプリケーションごとのアクセス制御の対象外です。引き続き、組織のサードパーティアプリケーションアクセスポリシーに従います。

<div id="learn-more">
  ## 詳細情報
</div>

* [Organizations の概要](/docs/ja-jp/manage-users/organizations/organizations-overview)
* [organization に対するサードパーティアプリケーションのアクセスを有効にする](/docs/ja-jp/manage-users/organizations/configure-organizations/enable-third-party-application-access)
* [組織を作成する](/docs/ja-jp/manage-users/organizations/configure-organizations/create-organizations)
