diff --git a/services/web/app/src/Features/UserMembership/UserMembershipEntityConfigs.js b/services/web/app/src/Features/UserMembership/UserMembershipEntityConfigs.js index 8c69032bab..c65f38e952 100644 --- a/services/web/app/src/Features/UserMembership/UserMembershipEntityConfigs.js +++ b/services/web/app/src/Features/UserMembership/UserMembershipEntityConfigs.js @@ -43,6 +43,23 @@ module.exports = { }, }, + groupMember: { + modelName: 'Subscription', + readOnly: true, + hasMembersLimit: true, + fields: { + primaryKey: '_id', + read: ['member_ids'], + write: null, + access: 'member_ids', + membership: 'member_ids', + name: 'teamName', + }, + baseQuery: { + groupPlan: true, + }, + }, + groupAdmin: { modelName: 'Subscription', fields: { diff --git a/services/web/app/src/Features/UserMembership/UserMembershipMiddleware.js b/services/web/app/src/Features/UserMembership/UserMembershipMiddleware.js index f2d062a721..f125496874 100644 --- a/services/web/app/src/Features/UserMembership/UserMembershipMiddleware.js +++ b/services/web/app/src/Features/UserMembership/UserMembershipMiddleware.js @@ -31,6 +31,14 @@ const UserMembershipMiddleware = { requireEntity(), ], + requireGroupMemberAccess: [ + AuthenticationController.requireLogin(), + fetchEntityConfig('groupMember'), + fetchEntity(), + requireEntity(), + allowAccessIfAny([UserMembershipAuthorization.hasEntityAccess()]), + ], + requireGroupManagementAccess: [ AuthenticationController.requireLogin(), fetchEntityConfig('group'),