2011-06-06 3 views
0

J'utilise certaines ressources de la machine locale à l'aide de la fonctionnalité d'interopérabilité COM fournie dans Silverlight 4.0. Par conséquent, naturellement, j'ai besoin d'OOB avec des permissions élevées. Cependant, dans mon cas, je consomme les services WCF hébergés sur le canal HTTPS. Voici où je suis confronté au problème. L'OOB avec des autorisations élevées appliquées, ne me permet pas de consommer le service HTTPS hébergé sur un domaine différent ou le même, ce qui me donne une exception NotFound. Veuillez noter que j'ai utilisé le certificat auto-signé pour l'environnement de développement. La même chose est également installée dans le dossier racine approuvée de l'ordinateur client sur lequel je suis en train de tester. Fait intéressant, lorsque je définis les options Fiddler (dans la session Fiddler, Toos -> Options Fiddler -> HTTPS) pour intercepter le trafic HTTPS, avec la case à cocher Décrypter HTTPS, je peux utiliser le même service HTTPS sans toute exception. Mais pour cela, Fiddler m'a demandé de stocker un certificat temporaire dans le répertoire Fiddler de mon profil utilisateur, et je dois avoir au moins une session Fiddler à ce moment-là. Par conséquent, il semble être un problème de certification. Mais est-ce qu'il se rapporte de toute façon à la signature du fichier XAP avec le certificat requis? Je ne suis pas sûr. J'ai essayé avec un certificat auto-signé et lier mon URL de service de couche pour utiliser ce certificat. Ensuite, j'installe le même certificat dans le dossier racine de confiance du client. Mais je n'ai pas réussi à signer le XAP avec ce certificat.Accès au contenu HTTPS à partir d'applications Silverlight 4 hors navigateur

Faites-moi savoir si vous avez un moyen de contourner le problème.

Répondre

0

Si le code est exécuté dans un contexte utilisateur différent, vous devez placer votre certificat "auto-signé" dans le magasin Machine racine de confiance. Démarrer mmc.exe. Dans le menu Fichier, choisissez Ajouter un composant logiciel enfichable. Ajoutez le composant logiciel enfichable Certificats. Choisissez Machine locale. Importez la racine auto-signée dans le magasin racine de confiance.

+0

Salut Eric, merci pour votre réponse. En outre, le code s'exécute dans le même contexte utilisateur. Et j'utilise le certificat auto-signé pour le nœud hébergeant le service WCF, et je lie le canal HTTPS via ce certificat. Ce même certificat est également présent dans le magasin racine approuvé. Même si je suis incapable d'accéder à la même chose. Je ne pouvais même pas signer le XAP avec ce certificat, avec une erreur affichant que le certificat n'a pas de clé privée. Dois-je utiliser le certificat auto-signé généré localement et le placer dans le magasin racine approuvé? Ou le certificat utilisé pour lier la chaîne? –

0

J'ai eu le même problème et j'ai découvert que les paramètres SSL dans IIS étaient erronés.

J'ai configuré IIS 7.5 en SSL uniquement et pour accepter les certificats clients. Avec ces paramètres, je me suis retrouvé avec l'erreur de service non trouvé dans OOB. Après avoir configuré IIS pour ignorer les certificats clients, l'application OOB fonctionne correctement.

Questions connexes