WCF REST Service - 401 Unauthorized

Мы находимся в процессе разработки веб-службы WCF REST, которая просто получает кучу произвольного текста от любого анонимного пользователя, а затем выполняет некоторую обработку на сервере.

Например, , вот один метод из нашей веб-службы:

[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]
public class MyRESTService : IMyRESTService
{
    [WebInvoke(Method = "PUT", UriTemplate = "/MyRESTMethod?paramA={paramA}¶mB={paramB}")]
    public Stream MyRESTMethod(string paramA, string paramB, Stream rawData)
    {
        //do some stuff...
    }
}

Если мы просто воспользуемся настройками IIS по умолчанию, мы получим (401) Unauthorized . Однако после долгих проб и ошибок мы выяснили, что можем заставить его работать, предоставив WRITE доступ к «Всем» в фактическом файле .svc для нашей службы.

Мой вопрос: почему в миру понадобится ли IIS для записи в файл .svc , чтобы это работало? Есть ли лучший способ, или я застрял с этим хакерским (и, возможно, небезопасным) обходным решением?

WTF Microsoft?

Возможно связано:

8
задан Daniel Neel 8 August 2017 в 23:54
поделиться