Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Thomas Lebrun

Tout sur WPF, LINQ, C# et .NET en général !

Actualités

[WP7] Gestion de l’authentification sous Windows Phone 7

L’une des problématiques que l’on rencontre à l’heure actuelle lorsque l’on développe des applications Windows Phone 7 concerne la gestion de l’authentification. En effet, il s’avère que l’authentification NTLM n’est pas supporté du coup, on est obligé de trouvé une solution de contournement.

Une des solutions possibles consiste à injecter/ajouter, dans les entêtes de la requête qui est envoyé, des entêtes personnalisées. Et pour bien faire, plutôt que de le faire manuellement sur chaque appel du service WCF, on va passer par un petit MessageInpector WCF pour faire en sorte que cela soit fait automatiquement Smile

Pour créer son Message Inspector WCF, il faut implémenter l’interface IClientMessageInspector. Malheurement, cette interface n’est pas disponible dans Silverlight mais , il est possible de télécharger le sample suivant et de récupérer le projet nommé SilverlightMessageInspector pour disposer de là-dîte fonctionnalité au sein de son application (Silverlight / Windows Phone 7).

Une fois que cela est fait, il faut créer le service WCF, en activant la compatibilité ASP.NET et vérifier, dans les méthodes, si les entêtes reçues contiennent bien des login/mot de passe corrects (éventuellement, en s’assurant de cela avec une connexion à une base de données, etc.):

image

A présent, il est temps de créer, côté Windows Phone, le MessageInspector WCF qui va injecter, lors de chaque requête, les entêtes nécessaires (login/mot de passe):

image

Une fois cette étape terminée, il ne reste plus qu’à appeler le service, en utilisant notre nouveau MessageInspector:

image

Et le tour est joué Smile

 

Attention tout de même: avec cette technique, les entêtes sont passées en clair donc il est impératif d’utiliser une liaison sécurisée (SSL) pour éviter que quelqu’un n’intercepte les appels WCF et donc les crédentials.

 

A+

Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :
Posted: mardi 30 novembre 2010 10:50 par Thomas LEBRUN

Commentaires

daniel a dit :

Très interessant.

Autre solution que SSL, encrypter les credentials et rajouter une date de validité du ticket pour éviter qu'il ne soit rejoué.

Cdlt,

Daniel

# décembre 1, 2010 15:38

Danuz a dit :

@Daniel : C'est exactement ce que je fais ! (plus simple que de mettre en place une architecture SSL ...)

# décembre 3, 2010 09:51

SteveB a dit :

j'imagine que MS va se réveiller et nous pondre les apis qui vont bien dans la MAJ de janvier (mais rien d'annoncée je crois?) !

# décembre 7, 2010 09:59
Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- [ #Yammer ] From Mailbox to Yammer and back / De votre messagerie vers Yammer et retour ! par Le blog de Patrick [MVP SharePoint] le il y a 21 heures et 42 minutes

- [ #Office 365 ] New service settings panel / Nouveau panneau de paramétrage des services par Le blog de Patrick [MVP SharePoint] le 09-11-2014, 08:50

- Problème de déploiement pour une démo SharePoint/TFS? par Blog de Jérémy Jeanson le 09-10-2014, 21:52

- [ #Office365 ] Delve first impressions / Premières impressions sur Delve par Le blog de Patrick [MVP SharePoint] le 09-09-2014, 16:57

- [ #Office365 ] How to change Administration console language ? / Comment changer la langue de la console d’administration ? par Le blog de Patrick [MVP SharePoint] le 09-09-2014, 08:25

- [ #SharePoint 2013 ] Suppression de bases de données en état “Pas de Réponse” par Le blog de Patrick [MVP SharePoint] le 09-04-2014, 14:10

- Changer l’adresse d’une ferme Office Web Apps associée à SharePoint par Blog de Jérémy Jeanson le 09-01-2014, 22:21

- Une ferme #SharePoint 2013 dans @Azure en quelques clics (1ère partie) ! par Le blog de Patrick [MVP SharePoint] le 08-28-2014, 18:52

- SharePoint 2013: Préparation de la migration - Création des site Templates dans 2010 et 2013 par Blog Technique de Romelard Fabrice le 08-20-2014, 16:31

- [ #Yammer ] How to change interface language ? Comment changer la langue de l’interface ? par Le blog de Patrick [MVP SharePoint] le 08-20-2014, 14:21