mirror of https://github.com/grafana/grafana
IAM - Fix error messages for resource permissions endpoints (#85773)
* IAM: fix many error messages in access-related code to provide more information * Remove debug statement * Refactor resourcepermissions package to use errutil * Replace a few more errors with errutil and wrap errors found in users and teams services * Apply diff of openAPI specpull/86375/head
parent
60abf01526
commit
d409d8e860
@ -1,8 +1,56 @@ |
||||
package resourcepermissions |
||||
|
||||
import "errors" |
||||
import ( |
||||
"github.com/grafana/grafana/pkg/util/errutil" |
||||
) |
||||
|
||||
const ( |
||||
invalidPermissionMessage = `Permission [{{ .Public.permission }}] is invalid for this resource type` |
||||
invalidAssignmentMessage = `Assignment [{{ .Public.assignment }}] is invalid for this resource type` |
||||
invalidParamMessage = `Param [{{ .Public.param }}] is invalid` |
||||
invalidRequestBody = `Request body is invalid: {{ .Public.reason }}` |
||||
) |
||||
|
||||
var ( |
||||
ErrInvalidPermission = errors.New("invalid permission") |
||||
ErrInvalidAssignment = errors.New("invalid assignment") |
||||
ErrInvalidParam = errutil.BadRequest("resourcePermissions.invalidParam"). |
||||
MustTemplate(invalidParamMessage, errutil.WithPublic(invalidParamMessage)) |
||||
ErrInvalidRequestBody = errutil.BadRequest("resourcePermissions.invalidRequestBody"). |
||||
MustTemplate(invalidRequestBody, errutil.WithPublic(invalidRequestBody)) |
||||
ErrInvalidPermission = errutil.BadRequest("resourcePermissions.invalidPermission"). |
||||
MustTemplate(invalidPermissionMessage, errutil.WithPublic(invalidPermissionMessage)) |
||||
ErrInvalidAssignment = errutil.BadRequest("resourcePermissions.invalidAssignment"). |
||||
MustTemplate(invalidAssignmentMessage, errutil.WithPublic(invalidAssignmentMessage)) |
||||
) |
||||
|
||||
func ErrInvalidParamData(param string, err error) errutil.TemplateData { |
||||
return errutil.TemplateData{ |
||||
Public: map[string]any{ |
||||
"param": param, |
||||
}, |
||||
Error: err, |
||||
} |
||||
} |
||||
|
||||
func ErrInvalidRequestBodyData(reason string) errutil.TemplateData { |
||||
return errutil.TemplateData{ |
||||
Public: map[string]any{ |
||||
"reason": reason, |
||||
}, |
||||
} |
||||
} |
||||
|
||||
func ErrInvalidPermissionData(permission string) errutil.TemplateData { |
||||
return errutil.TemplateData{ |
||||
Public: map[string]any{ |
||||
"permission": permission, |
||||
}, |
||||
} |
||||
} |
||||
|
||||
func ErrInvalidAssignmentData(assignment string) errutil.TemplateData { |
||||
return errutil.TemplateData{ |
||||
Public: map[string]any{ |
||||
"assignment": assignment, |
||||
}, |
||||
} |
||||
} |
||||
|
||||
Loading…
Reference in new issue