ID管理の概要
Zilliz Cloudでは、組織、プロジェクト、クラスター、API、SDKワークフローにアクセスできる人やグループをIDとして表現します。ID管理は、Zilliz Cloud内に存在するユーザーを制御し、それらのIDの招待、同期、作成、削除、認証の方法を管理します。そしてアクセス制御によって、各IDがアクセスできる対象や実行可能なアクションが決定されます。
IDとアクセスのモデル
Zilliz Cloudのアクセス制御モデルは、プリンシパルとロールという2つの概念に基づいています。プリンシパルとは認可の対象となるIDであり、ロールとは名前付きの権限セットです。プリンシパルにロールを割り当てると、そのロールのスコープ内で該当する権限が付与されます。
| 概念 | 意味 | 例 |
|---|---|---|
| プリンシパル | アクセス権を付与できるID。 | 組織メンバー、プロジェクトメンバー、クラスターユーザー、グループ。 |
| ロール | 名前付きの権限セット。 | Organization Owner、Billing Admin、Project Admin、クラスター Admin、Data Operator、Data Viewer、カスタムロール。 |
| ロールの割り当て | プリンシパルにロールを付与する操作。 | プロジェクトAのユーザーにプロジェクトロールを付与する。 |
| スコープ | ロールが適用される範囲。 | 組織、プロジェクト、クラスター。 |
| 実効アクセス権 | 直接割り当てとグループ割り当てを組み合わせた最終的なアクセス権。 | 同期されたグループ経由でData Viewer権限を持ち、かつプロジェクトへの直接割り当てでクラスター Admin権限を持つユーザー。 |
プリンシパル
次の表に、Zilliz Cloudにおける主なプリンシパルの種類を示します。
| プリンシパルの種類 | スコープ | 用途 |
|---|---|---|
| 組織メンバー | 組織 | コンソールへのサインイン、組織ロールの割り当て、プロジェクトアクセスの付与。 |
| プロジェクトメンバー | プロジェクト | 特定のプロジェクトおよびそのプロジェクトレベルのリソースへのアクセス。 |
| クラスターユーザー | クラスター | クラスターレベルおよびデータプレーンへのアクセス(データベース、コレクション、検索、クエリ、書き込み操作など)。 |
| グループ | 組織 | SCIM経由でIDプロバイダーから同期されるグループ。 |
プリンシパルの種類間の関係
1人のユーザーが複数のスコープにまたがって存在する場合があります。たとえば、あるユーザーが組織メンバーであると同時に、1つ以上のプロジェクトのプロジェクトメンバーでもあり、データプレーンへのアクセス用にクラスターユーザーとしても登録されているケースです。これらのIDは、保護すべきリソースの境界が異なるため、それぞれ別のレベルで管理されます。
| ID | 制御対象 | 重要な境界 |
|---|---|---|
| 組織メンバー | その人物が組織に所属し、コンソールにサインインできるかどうか。 | 組織に所属していても、すべてのプロジェクトやクラスターに自動的にアクセスできるわけではありません。 |
| プロジェクトメンバー | ユーザーまたはグループが特定のプロジェクトにアクセスできるかどうか。 | プロジェクトへのアクセスは、特定のプロジェクトに対して個別に付与する必要があります。プロジェクトをまたぐワイルドカード認可はサポートされていません。 |
| クラスターユーザー | そのIDがクラスターリソースやデータプレーン操作にアクセスできるかどうか。 | クラスターユーザーはクラスターごとに管理され、組織のロールとは独立したクラスターロールを持つことができます。 |
グループ
Zilliz Cloudはグループベースのアクセス割り当てに対応しており、個々のユーザーにロールを割り当てる代わりに、チーム単位で権限を管理できます。IDプロバイダーをチーム構成の信頼できる情報源としている場合に特に有効です。
グループはSCIMを通じて外部のIDプロバイダーから同期されます。Zilliz Cloudではローカルでのグループ作成やメンバーシップの編集はできないため、グループのメンバーシップはIDプロバイダー側で管理し、ロールの割り当てはZilliz Cloud側で管理してください。