Обработчик пепла SharePoint 2010 анонимный доступ - PullRequest
2 голосов
/ 07 июня 2011

Я видел много информации в Интернете о том, как разрешить анонимный доступ к определенной странице приложения SharePoint путем наследования от UnsecuredLayoutsPageBase и т. Д.

Как можно добиться того же для обработчика ashx, которыйживет в каталоге раскладок?По умолчанию SP требует аутентификации для получения доступа к обработчику.Я могу обойти это, разрешив анонимный доступ к самому сайту, но я не могу с этим смириться ... Мне нужен анонимный доступ только к обработчику.Я попытался вставить файл web.config в тот же каталог, что и обработчик, и разрешить анонимный доступ туда, но это все равно не работает.

1 Ответ

3 голосов
/ 20 октября 2011

У меня была такая же ситуация. Вы заявили, что «не можете обойтись без [...] разрешения анонимного доступа к самому сайту», поэтому я не уверен, что мое решение будет работать для вас, но вот оно:

  1. Включить анонимный доступ к SharePoint (шаги 1 - 6 из http://www.topsharepoint.com/enable-anonymous-access-in-sharepoint-2010)
  2. В диспетчере IIS включите анонимную аутентификацию для подпапки раскладок, содержащей ваш файл Ashx. (Похоже, SharePoint все еще требует аутентификации для страниц приложения, поскольку они выходят из LayoutsPageBase).

В качестве альтернативы на своем сайте разработчика я включил анонимный доступ SharePoint, включил анонимный доступ из диспетчера IIS, а затем создал 2 правила web.config

<system.web>
    <authorization>
        <deny users="?" />
    </authorization>
    ...
</system.web>
<location path="_layouts/Folder/Anonymous.ashx">
    <system.web>
        <authorization>
            <allow users="*" />
        </authorization>
    </system.web>
</location>

Однако я думаю, что эта версия слишком сложна. Я предпочитаю первый вариант.

...