Loading...

[Update] MBC CQRS サーバーレス フレームワーク v1.3.1 をリリース

MBC CQRS サーバーレス フレームワーク v1.3.1 をリリースしました。今回のリリースでは、グループベースのロール認可機能を追加しました。後方互換性を維持しており、既存のコードはそのまま動作します。

主な変更点

新機能:グループベースのロール認可

  • RolesGuard が JWT の custom:roles(直接ロール)を確認した後、新しい custom:groups クレームに含まれるグループから導出されたロールも確認するようになりました
  • 新しい @GroupRoleResolver() デコレータと IGroupRoleResolver インターフェースを追加。アプリごとに 1 つのリゾルバを実装し、グループ ID をロールにマッピングします(マッピングは JWT に保存されません)
  • UserContexttenantRoles(直接ロールの配列)と tenantGroupIds(グループ ID)を追加。tenantRole(単数)は後方互換性のため維持
  • オプトイン:既存の @Roles() チェックはコード変更なしで動作します
  • リゾルバの失敗は 5xx として伝播し、バックエンド障害を本来のアクセス拒否と区別できます

バグ修正

  • 不正な custom:groups クレームを例外ではなく許容(グループロールなしにフェイルクローズ)するようにし、不正なトークンでもリクエストをクラッシュさせず直接ロールのみのチェックに縮退します

アップグレード方法

npm install @mbc-cqrs-serverless/core@1.3.1

破壊的変更はありません。v1.3.1 は完全に後方互換です。

関連リンク

Top