WCF REST Service - 401 non autorisé
Nous sommes dans le processus de développement d'un WCF REST service web qui reçoit juste un tas de l'arbitraire du texte à partir de n'importe quel utilisateur anonyme et puis effectue un traitement en back-end.
Par exemple, voici une méthode à partir de notre web service:
[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...
}
}
Si nous suffit d'utiliser la valeur par défaut des paramètres IIS nous obtenons un (401) Unauthorized
. Cependant, après beaucoup d'essais et d'erreurs, nous avons pensé que nous pouvions le faire fonctionner en donnant accès en ÉCRITURE à 'tout le monde' réel sur la .svc
fichiers de notre service.
Ma question est: pourquoi dans le monde serait IIS besoin d'avoir accès en ÉCRITURE à un .svc
fichier pour que cela fonctionne? Est-il une meilleure façon ou suis-je coincé avec ce hackish (et, éventuellement, d'insécurité) solution de contournement?
WTF Microsoft?
Peut-être liés:
- PUT et DELETE le repos de Service WCF cause 401 non autorisé d'erreur
- IIS7 Post/Put/Patch/Supprimer WCF oData Échec d'Authentification 401.3
OriginalL'auteur Repo Man | 2011-08-17
Vous devez vous connecter pour publier un commentaire.
J'ai aussi trouvé ceci peut être corrigé par la mise
<authentication mode="None" />
à l'intérieur de<system.web>
dans votreweb.config
Dépend de votre environnement. Dans mon cas, nous avons confiance que le réseau est sécurisé, et peut-être que c'est suffisant. Si vous avez besoin d'authentification directe entre les services, évidemment, ce sera un problème.
OriginalL'auteur captncraig
Après avoir parlé à une technologie représentant de M$, j'ai été informé que c'est bien le comportement attendu. Le service doit disposer d'un accès en écriture activée pour quelqu'un d'envoyer une demande à elle, et quand vous faites cela, il sera effectivement configurer l'accès en écriture automatiquement sur le .SVC fichier.
OriginalL'auteur Repo Man