goharbor/harbor · error · *errors.Error
FORBIDDEN
FORBIDDEN
Error message
only admins(system and project) can access permissions
What it means
Error "only admins(system and project) can access permissions" thrown in goharbor/harbor.
Source
Thrown at src/server/v2.0/handler/permissions.go:71
}
var isSystemAdmin bool
var isProjectAdmin bool
if secCtx.IsSysAdmin() {
isSystemAdmin = true
} else {
if sc, ok := secCtx.(*local.SecurityContext); ok {
user := sc.User()
var err error
isProjectAdmin, err = p.mc.IsProjectAdmin(ctx, *user)
if err != nil {
return p.SendError(ctx, err)
}
}
}
if !isSystemAdmin && !isProjectAdmin {
return p.SendError(ctx, errors.ForbiddenError(errors.New("only admins(system and project) can access permissions")))
}
provider := rbac.GetPermissionProvider()
sysPermissions := make([]*types.Policy, 0)
proPermissions := provider.GetPermissions(rbac.ScopeProject)
if isSystemAdmin {
// project admin cannot see the system level permissions
sysPermissions = provider.GetPermissions(rbac.ScopeSystem)
}
return permissions.NewGetPermissionsOK().WithPayload(p.convertPermissions(sysPermissions, proPermissions))
}
func (p *permissionsAPI) convertPermissions(system, project []*types.Policy) *models.Permissions {
res := &models.Permissions{}
if len(system) > 0 {
var sysPermission []*models.Permission
for _, item := range system {View on GitHub (pinned to 7b2fd08cc5)
When it happens
Trigger: Thrown at src/server/v2.0/handler/permissions.go:71 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of goharbor/harbor@7b2fd08cc5 (2026-08-16).
Data as JSON: /api/errors/879788ef1af0abf0.
Report an issue: GitHub.