カスタムロールを作成する
カスタムロールには、組織、サービス、データベースの権限を組み合わせて含めることができます。権限は、すべてのサービスとデータベース、またはその一部に適用できます。1
組織設定にアクセスし、Users and roles を選択する
サービスページで、組織名を選択します。ポップアップメニューから
Users and roles を選択します。2
`Roles` タブを選択する
画面上部中央の
Roles タブを選択します。3
右上の Create new role を選択する
画面右上の
Create new role ボタンを選択します。4
ロールに名前を付ける
わかりやすいロール名を入力します。この名前は、ユーザーや API キーにロールを割り当てる際に表示されます。
5
`Allow` をクリックし、権限のスコープを選択する
Allow ボタンをクリックし、Organization、Service、Database の権限から選択します。すべての権限の説明については、Console roles and permissions を参照してください。Data Sources タブへのアクセスData Sources タブにアクセスするには、現在このロールに
Manage selected services 権限が必要です。6
新しいロールを確認する
作成を確定する前に、新しいロールに割り当てた権限を確認します。完了したら
Create role をクリックします。データベースロールを管理する
コンソールの権限に加え、カスタムロールには、選択したサービスのデータベースへのアクセスを制御するData ポリシーを含めることができます。これにより、各データベースで個別にロールを管理する代わりに、コンソールとデータベースへのアクセスを一元管理できます。
この機能は、ClickHouse バージョン 26.4 以降を実行しているサービスで利用できます。
Data ポリシーを追加すると、ClickHouse Cloud は選択した各サービスに、cloud: をプレフィックスとする対応するロールを作成します。たとえば、readonly というカスタムロールは、データベースでは cloud:readonly として表示されます。カスタムロールのメンバーは、SQL コンソールのパスワードレス認証を使用してサービスに接続すると、これらのデータベースの権限を取得します。
前提条件
サービス上のカスタムデータベースロールは、JWT 認証に依存しており、無効になっている間は適用されません。ロールにData ポリシーを追加する前に、サービスに移動し、Settings を開き、Security セクションで JWT authentication カードを見つけます。SQL Console トグルが有効になっていることを確認してください。
1
ロールダイアログを開く
カスタムロールを作成するか、既存のロールを編集します。
2
組織ポリシーを追加する
ロールダイアログで
Allow をクリックし、Organization を選択して、Access organization 権限を有効にします。3
サービスポリシーを追加する
Allow permissions をクリックし、Service を選択して、データポリシーを適用するサービスを選び、View selected services 権限を有効にします。ロールのメンバーがコンソールにサインインし、データポリシーが適用される SQL コンソールでサービスを開くには、これら両方の権限が必要です。4
データポリシーを追加する
Allow permissions をクリックし、Data を選択します。5
サービスを選択する
ポリシーを適用するサービスを選択します。複数のサービスに同じ
Read-only または Admin 権限を適用するには、サービスを追加します。6
アクセスレベルを選択する
Read-only、Admin、または Custom アクセスを選択します。Custom アクセスでは、ClickHouse の GRANT ステートメントを使用して、特定のデータアクセス権限を定義します。Custom アクセスは、ポリシーの対象が単一のサービスである場合にのみ選択できます。複数のサービスにカスタム権限を定義するには、サービスごとに個別の Data ポリシーを追加します。7
ロールを作成する
Create role をクリックします。選択したサービスにデータベースロールが作成されます。ロールがサービスに反映されるまで最大10分かかる場合がありますが、ロールを割り当てられたユーザーは、サービスにクエリを実行するとすぐにその権限を取得します。データベースロールを確認する
コンソール で管理されるロールは、データベース内にcloud: プレフィックスと cloud ストレージタイプを使用して作成され、作成後に表示されるまで最大 10 分かかる場合があります。これらを一覧表示するには、サービス の system.roles テーブルにクエリを実行します。
カスタムロールを更新する
- 組織設定に移動し、
Users and rolesを選択します Rolesタブを選択します- 更新するロールの横にある三点メニューを選択します
Editを選択します- 権限を変更します
Edit roleを選択します
カスタムロールを削除する
- 組織設定に移動し、
Users and rolesを選択します Rolesタブを選択します- 削除するロールの横にある 3 点メニューを選択します
- ロールの削除によってアクセスを失うユーザーと API キーを確認します。必要に応じて割り当てを調整してください。
Delete roleを選択して完了します