ユーザー・ロール・権限
MintJams CMS のアクセス制御は、ユーザー・グループ・ロール(プリンシパル)と、ノードに付与する ACL で構成されます。アイデンティティは system ワークスペースでグローバルに管理され、すべてのワークスペースで共有されます。
管理する 2 つの方法
| 方法 | 用途 |
|---|---|
| Identity Manager(アプリ) | 画面からの対話的な管理。日常の作成・変更・パスワード |
| プロビジョニング(YAML) | 宣言的・再現性のある初期投入。アプリ同梱の初期セット |
両者は同じモデルに書き込むため、作成されたアカウントは区別されません。詳しくは「Identity Manager」と「プロビジョニング」を参照してください。
プリンシパル
- ユーザー —
/home/users/{id}。対話的にサインインできるアカウント - グループ —
/home/groups/{id}。メンバーをまとめ、権限付与の単位にする - ロール —
/home/roles/{id}。権限のまとまり - サービスアカウント — パスワードを持たない非対話型のアイデンティティ。連携処理が
runAsで利用し、サインインはできません
グループ・ロールは階層を持てます。メンバーシップには、直接の所属と(祖先を含む)実効的な所属があります。
権限(ACL)
ノードごとに、プリンシパルに対して権限を許可(allow) または拒否(deny) します。
acl:
- group: commerce-operators
privileges: jcr:read, jcr:write
effect: allow
- user: anonymous
privileges: [jcr:all]
effect: deny
- 付与先は
group/user/principalのいずれか 1 つ privilegesはjcr:read、jcr:write、jcr:allなどの JCR 権限effectはallowまたはdeny
ACL は、Content Browser のインスペクター(権限)からも、プロビジョニングの nodes からも設定できます。
運用のヒント
- サービスアカウントには、通常のグループへ追加し、そのグループにノード権限を付与してアクセスを与えます。
- パスワードの変更・リセットは Identity Manager から行います(プロビジョニングでは既存のパスワードは変更されません)。
- 認証は SAML 2.0(SP / IdP をゼロ設定で同梱)に基づきます。