アクセス制御の概要
Codatumには、シンプルながら強力なロールベースのアクセス制御システムがあります。
ユーザーは、WorkspaceやNotebookやConnectionなどの個々のリソースに対して、ViewerやEditorなどの役割を持つことができます。様々な操作の権限は、ユーザーが保持する役割の組み合わせに基づいて決定されます。
用語解説
ユーザー
Workspaceのアカウントのこと。
グループ
一緒に管理されるユーザーの集まり。複数のリソースロールを割り当てることができます。
リソース
Codatum内の様々なオブジェクトとその種類を表します。
例: リソース: 特定のNotebook "nb1"、リソースタイプ: Notebook。
操作
個々のリソースまたはWorkspace全体にリンクされた様々なアクション。
例: ユーザーの招待、Notebookの編集など。
ロール
Workspaceロール
Workspace内でユーザーに割り当てられるロール。すべてのユーザーに必要です。Workspace全体の操作に関する権限を決定します。
例: Workspace.Owner → Workspace設定の管理やメンバー招待の権限を決定します。
リソースロール
個々のリソースにリンクされたロール。グループまたは個々のユーザーに割り当てられます。
例: notebook.Viewer(nb) → 特定のNotebook "nb"に対する閲覧操作の権限を決定します。
権限
リソースロールまたはWorkspaceロールと、ユーザーまたはグループの組み合わせで、リソースまたはWorkspaceに関連する特定の操作を実行する権限が付与されます。
アクセス制御ルールの基本
アクセス権は、ユーザーが保持するロールの組み合わせに基づいて決定され、定義された計算方法に従います。
ロールには階層性があり、下位のロールにアクセス権があれば、上位のロールにもそのアクセス権があります。
通常、Workspaceロールとリソースロールの両方がアクセス権を付与する必要があります(ANDで計算されます)。
ユーザーが同じリソースに対して複数のリソースロールを持っている場合(直接割り当てられているか、異なるグループを通じて割り当てられているかに関わらず)、いずれかのリソースロールがアクセスを許可していれば、権限が付与されます(ORで計算されます)。
以下の概念図では、これらの原則を示しています。
この図は、特定のリソースAにリンクされた操作のパターンを示しています。また、Workspaceにのみリンクされ、特定のリソースにはリンクされない操作のパターンもあります。このパターンはより単純で、以下のように示されます。
このパターンでは、アクセス権はWorkspaceロールのみによって決定されます。
これらの原則により、Codatum内で堅牢で柔軟なアクセス制御システムが実現されています。
最終更新