code: func (s *AccessService) GetRoles() ([]services.Role, error) {
  	result, err := s.GetRange(context.TODO(), backend.Key(rolesPrefix), backend.RangeEnd(backend.Key(rolesPrefix)), backend.NoLimit)
  	if err != nil {
  		return nil, trace.Wrap(err)
  	}
  	out := make([]services.Role, 0, len(result.Items))
  	for _, item := range result.Items {
  		role, err := services.GetRoleMarshaler().UnmarshalRole(item.Value,
  			services.WithResourceID(item.ID), services.WithExpires(item.Expires))
  		if err != nil {
  			return nil, trace.Wrap(err)
  		}
  		out = append(out, role)
  	}
  	sort.Sort(services.SortedRoles(out))
  	return out, nil
  }
docs: // GetRoles returns a list of roles registered with the local auth server