ユーザーアクセス制御 (RBAC)
Cockpit は、ユーザーアカウントの管理や仮想リソースの保護のために ロールベースアクセス制御 (RBAC) を使用しています。これにより、ユーザーは自分の仕事に必要な特定のリソースのみを閲覧・編集できるようになります。
セキュリティの基本概念 🔑
Cockpit のセキュリティの仕組みを理解するために、ICカードキーで入退室が管理されたオフィスビルをイメージしてみましょう:
| 用語 | 役割 | 💡 たとえ話 |
|---|---|---|
| テナント / 組織 | クライアントや企業を切り離す最上位の境界線。 | オフィスビルのフロア契約: 同じビルの中に異なる企業が入居しているイメージです。テナントAの従業員は、テナントBのオフィスに入ることはできません。 |
| グループ | 同様の業務担当を持つユーザーの集まり。 | 所属部門名: 例えば「開発チーム」や「経理チーム」。 |
| ロール (役割) | 一般的なアクセス許可設定のテンプレート。 | ICカードキーの種類: 例えば「一般社員キー」「マネージャーキー」「システム管理者キー」。 |
| 権限 (Privilege) | 実行できる単一の具体的なアクション。 | 特定の部屋の解錠: 例えば、「サーバー室のドアを開けてよい」 (vm.create)、「物理サーバーの再起動をしてよい」 (host.reboot)。 |
| スコープ (範囲) | 権限が適用される範囲の限定。 | 特定の部屋だけ開く: 開発者にビル内のすべてのサーバー室を開ける権限を与える代わりに、ICカードを「サーバー室A」(特定のフォルダーまたはホスト)だけ開くようにプログラムします。 |
ユーザー管理
管理者は、Cockpit 画面から直接ユーザーアカウントを管理できます:
- ローカルアカウント: Cockpit のデータベースに直接作成される、ユーザー名、メールアドレス、パスワードの組み合わせ。
- 認証ドメイン: ローカル認証を行うほかに、企業の統合アカウントデータベース(Active Directory など)にログインの確認を委託できます。
- パスワードポリシー: 簡単なパスワードを禁止したり、定期的なパスワード変更を強制したり、複数回連続でログインに失敗したアカウントを一時ロック(例:5回失敗で30分ロック)したりできます。
スコープ付きアクセスルールの設定手順
ユーザーに特定の仮想マシングループだけを操作する権限を与える(スコープ付きアクセス)手順は以下の通りです:
- 管理者として Cockpit にログインします。
- サイドバーメニューの Administration > Access Control を開きます。
- 設定対象の User (ユーザー) または Group (グループ) を選択します。
- Create Permission Mapping をクリックします:
- Subject (対象): ユーザーまたはチームグループを選択します(例:
DevOps Group)。 - Role (役割): 担当する業務プロファイルを選択します(例:
VM Operator- VM の起動/停止はできるが、削除はできない役割)。 - Scope (範囲): アクセスを許可したい特定のフォルダー、データセンター、または物理サーバーを選択します。
- Subject (対象): ユーザーまたはチームグループを選択します(例:
- 設定を保存します。これにより ICカードキーが有効になります。対象ユーザーがログインした際、指定されたスコープ内のサーバーのみが画面に表示されるようになります。