yasudacloudの日記

札幌に住むソフトウェアエンジニア

Strapi4.8.0からロールの登録上限がなくなっていた

最近Strapi触ってないなと思って何気なくリリース一覧を眺めていたところ、気になる一文を発見。

github.com

Enterprise Edition版(以下EE)にあったRBACというものがCommunity Editionにも入ったとのこと・・?

RBAC(Role-Based Access Control)についてはこちらに説明がありました。ドキュメントには明記されていないのですが、実際に4.8.0〜とそれ以前のバージョンでロール周りを動かして比べてみたところRoleを登録できる上限の3つ縛りがなくなっていました🥳

旧バージョンのロールの縛り

まずは4.8.0より古いバージョンだとどうなるか。

管理画面のSettings→RolesにデフォルトではAuthor、Editor、Super Adminの3つのロールがあります。

この状態で「Add new role」をクリックすると下記のようにお断りモーダルが出ます。EEだと3個までしか登録できなかったのです。

ちなみにロールはDBで管理されているので直接Insertして一時的に増やすことができますが、Strapiが起動するタイミングで削除されるっぽいので事実上回避することができませんでした。

4.8.0以降のロール

4.8.0〜はこのように何個でも登録できました。

管理画面のロールはコレクションタイプのフィールド単位でReadOnlyやCreateOnlyが設定できるので、ロールが増えればよりセキュアで柔軟な設計が期待できます。