🐛 Fix check perm panic

This commit is contained in:
2024-10-30 23:28:26 +08:00
parent 8fbb79607b
commit d7b1913bc3
3 changed files with 30 additions and 65 deletions

View File

@ -60,7 +60,7 @@ func getUserinfo(c *fiber.Ctx) error {
First(&data).Error; err != nil {
return fiber.NewError(fiber.StatusInternalServerError, err.Error())
} else {
data.PermNodes = c.Locals("permissions").(map[string]any)
data.PermNodes = user.PermNodes
}
var resp fiber.Map

View File

@ -19,7 +19,7 @@ func EnsureGrantedPerm(c *fiber.Ctx, key string, val any) error {
if err := EnsureAuthenticated(c); err != nil {
return err
}
perms := c.Locals("permissions").(map[string]any)
perms := c.Locals("user").(*sec.UserInfo).PermNodes
if !services.HasPermNode(perms, key, val) {
return fiber.NewError(fiber.StatusForbidden, fmt.Sprintf("missing permission: %s", key))
}