Отключите ПОЛУЧИТЬ доступ к поставщику пользовательских учетных данных ServiceStack

Я знаю, что в какой-то момент наткнулся на пост, но, похоже, ничего не могу найти. Похоже, что по умолчанию ServiceStack разрешает доступ к /auth через GET или POST. GET - это не то, что мы хотим в производстве.

Мне нужно отключить GET доступ к /auth. Есть идеи?

1 ответ

Решение

Вы можете использовать пользовательский ValidateFn AuthenticateServices, чтобы добавить свою собственную пользовательскую проверку, например:

AuthenticateService.ValidateFn = (authService, verb, requestDto) => {
    if (verb == HttpMethods.Get) 
        throw new NotSupportedException("GET's not allowed");
};

В противном случае вы можете добавить свои собственные атрибуты Restricting Services к услугам, которые вам не принадлежат, используя свободный API для динамического добавления атрибутов, например:

typeof(Authenticate)
    .AddAttributes(new RestrictAttribute(RequestAttributes.HttpPost));
Другие вопросы по тегам