WCF REST Service - 401 Unauthorized

Wir sind in den Prozess der Entwicklung eines WCF REST web service, der erhält nur ein Haufen von beliebigen text aus jedem anonymen Benutzer, und dann führt einige Verarbeitung auf back-end.

Zum Beispiel, hier ist eine Methode, die von unserem web-service:

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

Wenn wir nur die Verwendung der standardmäßigen IIS-Einstellungen erhalten wir eine (401) Unauthorized. Jedoch, nach viel Versuch und Irrtum haben wir herausgefunden, dass wir konnte es zu arbeiten, indem Sie den SCHREIB-Zugriff für "Jeder" auf die tatsächliche .svc - Datei für unseren service.

Meine Frage ist: warum in der Welt würde IIS müssen über SCHREIBZUGRIFF verfügen, um eine .svc - Datei für diese Arbeit? Gibt es einen besseren Weg, oder bin ich stecken mit diesem hackish (und möglicherweise unsichere) Lösung?

WTF Microsoft?

Möglicherweise im Zusammenhang mit:

  • Die Zugriffsrechte nicht unbedingt gewährt werden müssen, "Alle". Stattdessen muss der authentifizierte Benutzer über diese Rechte verfügen. Für den anonymen Zugriff das IUSR".
InformationsquelleAutor Repo Man | 2011-08-17
Schreibe einen Kommentar