Просмотр исходного кода

Add view-split-test and modify-split-test capabilities

GitOrigin-RevId: 3f0752aec332c386ece72d2447d39126065ddb35
Andrew Rumble 1 год назад
Родитель
Сommit
906a2f0686

+ 5 - 0
services/web/app/src/Features/UserMembership/UserMembershipMiddleware.js

@@ -7,6 +7,7 @@ const EntityConfigs = require('./UserMembershipEntityConfigs')
 const Errors = require('../Errors/Errors')
 const HttpErrorHandler = require('../Errors/HttpErrorHandler')
 const TemplatesManager = require('../Templates/TemplatesManager')
+const { useAdminCapabilities } = require('../Helpers/AdminAuthorizationHelper')
 
 // set of middleware arrays or functions that checks user access to an entity
 // (publisher, institution, group, template, etc.)
@@ -185,16 +186,20 @@ const UserMembershipMiddleware = {
 
   requireSplitTestMetricsAccess: [
     AuthenticationController.requireLogin(),
+    useAdminCapabilities,
     allowAccessIfAny([
       UserMembershipAuthorization.hasStaffAccess('splitTestMetrics'),
       UserMembershipAuthorization.hasStaffAccess('splitTestManagement'),
+      UserMembershipAuthorization.hasAdminCapability('view-split-test'),
     ]),
   ],
 
   requireSplitTestManagementAccess: [
     AuthenticationController.requireLogin(),
+    useAdminCapabilities,
     allowAccessIfAny([
       UserMembershipAuthorization.hasStaffAccess('splitTestManagement'),
+      UserMembershipAuthorization.hasAdminCapability('modify-split-test'),
     ]),
   ],