Skip to content

Commit 8a643d7

Browse files
fix: The manager(non-admin user) of the application is unable to select a list of apps when assigning permissions. (#4053)
* App RBAC name fix
1 parent 6742145 commit 8a643d7

File tree

2 files changed

+6
-2
lines changed

2 files changed

+6
-2
lines changed

api/restHandler/AppRestHandler.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ package restHandler
1919

2020
import (
2121
"encoding/json"
22-
"fmt"
2322
client "github.com/devtron-labs/devtron/api/helm-app"
2423
"github.com/devtron-labs/devtron/api/restHandler/common"
2524
"github.com/devtron-labs/devtron/pkg/app"
@@ -330,7 +329,7 @@ func (handler AppRestHandlerImpl) GetAppListByTeamIds(w http.ResponseWriter, r *
330329
accessedApps = append(accessedApps, app)
331330
continue
332331
}
333-
object := fmt.Sprintf("%s/%s", project.ProjectName, app.Name)
332+
object := handler.enforcerUtil.GetAppRBACNameByAppAndProjectName(project.ProjectName, app.Name)
334333
if ok := handler.enforcer.Enforce(token, casbin.ResourceApplications, casbin.ActionGet, object); ok {
335334
accessedApps = append(accessedApps, app)
336335
}

util/rbac/EnforcerUtil.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ type EnforcerUtil interface {
6363
GetRbacObjectsByAppIds(appIds []int) map[int]string
6464
GetAllActiveTeamNames() ([]string, error)
6565
GetRbacObjectsByEnvIdsAndAppId(envIds []int, appId int) (map[int]string, map[string]string)
66+
GetAppRBACNameByAppAndProjectName(projectName, appName string) string
6667
}
6768

6869
type EnforcerUtilImpl struct {
@@ -604,3 +605,7 @@ func (impl EnforcerUtilImpl) GetAllActiveTeamNames() ([]string, error) {
604605
}
605606
return teamNames, nil
606607
}
608+
609+
func (impl EnforcerUtilImpl) GetAppRBACNameByAppAndProjectName(projectName, appName string) string {
610+
return fmt.Sprintf("%s/%s", strings.ToLower(projectName), strings.ToLower(appName))
611+
}

0 commit comments

Comments
 (0)