[v9.3.x] RBAC: Fix DeleteUserPermissions not being called on Upsert org sync (#60534)

RBAC: Fix DeleteUserPermissions not being called on Upsert org sync (#60531)

* fix DeleteUserPermissions not being called on RemoveOrgUser

* do not error out of auth flow

* fix test missing service

(cherry picked from commit 77786f236a)

Co-authored-by: Jo <joao.guerreiro@grafana.com>
This commit is contained in:
Grot (@grafanabot)
2022-12-19 11:25:03 -05:00
committed by GitHub
co-authored by Jo
parent 5a71779ea1
commit 2e4c921868
2 changed files with 6 additions and 3 deletions
@@ -324,12 +324,13 @@ func (ls *Implementation) syncOrgRoles(ctx context.Context, usr *user.User, extU
logger.Error(err.Error(), "userId", cmd.UserID, "orgId", cmd.OrgID)
continue
}
if err := ls.accessControl.DeleteUserPermissions(ctx, orgId, cmd.UserID); err != nil {
logger.Warn("failed to delete permissions for user", "userID", cmd.UserID, "orgID", orgId)
}
return err
}
if err := ls.accessControl.DeleteUserPermissions(ctx, orgId, cmd.UserID); err != nil {
logger.Warn("failed to delete permissions for user", "error", err, "userID", cmd.UserID, "orgID", orgId)
}
}
// update user's default org if needed
@@ -9,6 +9,7 @@ import (
"github.com/go-kit/log"
"github.com/go-kit/log/level"
"github.com/grafana/grafana/pkg/models"
"github.com/grafana/grafana/pkg/services/accesscontrol/actest"
"github.com/grafana/grafana/pkg/services/login"
"github.com/grafana/grafana/pkg/services/login/logintest"
"github.com/grafana/grafana/pkg/services/org"
@@ -56,6 +57,7 @@ func Test_syncOrgRoles_whenTryingToRemoveLastOrgLogsError(t *testing.T) {
SQLStore: nil,
userService: usertest.NewUserServiceFake(),
orgService: orgService,
accessControl: &actest.FakeService{},
}
err := login.syncOrgRoles(context.Background(), &user, &externalUser)