Анонимный доступ с WIF

После тщательного поиска ответа на SO, на этот раз я должен задать свой первый вопрос навсегда!

Вот и:
У меня есть приложение Windows Forms, которое использует дюжину служб WCF для обработки всей бизнес-логики. WIF реализован в каждой отдельной службе WCF, и пользователи проходят аутентификацию с помощью базовой аутентификации UserName.
Все работает хорошо, за исключением имеющегося у нас метода Ping ().
До внедрения WIF мы вызывали каждую службу WCF с фиктивным методом Ping () во время экрана-заставки, чтобы убедиться, что служба работает, но теперь пользователь не может получить доступ к этому методу, поскольку он еще не вошел в систему.

Есть ли способ различить аутентифицированные и анонимные методы в службе, в которой реализован WIF? Я полагаю, что нет, поэтому я хотел бы знать, может ли STS выпускать анонимный токен?

У меня сейчас практически нет идей, поэтому я буду благодарен за любую помощь или просто некоторые подсказки :)


person JJP    schedule 16.05.2011    source источник


Ответы (1)


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

В качестве примера:

<location path="AnonymousServices">
    <system.webServer>
        <modules>
            <remove name="WSFederationAuthenticationModule" />
            <remove name="SessionAuthenticationModule" />
        </modules>
    </system.webServer>
</location>

Я не пробовал это на практике, но должно работать.

person Bobby D    schedule 28.07.2011
comment
или просто добавьте раздел авторизации, позволяющий анонимным пользователям (в теге местоположения) - person Jimit; 07.06.2012