Я где-то потерял перемену - я обновил ServiceStack от довольно старой версии сегодня (4.0.x) и нашел новый параметр типа IAuthRepository на HasRole и HasPermission. Мой проект не использует IAuthRepository, поэтому вложенный AuthRepo возвращает null. Когда я устанавливаю точку останова на строке HasRole ниже, я вижу, что строки в свойстве Roles переменной сеанса, но HasRole() возвращает false.Servicestack 4.5.6 сломал HasRole и HasPermission
Все мои требования требуютRole, RequiresAnyRole также не работают, как будто моя служба не имеет определенных ролей (но я могу видеть их в моей переменной session.Roles).
public class AppUniversalSearchService : Service
{
public IAuthRepository AuthRepo { get; set; }
public object Any(AppUniversalSearch request)
{
var session = base.SessionAs<DVAuthUserSession>();
if (session.HasRole("CanAccessPD", AuthRepo))
{
}
}
}