> ## 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.

# プッシュ型認可リクエスト（PAR）

> 機密性の高い値がブラウザーに露出するのを防ぐため、認可パラメーターを安全なバックエンドからの POST リクエストで送信します。

export const ResponseSchema = ({statusCode, type = "{}", children}) => {
  const [open, setOpen] = useState(false);
  return <div className="border border-gray-100 dark:border-gray-800 rounded-lg mb-3 overflow-hidden">
      <div className={`flex items-center gap-2.5 px-4 py-2.5 cursor-pointer select-none ${open ? "bg-gray-50 dark:bg-gray-800" : ""}`} onClick={() => setOpen(!open)}>
        {statusCode && <span className="border border-gray-300 dark:border-gray-600 text-gray-700 dark:text-gray-300 font-mono text-xs px-1.5 py-0.5 rounded">
            {statusCode.startsWith("default") ? "default" : statusCode}
          </span>}
        <span className="text-gray-500 dark:text-gray-400 text-sm font-mono">
          {type}
        </span>
        <span className="text-gray-400 dark:text-gray-500 text-sm italic">
          application/json
        </span>
        <svg className={`ml-auto opacity-50 transition-transform duration-200 ${open ? "rotate-180" : ""}`} width="16" height="16" viewBox="0 0 16 16" fill="none">
          <path d="M4 6l4 4 4-4" stroke="currentColor" strokeWidth="1.5" strokeLinecap="round" strokeLinejoin="round" />
        </svg>
      </div>
      {open && <div className="px-4 pt-1 pb-3 border-t border-gray-100 dark:border-gray-800">
          {children}
        </div>}
    </div>;
};

<div id="endpoint">
  ## エンドポイント
</div>

`POST /oauth/par`

<Note>
  Highly Regulated Identity 機能を使用するには、Highly Regulated Identity アドオンが含まれる Enterprise Plan が必要です。詳細については、[Auth0 Pricing](https://auth0.com/pricing) を参照してください。
</Note>

[プッシュ型認可リクエスト（PAR）](https://auth0.com/docs/get-started/authentication-and-authorization-flow/authorization-code-flow/authorization-code-flow-with-par) を使用する Authorization Code Flow では、通常 `/authorize` への `GET` リクエストで送信する認可パラメーターを、アプリケーションから `/oauth/par` エンドポイントに送信できます。PAR では、パラメーター値を安全に保つため、バックエンドから POST メソッドを使用します。`/oauth/par` エンドポイントは、`/authorize` に指定できるすべての認可パラメーターを受け付けます。`/oauth/par` エンドポイントへの呼び出しが有効な場合、Auth0 は `/authorize` エンドポイントのパラメーターとして使用できる `redirect_uri` 値を返します。

`/oauth/par` エンドポイントへの呼び出しが有効な場合、Auth0 は `/authorize` エンドポイントのパラメーターとしても使用される `redirect_uri` 値を返します。PAR の設定の詳細については、[Configure プッシュ型認可リクエスト（PAR）](https://auth0.com/docs/get-started/applications/configure-par) を参照してください。

<div id="remarks">
  ### 注記
</div>

* PAR エンドポイントを呼び出すには、次の要件を満たす必要があります。
  * リクエストの Content-Type を `application/x-www-form-urlencoded` に設定する
  * 渡すすべてのパラメーターに `string` 型を使用する
  * リクエストに、アプリケーション認証用の追加パラメーターを含める (例: `client_secret`、または JSON Web Token クライアント認証用の `client_assertion` と `client_assertion_type`。Mutual TLS を使用する場合は、`client-certificate` ヘッダーと `client-certificate-ca-verified` ヘッダーを渡します) 。
* 各リソースへのアクセス許可を要求するには、`authorization_details` パラメーターを使用します。たとえば、JSON オブジェクトの配列を指定して、認可に関するきめ細かな情報を伝えることができます。各 JSON オブジェクトには `type` 属性を含める必要があります。それ以外の内容は自由に定義できます。

<div id="headers">
  ## ヘッダー
</div>

<ParamField header="DPoP" type="string">
  リクエストの DPoP 証明です。これは任意で、アプリケーションで Demonstrating Proof-of-Possession (DPoP) を使用している場合にのみ必要です。
</ParamField>

<div id="body-parameters">
  ## ボディパラメーター
</div>

<ParamField body="authorization_details" type="string">
  各リソースに対して要求する権限。スコープに似た概念です。
</ParamField>

<ParamField body="audience" type="string">
  アクセスする対象 API の一意の識別子。
</ParamField>

<ParamField body="resource" type="string">
  アクセスする対象 API (リソースサーバー) の識別子。Auth0 テナントに登録されている API 識別子と一致している必要があります。テナントの [Resource Parameter Compatibility Profile](https://auth0.com/docs/get-started/tenant-settings#settings-advanced) が `compatibility` に設定されている場合は、`audience` の代わりに使用されます。
</ParamField>

<ParamField body="response_type" type="string" required>
  トークンタイプを指定します (例: `code` または `code id_token`) 。必須です。
</ParamField>

<ParamField body="client_id" type="string" required>
  アプリケーションの `client_id`。必須です。
</ParamField>

<ParamField body="redirect_uri" type="string" required>
  認可の付与後に Auth0 がリダイレクトする先の URL。必須です。
</ParamField>

<ParamField body="state" type="string">
  CSRF 攻撃を防ぐために使用される不透明な値。推奨です。
</ParamField>

<ParamField body="scope" type="string">
  OIDC スコープおよびカスタム API スコープ。推奨です。
</ParamField>

<ParamField body="code_challenge" type="string">
  `code_verifier` から生成されるチャレンジ。推奨です。
</ParamField>

<ParamField body="code_challenge_method" type="string">
  チャレンジの生成に使用する方式。通常は `S256` です。推奨です。
</ParamField>

<ParamField body="nonce" type="string">
  トークンのリプレイ攻撃を防ぐために使用します。`response_type=id_token` の場合に推奨されます。
</ParamField>

<ParamField body="connection" type="string">
  アプリケーション用に設定された接続の名前。
</ParamField>

<ParamField body="prompt" type="string">
  特定のプロンプトを強制するために使用します (例: `prompt=consent`) 。
</ParamField>

<ParamField body="organization" type="string">
  ユーザーの認証時に使用する組織の ID。
</ParamField>

<ParamField body="dpop_jkt" type="string">
  所有証明公開鍵の JWK サムプリント [RFC7638](https://www.rfc-editor.org/rfc/rfc7638.html)。SHA-256 ハッシュ関数を使用します。Demonstrating Proof-of-Possession (DPoP) を使用する場合にのみ指定します。
</ParamField>

<div id="response-schema">
  ## レスポンススキーマ
</div>

<ResponseSchema>
  <ResponseField name="request_uri" type="string">
    認可エンドポイントで使用する URI です。
  </ResponseField>

  <ResponseField name="expires_in" type="integer">
    `request_uri` の有効期間 (秒) です。
  </ResponseField>
</ResponseSchema>

<div id="response-messages">
  ## レスポンスメッセージ
</div>

| ステータス | 説明                                 |
| ----- | ---------------------------------- |
| 201   | リクエストが成功すると、リクエスト URI と有効期限が返されます。 |
