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 :

MemberShip ASP.NET et base de donnée perso pour user management silverlight


Sujet :

Silverlight

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 10
    Par défaut MemberShip ASP.NET et base de donnée perso pour user management silverlight
    Bonjour,

    après plusieurs recherches sur différents sites, je n'arrive pas a trouver de solution a mon problème.

    Je souhaiterais utilisée le membership de ASP.NET, avec ma propre base de donnée, qui contient une table d'utilisateurs, pour réaliser une partie d'inscription et d'authentification sur une application silverlight.
    J'espere que je suis assez clair dans mes explications.

    Merci pour l'aide apporter.

    Ghost

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    876
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 876
    Par défaut
    Parles-tu de copier les tables asp (roles, membership, users, usersInRole,...) dans ta propre base de donnée ?

    Si oui, c'est ce que je fais et je peux peut-être t'aider car tu peux garder le service d'authentification tel quel,

    si non ???

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 10
    Par défaut
    Bonjour Golzinne, merci pour ton aide,

    en faite sa pourrais être une solution, je souhaite juste avoir une gestion de mes utilisateurs dans mon application silverlight, afin de pouvoir gérer leur connexion, leur inscriptions, et par la suite gérer leur interactions avec mon application.

    peu tu m'expliquer plus en détails ce que tu fais ?

    Merci pour ton aide.

    Ghostong

  4. #4
    Membre Expert
    Avatar de GuruuMeditation
    Homme Profil pro
    .Net Architect
    Inscrit en
    Octobre 2010
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : .Net Architect
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 705
    Par défaut
    En fait, c'est surtout dans le WCF que ça se passe.
    Tu doit créer un service qui va utiliser le AuthenticationService de ASP.NET:
    AuthenticationService.svc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <%@ ServiceHost Language="C#" 
    Service="System.Web.ApplicationServices.AuthenticationService" %>
    Dans le fichier config :
    Code xml : 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
     
    <system.servicemodel>
    <!-- WCF config here -->
     <services>
                <service behaviorConfiguration="AppServicesBehavior" name="System.Web.ApplicationServices.AuthenticationService">
                    <endpoint binding="basicHttpBinding" 
                        bindingNamespace="http://asp.net/ApplicationServices/v200"
                        contract="System.Web.ApplicationServices.AuthenticationService" />
                </service>
                <service name="CheckAccessService">
                    <endpoint address="" binding="customBinding" bindingConfiguration="CheckAccessService.customBinding0"
                        contract="CheckAccessService" />
                    <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
                </service>
            </services>
            <serviceHostingEnvironment aspNetCompatibilityEnabled="true"
                multipleSiteBindingsEnabled="true" />
     
    </system.servicemodel>
    Après, du côté serveur, tu peux voir le user/role :
    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    [operationContract]
    public bool MyService()
    {
    <div style="margin-left:40px">if (HttpContext.Current.User.IsInRole(""))
    {
         // ok
    }
    else
    {
         // not ok
    }</div>}

    Du coté client pour passer ton user/password , il faut rajouter une référence vers ce service, et après tu dois t'authentifier avec :
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    var client  = new AuthenticationService.AuthenticationServiceClient();
               ....
                client.LoginAsync(
                    "user", 
                    "password", 
                    "", 
                    true, 
                    "something");

  5. #5
    Membre Expert
    Avatar de GuruuMeditation
    Homme Profil pro
    .Net Architect
    Inscrit en
    Octobre 2010
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : .Net Architect
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 705
    Par défaut
    J'allais oublier : mettre ses services en HTTPS ou autre sécurisé
    Une page qui explique tout ça : http://www.silverlightshow.net/items...lverlight.aspx

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    876
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 876
    Par défaut
    pour ma part, j'utilise donc une copie des tables ASP dans la même base de données qu'utilisée par mon application.

    Le simple fait de modifier mon webconfig comme suit , me permet d'utiliser le service d'authentification "standard" d'une business application.

    Code xml : 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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    <connectionStrings>
        <add name="JConnectionString" connectionString="Data Source=tonServeur;Initial Catalog=taDB ;Persist Security Info=True;User ID=tonUser;Password=tonPassword" providerName="System.Data.SqlClient" />
     
      <add name="taDBEntities" connectionString="metadata=res://*/JEdmx.csdl|res://*/JEdmx.ssdl|res://*/JEdmx.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=tonServeur;Initial Catalog=taDB;Persist Security Info=True;User ID=tonUser;Password=tonPwd;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />
     
      </connectionStrings>
      <system.web>
        <roleManager enabled="true">
          <providers>
            <clear />
            <add name="AspNetSqlRoleProvider" connectionStringName="JConnectionString" applicationName="/" type="System.Web.Security.SqlRoleProvider,  System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
          </providers>
        </roleManager>
        <!--bloc suivant rajouté pour authentification distante-->
        <membership>
          <providers>
            <clear />
            <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="JConnectionString" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" applicationName="/" requiresUniqueEmail="false" passwordFormat="Hashed" maxInvalidPasswordAttempts="10" minRequiredPasswordLength="5" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" passwordStrengthRegularExpression="" />
          </providers>
        </membership>
        <httpModules>
          <add name="DomainServiceModule" type="System.ServiceModel.DomainServices.Hosting.DomainServiceHttpModule, System.ServiceModel.DomainServices.Hosting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        </httpModules>
        <compilation debug="true" targetFramework="4.0">
          <assemblies>
            <add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
          </assemblies>
        </compilation>
        <authentication mode="Forms">
          <!--<forms name=".JBase_ASPXAUTH" />-->
        </authentication>
        <profile>
          <properties>
            <add name="FriendlyName" />
          </properties>
        </profile>
      </system.web>
      <system.webServer>

    maintenant, c'est à adapter à ta sauce...

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    876
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 876
    Par défaut
    ton lien est corrompu, peux tu mettre le lien complet ?

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 10
    Par défaut
    c'est le liens que guruu a link mais j'ai pas créer la bonne application, je n'est pas fait une appli web et je viens de m'en rendre compte

    sinon gold, comment je peux extraire les tables de ASP et les copier dans ma base de donnees sql sur mon serveur ?, afin de tester aussi ta solution

    ghost

  9. #9
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 10
    Par défaut
    bonjour,

    j'ai résolue le problème en utilisant l'assistant de configuration de sql server, ce qui m'as permis de copier les tables du membership dans ma base de donner perso.

    j'ai ensuite adapter le web.config, avec dans la connection string :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <add name="JConnectionString" connectionString="Data Source=tonServeur;Initial Catalog=taDB ;Persist Security Info=True;User ID=tonUser;Password=tonPassword" providerName="System.Data.SqlClient" />
    Merci pour l'aide apporter,

    Ghost

  10. #10
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    876
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 876
    Par défaut
    Je vois que tu écris une ligne de code tous les deux mois...
    J'espère que ton programme n'est pas trop long

    Plus sérieusement, super que ça marche et merci d'avoir communiqué ta solution.

  11. #11
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 10
    Par défaut
    bonjour,

    ou alors je viens de me rendre compte que poster la réponse à ma question aiderais surement les autres membres afin qu'ils trouvent une solution rapide a leur problème.

    et pour info c'est une ligne de code et trois clics .

    Ghost

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

Discussions similaires

  1. liaison formulaire asp.net avec base de données
    Par 09182416 dans le forum Accès aux données
    Réponses: 0
    Dernier message: 18/03/2015, 23h15
  2. Authentification asp.net avec base de donnée
    Par hugo7 dans le forum ASP.NET
    Réponses: 18
    Dernier message: 28/06/2009, 23h07
  3. comparer les donnes d'un controle ASP.net au base de donne
    Par princesse_sahara dans le forum ASP.NET
    Réponses: 2
    Dernier message: 01/05/2008, 01h13
  4. Quel base de donnée choisir pour ASP.NET?
    Par othmane126 dans le forum ASP.NET
    Réponses: 2
    Dernier message: 08/10/2007, 01h06
  5. [CR][ASP.Net]Connection base de données / web.config
    Par Dozer71 dans le forum SAP Crystal Reports
    Réponses: 7
    Dernier message: 10/05/2005, 08h41

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