Аутентификация с помощью форм веб-службы и отказ от пользователей = *

У меня есть приложение ASP.Net MVC, в котором я хочу разрешить клиентам загружать данные через веб-сервис. Однако я хочу разрешить доступ к своим данным только аутентифицированным клиентам.

Сначала я добавил deny users = "*" к пути в моем web.config, но это создает трудности при попытке добавить веб-сервис в качестве ссылки, потому что у меня уже есть аутентификация с помощью форм для приложения (перенаправление на мою страницу входа). Под сложностью я имею в виду, что когда вы пытаетесь добавить ссылку на службу в VS, вы перенаправляетесь на страницу входа. Затем вы испытываете странные ощущения, пытаясь войти в систему (в браузере на экране «Добавить службы»), поскольку страница постоянно обновляется.

Мое текущее решение состоит в том, чтобы не использовать deny users = "*" и просто проверять "IsAuthenticated" для каждого метода, что неплохо, потому что существует всего несколько методов, однако это раскрывает доступные веб-методы, что делает его менее безопасным. ?

Есть предложения или лучшие решения?


person ptutt    schedule 01.07.2010    source источник


Ответы (1)


Вы хотите:

deny users="?"

Вместо:

deny users="*"

Верхний гарантирует, что все аутентифицированы.

Нижний не позволит никому войти.

person Chris    schedule 23.08.2010