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

ASP.NET Discussion :

Asp.net webforms user identity dans une requête sql


Sujet :

ASP.NET

  1. #1
    Membre régulier
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Janvier 2016
    Messages : 7
    Par défaut Asp.net webforms user identity dans une requête sql
    Bonjour,

    Voici ce que j'essaye de faire en vain: récupérer le nom de l'utilisateur connecté (compte individuel) afin de lui permettre d'interagir avec la base de données.

    En page load:

    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (this.User != null && this.User.Identity.IsAuthenticated)
                {
                    var userName = HttpContext.Current.User.Identity.Name;
                }

    Ma source de données de test:

    Code ASPX : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:DefaultConnection %>" InsertCommand="INSERT INTO ANNONCES(iduser, dept_bien, ville_bien) VALUES (@userName, @dept_bien, @ville_bien)" SelectCommand="SELECT iduser, dept_bien, ville_bien FROM ANNONCES">
            <InsertParameters>
                <asp:Parameter Name="userName" />   <----- utilisation de la var
                <asp:Parameter Name="dept_bien" />
                <asp:Parameter Name="ville_bien" />
            </InsertParameters>
        </asp:SqlDataSource>
    Le résultat ? L'insertion en base de données s'effectue sans l'identifiant name de l'utilisateur.

  2. #2
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Billets dans le blog
    3
    Par défaut
    Tu utilises quelle version ? Identity 2.0 ou 3.0 ? De meme, quelle version d'ASP.NET utilises-tu ?
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  3. #3
    Membre régulier
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Janvier 2016
    Messages : 7
    Par défaut
    Bonjour et merci de ton retour.

    Je suis en 4.5.2 .NET et 2.2.1 identity.

  4. #4
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Billets dans le blog
    3
    Par défaut
    Ca peut venir de plusieurs choses. Voici 3 points a verifier :
    1 - S'assurer que l'authentication Windows est ACTIVEE
    2 - S'assurer que l'authentication Anonyme est DESACTIVEE (c'est le plus important)
    3 - S'assurer que l'impersonation est ACTIVEE

    En gros ca revient a avoir ceci dans le web.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
    <authentication>
        <anonymousAuthentication enabled="false" userName="" />
        <basicAuthentication enabled="false" />
        <clientCertificateMappingAuthentication enabled="false" />
        <digestAuthentication enabled="false" />
        <iisClientCertificateMappingAuthentication enabled="false"></iisClientCertificateMappingAuthentication>
        <windowsAuthentication enabled="true">
            <providers>
                <add value="Negotiate" />
                <add value="NTLM" />
            </providers>
        </windowsAuthentication>
    </authentication>

    Aussi, verifie que tu n'as pas de ligne comme celle qui suit dans ton web.config :

    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <modules>
          <remove name="FormsAuthentication"/>
    </modules>

    Sources : Authentication issue when debugging in VS2013 - iis express / HttpContext.Current.User.Identity.Name is empty using IIS Express but not Visual Studio Development Server / HttpContext.Current.User.Identity.Name returns blank?
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

Discussions similaires

  1. [Débutant] Insérer des variables ASP.VB.NET dans une requête SQL
    Par docmaniya dans le forum ASP.NET
    Réponses: 3
    Dernier message: 16/03/2015, 13h20
  2. [C#/ASP.NET]Jouer un son dans une application web
    Par byphantom dans le forum ASP.NET
    Réponses: 1
    Dernier message: 13/06/2007, 15h28
  3. [ASP.NET][C#]Récupération valeur dans une table
    Par johnny_hey dans le forum ASP.NET
    Réponses: 4
    Dernier message: 23/03/2007, 14h44
  4. Nom de champ variable dans une requête SQL
    Par stip dans le forum ASP
    Réponses: 2
    Dernier message: 30/09/2004, 18h02
  5. Utilisation de MAX dans une requête SQL
    Par Evil onE dans le forum Langage SQL
    Réponses: 7
    Dernier message: 15/06/2004, 18h38

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