2010-10-24 6 views
0

Dans un projet en cours, nous hébergeons un service WCF 3.5 sur IIS7 et exposons les méthodes via basicHttpBinding à un client Adobe AIR/Flex4. Heureusement, Flash Builder 4 a intégré la prise en charge de SOAP, ce qui permet de générer facilement un proxy de service.Sécurité WCF et AIR/Flex 4

Malheureusement, nous ne sommes pas en mesure de trouver une solution élégante pour activer l'authentification du nom d'utilisateur. La seule façon de travailler est de passer le nom d'utilisateur et le mot de passe à chaque appel de méthode, ce qui souffle certainement les signatures de méthode et impose l'implémentation de la méthode de service pour effectuer une validation par leurs propres moyens.

Pourriez-vous me diriger vers une solution qui pourrait amener l'authentification du nom d'utilisateur dans les en-têtes de message à adobe flex?

Meilleures salutations, Daniel Lang

Répondre

0

Comment voulez-vous transmettre les informations d'authentification dans une application Flex non?

La plupart des gens définissent simplement un cookie. De nombreux serveurs d'applications côté serveur effectuent ces tâches en interne.

Tout appel de Flash Player vers votre backend enverra tous les cookies qui ont déjà été envoyés; qui peut facilement être utilisé pour se connecter à votre session côté serveur. Je pensais que la plupart des serveurs d'applications côté serveur gèrent ces choses en interne.

Si vous devez définir des en-têtes spécifiques pour les appels HTML, vous pouvez les spécifier à l'aide de headers property of HTTPService. Voici un bon exemple sur la façon de set the header.

+0

Merci pour la réponse! Mais pour autant que je sache (acc google), une application Adobe AIR avec Flex ne prend pas en charge les cookies. En fait je cherchais ou une solution comme wsHttpBinding, où je peux spécifier les informations d'identification qui sont ensuite envoyées dans l'en-tête http. Existe-t-il un produit aquivalent qui pourrait être utilisé en combinaison avec AIR/Flex? –

+0

Ahh désolé, je vois - vous avez déjà répondu à ma question dans le dernier paragraphe! Cela me permettra de trouver une solution! Je vous remercie! –