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

# ロール

> Iru Identity でアプリケーションのロールを作成し、グループに割り当て、ロールごとにセッションの長さを設定します。

多くのアプリケーションは、ユーザーが誰であるかだけでなく、**どのロール**（管理者、メンバー、閲覧者など）を
持っているかを知る必要があります。Iru は、ユーザーのグループメンバーシップに基づいて、サインイン時に
アプリケーションにロールを送信でき、ロールごとに**セッションの長さ**を変えることができます。

ロールはアプリケーションの **ロール** タブで作成し、**割り当て** タブでグループに割り当てます。
アプリの他の設定と同様に、ロールはドラフトで編集してから公開します。
[アプリケーションの概要](/ja/identity/applications/applications-overview)を参照してください。

## ロールがアプリケーションに届く仕組み

```mermaid theme={null}
flowchart LR
  group["グループメンバーシップ"] --> role["ロール"]
  role -->|"ロール識別子"| method["ロールのアサート方法"]
  method --> app["アプリケーション"]
```

**ロール**は 1 つ以上の[グループ](/ja/identity/directory/groups)に割り当てます。それらのグループの
メンバーがサインインすると、Iru は選択したロールのアサート方法を使用して、ロールの**識別子**を
アプリケーションに送信します。

## ロールのアサート方法

ロールのアサート方法によって、Iru がアプリケーションにロールを送信するかどうか、およびその送信方法が決まります。

| 方法 | 動作 |
| - | - |
| **なし** | アプリケーションはサインイン時にロールを受け取りません。**割り当て** タブでグループに割り当てられるのは **デフォルト** ロールのみです。 |
| **グループ** | Iru は、ロール識別子を `groups` という名前のクレームまたは属性の値として送信します。ただし、属性マッピングですでにその名前のクレームまたは属性を送信している場合を除きます。 |
| **カスタム属性** | Iru は、指定した名前のクレームまたは属性でロール識別子を送信します。OIDC では配列として、SAML ではロールごとに 1 つの値として送信されます。OIDC では、`sub`、`exp`、`scope` など、Iru がすでに送信しているクレーム名は使用しないでください。 |

## ロールの内容

> **表示名と識別子**
>
> ダッシュボードでのロールの名前と、Iru がアプリケーションに送信する**ロール識別子**。
> 識別子は、このロールに対してアプリが受け取る値です。

> **グループ**
>
> メンバーがロールを受け取る[グループ](/ja/identity/directory/groups)。
> ロールは **割り当て** タブでグループに割り当てるため、ロールの割り当てはディレクトリのメンバーシップに従います。

> **セッションの長さ**
>
> Iru がアプリケーションに送信するサインインが有効な期間（分）。OIDC のリフレッシュトークンは
> 制限されません。ユーザーが複数のロールに該当する場合、Iru はそれらのロールに設定された中で
> 最も長い長さを使用します。このロールで長さを設定しない場合は、空欄のままにします。
>
> ユーザーのどのロールにも長さが設定されていない場合、またはロールのアサート方法が **なし** の場合、
> Iru はアプリケーションのデフォルトを使用します。このデフォルトは、テンプレートを使用せずに作成した
> アプリでは **60 分** から始まります。SAML アプリで **Session Length Supported** が **Unsupported** に
> 設定されている場合、Iru は有効期限を送信しません。

> **リスクレベル**
>
> ロールの[リスクレベル](/ja/identity/authentication/risk-based-access)ラベル。
> ダッシュボードでは必須のため、機密性の高いロールに一貫してラベルを付けることができます。
> アプリには送信されず、サインインにも影響しません。

> [!NOTE]
>
> テンプレートを使用せずに作成したアプリケーションにはロールがないため、ロールを追加してグループに
> 割り当てるまで誰もサインインできません。アプリでロールが不要な場合は、**なし** を選択します。
> その場合、アプリにはグループを割り当てる単一の **デフォルト** ロールが用意されます。

## アプリケーションのロールを設定する

**1. ロールのアサート方法を選択する**

アプリの **ロール** タブで、**グループ** または **カスタム属性** を選択して、ロールをアプリケーションに
送信します。アプリでロールが不要な場合は **なし** を選択します。

**2. ロールを追加する**

各ロールについて、表示名とリスクレベルを設定し、必要に応じてアサーション値（アプリに送信される値）と
セッションの長さを設定します。

**3. ロールをグループに割り当てる**

**割り当て** タブで、グループと、そのメンバーが受け取るロールを選択します。

**4. 公開する**

ドラフトを現在のバージョンとして設定します。以降、Iru はどのロールにも該当しないユーザーの
サインインを拒否し、ロールのアサート方法を使用して各ユーザーのロールをアプリに送信します。

## 次のステップ

> **[アクセスの割り当て](/ja/identity/applications/assigning-access)**
>
> グループを割り当てて、アプリにアクセスできるユーザーを制御します。

> **[グループ](/ja/identity/directory/groups)**
>
> ロールを割り当てるグループを作成および管理します。

> **[SAML アプリケーション](/ja/identity/applications/saml-applications)**
>
> SAML アプリに送信するロールの属性名の形式を設定します。

> **[OIDC アプリケーション](/ja/identity/applications/oidc-applications)**
>
> ロールを含め、Iru が OIDC アプリに送信するクレームを設定します。
