権限早見表
Organization、project、page の主な操作をロール別に確認できます。
TrayPage の権限は、アプリ内操作と共有ページ閲覧で判定の考え方が分かれます。
- organization / project の作成・設定変更・メンバー管理などの管理操作は、organization ロールと project ロールで決まります。
- アプリ内で page を開く、version を投稿する、コメントを読む/書く、承認する、アクセスを管理する操作は、organization / project ロールをもとにした CRUD policy と、ページごとの明示的な許可で判定します。
- 共有 URL からページ本文を閲覧できるかは、公開範囲、共有リンク、ドメインユーザー設定で判定します。
public_linkやドメインユーザー公開は、アプリ内のコメント API、revision prompt、viewer-ticket API、編集、承認、アクセス管理を許可しません。 - 画面上のボタン表示はサーバーが返す capabilities に基づきます。最終的な許可判定は常にサーバー側で行われます。
管理操作
同じ操作で organization ロールと project ロールのどちらかに「可」があれば、その操作を実行できます。たとえば organization owner / admin は配下の project や page 投稿の管理操作を広く実行でき、project editor は自分が参加している project でページ投稿や API トークン発行ができます。
この範囲は
src/lib/authz/crud-policy.tsの CRUD policy から生成しています。
組織とメンバー
| 操作 | 説明 | 組織 owner | 組織 admin | 組織 member | 組織 viewer | プロジェクト admin | プロジェクト editor | プロジェクト commenter | プロジェクト viewer |
|---|---|---|---|---|---|---|---|---|---|
| 組織を開く | 組織の基本情報とメンバー関係を読み取る | 可 | 可 | 可 | 可 | - | - | - | - |
| 組織設定を変更 | 組織名や slug を変更する | 可 | 可 | - | - | - | - | - | - |
| 監査ログを表示 | 組織の監査ログを見る | 可 | 可 | - | - | - | - | - | - |
| 許可メールドメインを表示 | ドメインユーザー向け公開範囲の設定を見る | 可 | 可 | - | - | - | - | - | - |
| 許可メールドメインを変更 | ドメインユーザー向け公開範囲の設定を変更する | 可 | 可 | - | - | - | - | - | - |
| メンバー一覧を表示 | 組織のメンバー一覧を見る | 可 | 可 | 可 | 可 | - | - | - | - |
| メンバーを招待 | 組織にメンバーを招待または追加する | 可 | 可 | - | - | - | - | - | - |
| メンバーのロールを変更 | 組織メンバーのロールを変更する | 可 | 可 | - | - | - | - | - | - |
| メンバーを削除 | 組織からメンバーを削除する | 可 | 可 | - | - | - | - | - | - |
プロジェクト
| 操作 | 説明 | 組織 owner | 組織 admin | 組織 member | 組織 viewer | プロジェクト admin | プロジェクト editor | プロジェクト commenter | プロジェクト viewer |
|---|---|---|---|---|---|---|---|---|---|
| プロジェクト一覧を表示 | 組織内のプロジェクトを見る | 可 | 可 | 可 | 可 | - | - | - | - |
| プロジェクトを作成 | 組織内に新しいプロジェクトを作成する | 可 | 可 | 可 | - | - | - | - | - |
| プロジェクトを開く | プロジェクト画面や設定の基本情報を見る | 可 | 可 | - | - | 可 | 可 | 可 | 可 |
| プロジェクト設定を変更 | プロジェクト名や既定の公開範囲を変更する | 可 | 可 | - | - | 可 | - | - | - |
| プロジェクトをアーカイブ | プロジェクトをアーカイブする | 可 | 可 | - | - | 可 | - | - | - |
| プロジェクトメンバーを追加 | 組織メンバーをプロジェクトに追加する | 可 | 可 | - | - | - | - | - | - |
プロジェクト内のページとトークン
| 操作 | 説明 | 組織 owner | 組織 admin | 組織 member | 組織 viewer | プロジェクト admin | プロジェクト editor | プロジェクト commenter | プロジェクト viewer |
|---|---|---|---|---|---|---|---|---|---|
| 自分の API トークン一覧を表示 | このプロジェクトで自分が発行した API/MCP トークンを見る | 可 | 可 | - | - | 可 | 可 | - | - |
| API トークンを発行 | プロジェクトの API/MCP トークンを発行する | 可 | 可 | - | - | 可 | 可 | - | - |
| ページ一覧を表示 | プロジェクト内のページを見る | 可 | 可 | - | - | 可 | 可 | 可 | 可 |
| ページを投稿 | プロジェクトにページを投稿する | 可 | 可 | - | - | 可 | 可 | - | - |
| アーカイブ済みページを復元 | プロジェクト画面からアーカイブ済みページを復元する | 可 | 可 | - | - | 可 | - | - | - |
| ページを開く | アプリ内のページ画面と内部ページ API を開く | 可 | 可 | - | - | 可 | 可 | 可 | 可 |
| version を投稿 | 新しい version の投稿や編集可能なページ情報の変更を行う | 可 | 可 | - | - | 可 | 可 | - | - |
| version を承認 | version を承認し、共有対象として公開または固定する | 可 | 可 | - | - | 可 | - | - | - |
| アクセスを管理 | 公開範囲、個別許可、共有リンク、移動、アーカイブを管理する | 可 | 可 | - | - | 可 | - | - | - |
| コメントを表示 | レビューコメントと revision prompt を読む | 可 | 可 | - | - | 可 | 可 | 可 | 可 |
| コメントを書く | レビューコメントや返信を書く | 可 | 可 | - | - | 可 | 可 | 可 | - |
| コメントを解決 | レビューコメントスレッドを解決する | 可 | 可 | - | - | 可 | 可 | 可 | - |
共有ページ閲覧と個別許可
共有 URL からページ本文を閲覧できるかは、上の管理操作表とは別に判定されます。公開範囲、共有リンク、ドメインユーザー設定、リンクの有効期限が影響するためです。
| ページ権限 | できること |
|---|---|
| viewer | ページを閲覧する |
| commenter | ページを閲覧し、コメントする |
| editor | 新しい version を投稿する |
| admin | version の承認、公開済み version の固定、アクセス管理を行う |
個別に許可されたユーザーは、この表のページ権限をアプリ内操作にも使えます。一方で、public_link、共有リンク、ドメインユーザー公開だけで閲覧しているユーザーは共有ページ本文の閲覧に限定されます。同じページを共有 URL で見られても、アプリ内のコメント、revision prompt、version 操作、アクセス管理ができるとは限りません。
公開範囲の種類は仕組みを参照してください。