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

> SAML アサーション、および SAML と WS-Fed のプロトコル パラメーターをカスタマイズする方法を説明します。

# SAML アサーションのカスタマイズ

<Tooltip tip="Security Assertion Markup Language（SAML）: パスワードを使わずに 2 者間で認証情報をやり取りするための標準化されたプロトコル。" cta="用語集を表示" href="/ja/docs/glossary?term=SAML">SAML</Tooltip> アサーションに加え、SAML と WS-Federation のプロトコル パラメーターもカスタマイズできます。

<div id="auth0-as-identity-provider">
  ## IDプロバイダーとしてのAuth0
</div>

Auth0が<Tooltip tip="IDプロバイダー（IdP）: デジタルIDを保存および管理するサービス。" cta="用語集を表示" href="/ja/docs/glossary?term=identity+provider">IDプロバイダー</Tooltip>として機能する場合は、Dashboardでアドオンを設定するか、Rulesを使用して、SAMLアサーションをカスタマイズできます。

<div id="use-the-dashboard">
  ### Dashboard を使用する
</div>

1. [Dashboard > Applications > Applications](https://manage.auth0.com/#/applications/\{yourClientId}/addons) に移動し、表示するアプリケーション名を選択します。
2. **Addons** タブを選択します。
3. **SAML2 Web App** のトグルを有効にして、設定とオプションを表示します。

   <Frame>
     <img src="https://mintcdn.com/translations/6GE5Z24GDCZehiJ9/docs/images/cdy7uua7fh8z/6dJgYkcOgMZ73HVTkAWt1x/fe9dbbf306e6c587cb3326c00a3b4e1f/2025-02-27_13-59-00.png?fit=max&auto=format&n=6GE5Z24GDCZehiJ9&q=85&s=02e6b08c46ca79dacc371032b125cb3b" alt="Dashboard Applications Applications Addons Tab SAML2 Web App Settings Tab" width="606" height="757" data-path="docs/images/cdy7uua7fh8z/6dJgYkcOgMZ73HVTkAWt1x/fe9dbbf306e6c587cb3326c00a3b4e1f/2025-02-27_13-59-00.png" />
   </Frame>
4. **Settings** タブでは、次のようなカスタマイズを行えます。

   * SAML リクエストのデフォルトの発行者以外のオーディエンスを指定する。
   * 受信者を指定する。
   * プロファイル属性を特定の属性ステートメントにマッピングする。
   * 署名アルゴリズムまたはダイジェストアルゴリズムを変更する。
   * アサーションのみに署名するか、レスポンス全体に署名するかを指定する。

<div id="use-actions">
  ### Actions を使用する
</div>

Actions を使用すると、SAML レスポンスに対して、より高度または動的なカスタマイズを追加できます。Actions で行ったカスタマイズは、Dashboard の **Application Addons** ビューで行ったカスタマイズより優先されます。

`api.samlResponse` オブジェクトは、デフォルトの SAML 属性を上書きしたり、新しい属性を追加したりするために使用します。

<div id="example-changing-the-saml-token-lifetime-and-use-upn-as-nameid">
  #### 例: SAML トークンの有効期限を変更し、UPN を NameID として使用する
</div>

```js lines theme={null}
exports.onExecutePostLogin = async (event, api) => {
	api.samlResponse.setLifetimeInSeconds(36000);
	if (event.user.upn) {
		api.samlResponse.setAttribute('http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier', 'upn');
	}
};
```

<div id="example-include-user_metadata-attributes-in-an-assertion">
  #### 例: `user_metadata` 属性をアサーションに含める
</div>

```js lines theme={null}
exports.onExecutePostLogin = (event, api) => {
	event.user.user_metadata = event.user.user_metadata || {};
	event.user.user_metadata.color = 'purple';
	api.samlResponse.setAttribute('http://schemas.xmlsoap.org/ws/2005/05/identity/claims/color', event.user.user_metadata.color);
};
```

<div id="saml-assertion-attributes">
  ## SAML アサーション属性
</div>

以下は、SAML アサーションのカスタマイズに使用できる属性の一覧です。

| 属性                               | 型       | 説明                                                                                                                                                                                                                                                                                                                                                            |
| -------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `audience`                       | string  | SAML アサーションのオーディエンス。デフォルトは SAMLRequest の issuer です。                                                                                                                                                                                                                                                                                                           |
| `recipient`                      | string  | SAML アサーションの受信先 (`SubjectConfirmationData`) 。デフォルトは、SAMLRequest では `AssertionConsumerUrl`、SAMLRequest が送信されなかった場合はコールバック URL です。                                                                                                                                                                                                                              |
| `issuer`                         | string  | URL 形式で表される SAML IDプロバイダーの一意の識別子。                                                                                                                                                                                                                                                                                                                             |
| `mappings`                       | object  | Auth0プロファイルとSAMLアサーションの出力属性間のマッピングです。デフォルトのマッピングは上記のとおりです。                                                                                                                                                                                                                                                                                                    |
| `createUpnClaim`                 | boolean | UPN クレームを作成するかどうかを指定します。デフォルトは `true` です。                                                                                                                                                                                                                                                                                                                     |
| `passthroughClaimsWithNoMapping` | boolean | `true` の場合 (デフォルト) 、共通プロファイルにマッピングされていない各クレームは、Auth0 によって出力アサーションにそのまま含まれます。`false` の場合、それらのクレームはマッピングされません。                                                                                                                                                                                                                                                  |
| `mapUnknownClaimsAsIs`           | boolean | `passthroughClaimsWithNoMapping` が `true` で、これが `false` (デフォルト) の場合、共通プロファイルにマッピングされていない各クレームに対して、Auth0 は `http://schema.auth0.com` というプレフィックスを追加します。`true` の場合は、クレームをそのまま渡します。                                                                                                                                                                               |
| `mapIdentities`                  | ブール値    | `true` の場合 (デフォルト) 、利用可能であれば、プロバイダー (Google、ADFS、AD など) やアクセストークンといった追加情報がトークンに含まれます。                                                                                                                                                                                                                                                                         |
| `signatureAlgorithm`             | 文字列     | SAML アサーションまたはレスポンスの署名に使用するアルゴリズムです。デフォルトは `rsa-sha1` です。                                                                                                                                                                                                                                                                                                     |
| `digestAlgorithm`                | 文字列     | SAML アサーションまたはレスポンスのダイジェストを計算するためのアルゴリズム。既定値は `sha1` です。                                                                                                                                                                                                                                                                                                      |
| `destination`                    | オブジェクト  | SAML レスポンスの送信先です。指定しない場合は、SAMLRequest があるときはその `AssertionConsumerUrl`、SAMLRequest がないときはコールバック URL が使用されます。                                                                                                                                                                                                                                                   |
| `lifetimeInSeconds`              | 整数      | トークンの有効期限です。デフォルトは `3600` 秒 (1 時間) です。                                                                                                                                                                                                                                                                                                                        |
| `signResponse`                   | ブール値    | SAML レスポンスに署名するかどうかを指定します。デフォルトでは、SAML アサーションには署名されますが、SAML レスポンスには署名されません。`true` の場合は、SAML アサーションではなく SAML レスポンスに署名されます。                                                                                                                                                                                                                                     |
| `nameIdentifierFormat`           | string  | デフォルト値は `urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified` です。                                                                                                                                                                                                                                                                                           |
| `nameIdentifierProbes`           | array   | Auth0 は、この配列内の各属性を順番に試行します。いずれかに値が設定されていれば、それを `Subject/NameID` として使用します。順序は次のとおりです: `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier (mapped from user_id)`, `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress (mapped from email)`, `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name` (mapped from name). |
| `authnContextClassRef`           | string  | デフォルトは `urn:oasis:names:tc:SAML:2.0:ac:classes:unspecified` です。                                                                                                                                                                                                                                                                                               |
| `typedAttributes`                | boolean | デフォルトは `true` です。`true` に設定すると、要素の `xs:type` を推定します。型としては `xs:string`、`xs:boolean`、`xs:double `、`xs:anyType` があります。`false` に設定すると、すべての `xs:type` は `xs:anyType` になります。                                                                                                                                                                                        |
| `includeAttributeNameFormat`     | ブール値    | デフォルトは `true` です。`true` に設定すると、属性名に基づいて `NameFormat` が推定されます。`NameFormat` の値は `urn:oasis:names:tc:SAML:2.0:attrname-format:uri`、`urn:oasis:names:tc:SAML:2.0:attrname-format:basic`、`urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified` です。`false` に設定した場合、アサーション内に属性 `NameFormat` は設定されません。                                                            |
| `logout`                         | オブジェクト  | SAML ログアウトを制御します。これには 2 つのプロパティを含めることができます:`callback` (string) は、Auth0 がログアウトリクエストとレスポンスの送信先として使用するサービスプロバイダー (クライアントアプリケーション) のシングルログアウトサービス URL を含み、`slo_enabled` (boolean) は、Auth0 がセッション終了をサービスプロバイダーに通知するかどうかを制御します。デフォルト値は`true` (サービスプロバイダーに通知する) です。                                                                                                  |
| `binding`                        | 文字列     | 必要に応じて、SAML ログアウト応答で使用するプロトコルバインディングを指定します。デフォルトでは Auth0 は `HTTP-POST` を使用しますが、`"binding"` に `"urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect"` を設定すると、`HTTP-Redirect` に切り替えることができます。                                                                                                                                                                     |
| `signingCert`                    | string  | 必要に応じて、SAML リクエストの検証に使用する公開鍵証明書を指定します。設定すると、SAML リクエストには署名が必須になります。値の例は `"-----BEGIN CERTIFICATE-----\nMIIC8jCCAdqgAwIBAgIJObB6jmhG0QIEMA0GCSqGSIb3DQEBBQUAMCAxHjAcBgNV\n[..all the other lines..]-----END CERTIFICATE-----\n"` です。                                                                                                                           |

<div id="learn-more">
  ## 詳しく見る
</div>

* [SAML IDプロバイダー主導のシングルサインオンを設定する](/ja/docs/authenticate/protocols/saml/saml-sso-integrations/identity-provider-initiated-single-sign-on)
