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

# Authentik SSO

> Authentik を Teable の SSO 認証プロバイダーとして設定します

<Tip>Business プラン以上で利用できます</Tip>

## ステップ1：Teable で認証プロバイダーを作成する

1. Teable の SSO 設定を開きます
2. 新しい認証プロバイダーを作成し、名前を **Authentik** として、**OpenID Connect** を選択します

## ステップ2：Authentik の管理画面を開く

1. Authentik インスタンスの管理画面にログインします
2. 通常、デフォルトURLは `https://your-authentik-domain/if/admin/` です
3. 管理者の認証情報を使用してログインします

## ステップ3：新しいプロバイダーを作成する

1. 左側のメニューから**アプリケーション** → **プロバイダー**を開きます
2. **作成**ボタンをクリックします
3. **OAuth2/OpenID プロバイダー**を選択します
4. プロバイダー設定を構成します：

### 基本設定

* **名前**：Teable SSO プロバイダー
* **認可フロー**：使用するフロー（通常は **default-authentication-flow**）を選択します
* **クライアントの種類**：**機密**
* **クライアントID**：（自動生成。必要に応じて変更できます）
* **クライアントシークレット**：（自動生成。この値をコピーします）

### リダイレクト URI

* **リダイレクト URI／オリジン（正規表現）**：Teable の**コールバックURL**を貼り付けます
  * 完全一致の場合：`https://app.teable.ai/api/auth/authentication/__providerId__/callback`
  * 正規表現パターンの場合：`https://app\.teable\.ai/api/auth/authentication/.*/callback`

<Note>URL 内の `__providerId__` を、Teable で認証プロバイダーを作成した後に表示される providerId に置き換えるか、Teable のページからコールバックURLを直接コピーしてください。</Note>

### 詳細設定

* **スコープ**：次のスコープが利用できることを確認します：
  * `openid`
  * `email`
  * `profile`
* **サブジェクトモード**：**ユーザーのハッシュ化されたIDに基づく**
* **id\_token にクレームを含める**：このオプションをオンにします

**完了**をクリックしてプロバイダーを作成します。

## ステップ4：クライアントの認証情報を保存する

プロバイダーを作成した後：

1. プロバイダーの詳細から**クライアントID**をコピーします
2. **クライアントシークレット**をコピーします（作成時に一度だけ表示されます）
3. 両方の値を Teable の SSO 設定に貼り付けます

<Warning>クライアントシークレットは安全に保管してください。必要に応じて後で再生成できます。</Warning>

## ステップ5：アプリケーションを作成する

1. 左側のメニューから**アプリケーション** → **アプリケーション**を開きます
2. **作成**ボタンをクリックします
3. アプリケーションを設定します：
   * **名前**：Teable
   * **スラッグ**：`teable`（または任意のスラッグ）
   * **プロバイダー**：ステップ3で作成した **Teable SSO プロバイダー**を選択します
   * **起動URL**：（任意）`https://app.teable.ai`
   * **UI設定**：（任意）Teable のロゴをアップロードし、外観をカスタマイズします

**作成**をクリックして完了します。

## ステップ6：OAuth エンドポイントを設定する

Teable で、Authentik ドメインを使用して次の OAuth エンドポイントを入力します。

* **認可URL**：`https://{your-authentik-domain}/application/o/authorize/`
* **トークンURL**：`https://{your-authentik-domain}/application/o/token/`
* **ユーザー情報URL**：`https://{your-authentik-domain}/application/o/userinfo/`
* **発行者**：`https://{your-authentik-domain}/application/o/{application-slug}/`

<Note>`{your-authentik-domain}` を実際の Authentik インスタンスのドメインに、`{application-slug}` を設定したスラッグ（例：`teable`）に置き換えてください。</Note>

## ステップ7：アプリケーションへのアクセスを設定する

### フローを作成するか既存のフローを使用する

1. **フローとステージ** → **フロー**を開きます
2. デフォルトフローを使用するか、カスタムフローを作成できます
3. 通常、次のフローが必要です：
   * **認証フロー**：ユーザーログイン用
   * **認可フロー**：OAuth2/OIDC 認可用

### アクセスポリシーを割り当てる（任意）

1. アプリケーション設定に戻ります
2. **ポリシー／グループ／ユーザーのバインド**セクションまでスクロールします
3. **既存のポリシーをバインド**をクリックし、次の項目に基づいてアクセスを制限します：
   * **グループ**：特定のグループだけを許可
   * **ユーザー**：特定のユーザーだけを許可
   * **カスタムポリシー**：複雑なアクセスルールを作成

## ステップ8：スコープとクレームを設定する（任意）

### スコープを確認する

1. **カスタマイズ** → **プロパティマッピング**を開きます
2. OAuth2/OIDC の**スコープマッピング**を確認します
3. 次のスコープに適切なクレームが含まれていることを確認します：
   * `openid`：`sub` クレームを含む
   * `email`：`email` と `email_verified` を含む
   * `profile`：`name`、`given_name`、`family_name` などを含む

### カスタムクレームを追加する

カスタムのユーザー属性が必要な場合：

1. **カスタマイズ** → **プロパティマッピング**を開きます
2. **作成** → **スコープマッピング**をクリックします
3. カスタムクレームを定義します：
   * **名前**：カスタムクレーム名
   * **スコープ名**：スコープ識別子（例：`custom_claims`）
   * **式**：ユーザーデータを抽出する Python 式
4. スコープをプロバイダーに追加します

## ステップ9：SSO ログインをテストする

SSO ログインを有効にする方法は2つあります。

**オプション1：認証URLを直接使用**

* 認可URLを SSO ログインURLとして使用します
* ユーザーは認証のために Authentik へリダイレクトされます

**オプション2：ドメイン認証**

1. Teable でドメイン認証を設定します
2. カスタムドメインを認証します
3. [https://app.teable.ai](https://app.teable.ai) にアクセスします
4. SSO ログインボタンをクリックします
5. 認証済みドメインのメールアドレスを入力してログインします

## 追加設定（任意）

### 多要素認証を設定する

1. **フローとステージ** → **ステージ**を開きます
2. MFA ステージ（TOTP、WebAuthn、SMS など）を作成します
3. **フローとステージ** → **フロー**を開きます
4. 認証フローを編集します
5. MFA ステージをフローに追加します
6. MFA のポリシーとバインドを設定します

### ユーザー登録を設定する

1. **フローとステージ** → **フロー**を開きます
2. 登録フローを作成または編集します
3. 次のステージを追加します：
   * ユーザー情報の収集
   * メールアドレスの確認
   * パスワードの設定
4. 登録フローをアプリケーションにリンクします

### パスワードポリシーを設定する

1. **フローとステージ** → **ポリシー**を開きます
2. 次のような要件を持つパスワードポリシーを作成します：
   * 最小文字数
   * 複雑さの要件
   * パスワード履歴
   * 有効期限ルール

### セッション管理を有効にする

1. **イベント** → **セッション**を開きます
2. アクティブなユーザーセッションを監視します
3. **システム** → **設定**でセッションのタイムアウトを設定します

### カスタムブランディング

1. **カスタマイズ** → **テナント**を開きます
2. テナント設定を編集します
3. 次の項目をカスタマイズします：
   * ロゴとファビコン
   * テーマカラー
   * フッターのテキストとリンク
4. Authentik からログインする際に、ユーザーへ設定したブランドが表示されます

### 監査ログを有効にする

1. **イベント** → **ログ**を開きます
2. 認証イベントとエラーを確認します
3. 重要なイベントの通知ルールを設定します
4. **システム** → **設定**でイベントの保持ポリシーを設定します
