IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Silverlight Discussion :

Authentification WCF et Silverlight


Sujet :

Silverlight

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Authentification WCF et Silverlight
    Bonjour à tous,
    J'ai un petit soucis depuis hier sur l'authentification WCF.
    Bien que les ClientCredentials sont supportés par Silverlight 3, j'aimerai utilisé l'authentification ASP.NET dans mon service WCF.
    Pour cela:
    -Je crée un contrat de service:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
        [ServiceContract(Namespace = "")]
        public interface IAuthenticationService
        {
            [OperationContract()]
            bool Authentication(string login, string pass);
     
            [OperationContract]
            bool Authenticated();
        }
    -Je crée l'implémentation (juste pour tester):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
        [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]
        public class AuthenticationService : IAuthenticationService
        {
            #region IAuthenticationService Members
     
            public bool Authentication(string login, string pass)
            {
                FormsAuthentication.SetAuthCookie(login, false);
                GenericIdentity user = new GenericIdentity(login);
                GenericPrincipal securityPrincipal = new System.Security.Principal.GenericPrincipal(user, null);
                HttpContext.Current.User = securityPrincipal;
                Thread.CurrentPrincipal = securityPrincipal;
                return true;
            }
     
            [PrincipalPermission(SecurityAction.Demand, Authenticated = true)]
            public bool Authenticated()
            {
                return true;
            }
     
            #endregion
        }
    Vous remarquerez que j'y vais comme un barbare au niveau de l'authentification, j'ai voulu tout tester...

    -Je configure mon Web.config avec des choses de ce style:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>
    <authentication mode="Forms"/>
    Lorsque je lance mon client Silverlight, il appelle bien ma méthode d'authentification (qui se passe bien).
    Mais dès que j'appelle une autre méthode de mon service, je ne suis de suite plus identifié.

    Peut être un problème de cookie ? please help me

    EDIT: Avec un client de type WPF ou Winform le code fonctionne
    Dernière modification par Invité ; 04/09/2009 à 20h36.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 01/02/2010, 11h57
  2. Problème déploiement et accès WCF pour Silverlight
    Par tom741 dans le forum Silverlight
    Réponses: 4
    Dernier message: 03/07/2009, 14h51
  3. Problème authentification WCF
    Par silvinus dans le forum Services Web
    Réponses: 2
    Dernier message: 30/06/2009, 11h37
  4. [WCF Security Silverlight] marquer les méthodes avec des PermissionPrincipal
    Par anthyme dans le forum Windows Communication Foundation
    Réponses: 6
    Dernier message: 10/06/2008, 10h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo