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

- Festival #SharePoint et #Office 365 à Paris dans moins d’un mois ! par Le blog de Patrick [MVP Office 365] le 04-28-2016, 07:58

- Office 365: Sauvegarder un WorkBook OneNote 2016 depuis OneDrive par Blog Technique de Romelard Fabrice le 04-27-2016, 17:48

- Office 365: Comment ouvrir son OneDrive for Business en Explorateur Windows par Blog Technique de Romelard Fabrice le 04-25-2016, 18:09

- Problème de couplage entre Band 2 et Windows Mobile 10 par Blog de Jérémy Jeanson le 04-23-2016, 09:24

- Office 365: OneDrive for Business–Supprimer dans le bouton Sync du Site Web MySite par Blog Technique de Romelard Fabrice le 04-22-2016, 17:51

- SAM Labs, l'internet des objets, un jeu d'enfants par Le Blog (Vert) d'Arnaud JUND le 04-22-2016, 09:59

- SharePoint 2013: Personaliser le Theme Colors en mode Edit Page par Blog Technique de Romelard Fabrice le 04-21-2016, 18:16

- Office 365: Monter une machine de management pour gérer Office 365 par Blog Technique de Romelard Fabrice le 04-21-2016, 14:49

- Office 365: Comment Gérer SharePoint Online avec Client Side Object Model (CSOM) par Blog Technique de Romelard Fabrice le 04-21-2016, 09:47

- Office 365: la synchronisation (mode Offline) avec OneDrive for Business par Blog Technique de Romelard Fabrice le 04-19-2016, 14:14