mirror of
https://github.com/casdoor/casdoor.git
synced 2025-05-23 02:35:49 +08:00
fix: fix permission problem in provider (#2848)
This commit is contained in:
parent
ea88839db9
commit
eb448bd043
@ -159,6 +159,16 @@ func (c *ApiController) UpdateProvider() {
|
||||
return
|
||||
}
|
||||
|
||||
isGlobalAdmin, user := c.isGlobalAdmin()
|
||||
|
||||
if provider.Owner == "admin" && !isGlobalAdmin {
|
||||
c.ResponseError("no permission")
|
||||
return
|
||||
} else if !isGlobalAdmin && user.Owner != provider.Owner {
|
||||
c.ResponseError("no permission")
|
||||
return
|
||||
}
|
||||
|
||||
c.Data["json"] = wrapActionResponse(object.UpdateProvider(id, &provider))
|
||||
c.ServeJSON()
|
||||
}
|
||||
@ -189,6 +199,16 @@ func (c *ApiController) AddProvider() {
|
||||
return
|
||||
}
|
||||
|
||||
isGlobalAdmin, user := c.isGlobalAdmin()
|
||||
|
||||
if provider.Owner == "admin" && !isGlobalAdmin {
|
||||
c.ResponseError("no permission")
|
||||
return
|
||||
} else if !isGlobalAdmin && user.Owner != provider.Owner {
|
||||
c.ResponseError("no permission")
|
||||
return
|
||||
}
|
||||
|
||||
c.Data["json"] = wrapActionResponse(object.AddProvider(&provider))
|
||||
c.ServeJSON()
|
||||
}
|
||||
@ -208,6 +228,16 @@ func (c *ApiController) DeleteProvider() {
|
||||
return
|
||||
}
|
||||
|
||||
isGlobalAdmin, user := c.isGlobalAdmin()
|
||||
|
||||
if provider.Owner == "admin" && !isGlobalAdmin {
|
||||
c.ResponseError("no permission")
|
||||
return
|
||||
} else if !isGlobalAdmin && user.Owner != provider.Owner {
|
||||
c.ResponseError("no permission")
|
||||
return
|
||||
}
|
||||
|
||||
c.Data["json"] = wrapActionResponse(object.DeleteProvider(&provider))
|
||||
c.ServeJSON()
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user