Аутентификация с помощью OpenRasta

Я пытаюсь использовать OpenRasta для простого сервиса RESTful. Эта служба должна быть защищена либо с помощью базовой аутентификации http, либо (предпочтительно) дайджеста.

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

Кажется, что установка метода RequAuthentication на мой метод или обработчик ничего не делает.

Кто-нибудь делал это раньше? Или это просто мечта?

ОБНОВЛЕНИЕ: я разочаровался в получении работы и пошел с вилкой Скотта Литтлвуда OpenRasta. Он изменил способ аутентификации, и, используя его реализацию, мне удалось сделать и Basic, и Digest.

3 ответа

Решение

Я собрал небольшой пост в блоге и пример приложения, чтобы показать, как включить дайджест-аутентификацию с использованием текущего RTM OpenRasta.

http://scottondotnet.blogspot.com/2010/10/openrasta-digest-authentication.html

Исходный код можно найти здесь: http://github.com/scottlittlewood/OpenRastaDigestDemo

Я думаю, что проблема заключается в использовании Cassini (встроенного в VS.NET) для отладки. Cassini не поддерживает аутентификацию, как IIS. Когда я переключился на использование IIS, он начал запрашивать у меня аутентификацию.

Посмотрите на классы в OpenRasta.Security. Это поставщик IAuthenticationProvider, который вы должны внедрить и зарегистрировать в контейнере для дайджеста.

Проверьте журнал отладки, если после этого он все еще не работает, и отправьте его копию в списки рассылки, люди там смогут вам помочь.

Другие вопросы по тегам