palauth-iam-go/check.go

27 lines
532 B
Go
Raw Normal View History

2023-10-21 12:02:42 +01:00
package palauthiam
import "context"
type CheckPermissionRequest struct {
UserID string
Permission string
}
type CheckPermissionResponse struct {
Allowed bool `json:"allowed"`
}
func (c *PalAuthIAMClient) CheckPermission(ctx context.Context, request *CheckPermissionRequest) (bool, error) {
resp := CheckPermissionResponse{}
err := c.getRequest(ctx, "/check", map[string]string{
"userId": request.UserID,
"permission": request.Permission,
}, &resp)
if err != nil {
return false, err
}
return resp.Allowed, nil
}