Wiki
ロールと管理パネル
uVersion の管理パネル: 誰が開けるか、9 つのロール、スーパー管理者と project_admin、ランク階層、どのタブを誰が使えるか。
はじめに
管理パネルは uVersion デスクトップクライアントに組み込まれています。ユーザー、グループ、権限、 検証ルール、Webhook、配布、ストレージの管理を一箇所にまとめています。このページは、他のすべてが依存する ロールシステムを説明します。このセクションの他のページより先にお読みください。
パネルを開く
管理ロールを持つアカウントでデスクトップクライアントにサインインし、ナビゲーションの Admin 項目を開きます。管理ロールを持たないアカウントにはこの項目は表示されません。
パネルを開けるロールは 2 つです: admin (スーパー管理者) と project_admin
(プロジェクト管理者)。両者が見る内容は同一ではありません。次のセクションを参照してください。
スーパー管理者と project_admin
uVersion は 2 つの管理レベルを区別します:
- スーパー管理者 (ロール
admin): サーバー全体に対する権限。 すべてのリポジトリ、すべてのユーザー、グローバル設定、監査、ライセンスを管理します。 - project_admin: 管理するプロジェクトに限って完全な管理者です。 自分のリポジトリでは管理者と同じことをすべて行えます (権限、ルール、Webhook、GC、抹消)。 自分のリポジトリの外では管理権限を一切持ちません。
原則: project_admin は自分のプロジェクトの完全な管理者であり、それ以外の場所では何もできません。 そのためパネルは区画化されています。一部のグローバルな操作 (下記参照) はスーパー管理者専用のままです。
9 つのロール
| ロール | 用途 |
|---|---|
admin | スーパー管理者: 全アクセス、サーバー全体。 |
project_admin | プロジェクト管理者: 自分のリポジトリの完全な管理者、それ以外では何もできません。 |
lead | チームリード: すべてのリポジトリへの書き込みと複数の高い権能 (承認、グローバルアクティビティ、配布)。現状では事実上きわめて強力なロールです。 |
artist | コントリビューター (アート): 権限に応じたファイルの check-out / check-in。 |
programmer | コントリビューター (コード): 権限に応じた check-out / check-in。 |
qa | 品質保証: 貢献しレビューに参加します。 |
user | 汎用コントリビューター。 |
viewer | 読み取り専用。 |
playtester | 公開されたビルドへのアクセスのみ (ゲームのダウンロード)。ワークスペースもリポジトリのファイルも見えません。 |
artist は書き込みを付与されたパスしか変更できません。
ランクとガード
ロールはランクで並びます: admin 100、lead 50、project_admin 40、
programmer / artist / qa / user 10、
viewer / playtester 5。
管理者は自分のランクより厳密に下のアカウントにしか操作できません。したがって自己昇格も、 同格の相手の変更も、自分を自分のランクより下に降格することもできません。これにより、たとえば project_admin (ランク 40) がスーパー管理者に化けることが防がれます。
どのタブに誰がアクセスできるか
| タブ | スーパー管理者 | project_admin |
|---|---|---|
| ユーザー | 完全な管理 | 作成のみ、区画化された一覧 |
| グループ | 完全な管理 | 名前の閲覧 (付与の対象を指定するため) |
| 権限 | はい | はい、自分のリポジトリで |
| ルール | はい | はい、自分のリポジトリで |
| Webhook | はい | はい、自分のリポジトリで |
| 配布 | はい | いいえ (admin と lead 専用) |
| ストレージと GC | はい | はい、自分のリポジトリで |
スーパー管理者専用のまま: ユーザーの変更 / リセット / 無効化、グループ管理 (単なる閲覧を超える範囲)、 監査、サーバー設定、グローバル統計、ライセンス。
サーバー全体の権能
一部の権限は、ロールに紐づきサーバー全体で有効な権能です (リポジトリ単位の区別を持ちません)。実務上の帰結は 2 つです:
manage_rules権能を持つleadは、サーバー全体で 配布にアクセスできます。project_adminは権能を一切持ちません。その権限は管理するプロジェクトの一覧に由来し、 権能に由来しません。これは意図的です。権能を一つのプロジェクトに限定することはできないからです。