Skip to content

Commit 5eceabf

Browse files
zstybliktorkelo
authored andcommitted
fix(): Check Organization exists before User is added (grafana#5302)
Commit adds a check whether Organization exists before User is added to the organization. Fixes grafana#3151.
1 parent 67ad903 commit 5eceabf

File tree

2 files changed

+8
-1
lines changed

2 files changed

+8
-1
lines changed

pkg/login/ldap.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -219,7 +219,8 @@ func (a *ldapAuther) syncOrgRoles(user *m.User, ldapUser *ldapUserInfo) error {
219219

220220
// add role
221221
cmd := m.AddOrgUserCommand{UserId: user.Id, Role: group.OrgRole, OrgId: group.OrgId}
222-
if err := bus.Dispatch(&cmd); err != nil {
222+
err := bus.Dispatch(&cmd)
223+
if err != nil && err != m.ErrOrgNotFound {
223224
return err
224225
}
225226

pkg/services/sqlstore/org_users.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,12 @@ func AddOrgUser(cmd *m.AddOrgUserCommand) error {
2626
return m.ErrOrgUserAlreadyAdded
2727
}
2828

29+
if res, err := sess.Query("SELECT 1 from org WHERE id=?", cmd.OrgId); err != nil {
30+
return err
31+
} else if len(res) != 1 {
32+
return m.ErrOrgNotFound
33+
}
34+
2935
entity := m.OrgUser{
3036
OrgId: cmd.OrgId,
3137
UserId: cmd.UserId,

0 commit comments

Comments
 (0)