2010-08-05 6 views
0

Ceci est une sorte de question stupide, mais je n'arrive pas à trouver la réponse sur google. Je souhaite protéger mon WSDL de service WCF REST activé avec un nom d'utilisateur et un mot de passe https (comme mon routeur Linksys me demande d'entrer lorsque je navigue vers 192.168.1.1). J'utilise déjà un BasicAuthenticationRequestInterceptor avec le WCF Rest Starter Kit ... et cela me permet d'utiliser le client avec l'authentification basée sur l'en-tête HTTP classique ... mais cela ne me semble pas aller au point où l'utilisateur est invité à entrer un nom d'utilisateur et mot de passe quand ils vont à http://mysite.com/services/myserivce.svc ...WCF Nom d'utilisateur/Mot de passe

Comment faire?

Merci.

+1

Un service REST ne possède pas de WSDL ..... ce n'est pas quelque chose que vous feriez dans WCF, mais dans l'environnement d'hébergement, par exemple. C'est quelque chose que vous devez configurer dans IIS (nécessitant des autorisations de connexion/réglage) .... –

+0

Vrai, mais la même différence je suppose ... Je veux que mon mot de passe url protégé par une invite à l'utilisateur. Où ferais-je cela dans l'environnement d'hébergement? Dans les autorisations web.config pour IIS (authentification par formulaire)? – Jeff

Répondre

0

Si vous ne souhaitez pas publier votre WSDL, vous pouvez supprimer l'élément [serviceMetadata] de votre configuration. Comme suggéré par marc_s, vous pouvez utiliser la sécurité fournie par IIS (authentification de base/authentification Windows, etc.) pour sécuriser vos URL. Encore une autre approche serait d'exposer vos métadonnées à travers le point final sécurisé. Voir cet article MSDN pour le même: Custom Secure Metadata Endpoint. Là, le certificat a été utilisé mais je suis sûr que vous pouvez le modifier pour soutenir l'authentification de base.

Questions connexes