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

Développement SQL Server Discussion :

Identifier des sessions de connexion SQL Server


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de StripMat
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2014
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2014
    Messages : 206
    Par défaut Identifier des sessions de connexion SQL Server
    Bonjour,

    Je cherche à identifier des sessions de connexion à un même compte utilisateur simultanément, mais malheureusement je ne parviens pas à trouver, en SQL, une variable à récupérer permettant d'identifier chacune de ces sessions (peut-être dans les tables systèmes ?), j'ai bien essayé SESSION_USER mais je récupers le nom d'utilisateur... :/

    Existe-il un moyens d'identifier chaque session ? L'objectif étant de réaliser des triggers remplissant des tables de logs, mais le problème c'est que les utilisateurs de mon appli se connectent tous avec le même utilisateur SQL.

    En espérant qu'une telle solution existe

  2. #2
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Par défaut
    Bonjour,

    dm_exec_sessions sera peut être un bon début pour vous... mais je n'ai pas bien compris ce que vous vouliez obtenir comme informations

  3. #3
    Membre confirmé Avatar de StripMat
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2014
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2014
    Messages : 206
    Par défaut
    Merci pour la table, effectivement cela peut correspondre à mon besoin.

    Je cherche à créer des fichiers de logs, pour cela je dois récupérer les informations propres à chaque sessions (faire le lien entre IDSession et un utilisateur enregistré dans une table de notre base) pour ensuite écrire tout sa dans une table log ou un fichier text, peu importe.

    Comme chaque utilisateur de notre application vient taper dans notre BDD avec le même Utilisateur, il faut définir quel utilisateur physique vient se connecter à notre base de donnée, je souhaite faire cela par le biais des sessions et leur ID.


    Je précise que je débute en SQL et sur SQL Server, si je m'exprime mal pardonnez le moi

    PS : En testant un peu des requêtes sur la table dm.exec_session, j'ai remarqué que lorsque je me connecte avec notre compte utilisateur par la console TSE, il persiste dans la table même une fois déconnecté, mais dès que je le reconnecte, l'heure de login de ce dernier change mais son ID ne change jamais, est-ce normal ? Et pourquoi reste-il toujours dans la table ?

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Février 2008
    Messages
    758
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 758
    Par défaut
    session_id n'est pas non plus une bonne façon d'identifier un utilisateur physique. Si un utilisateur A se connecte il obtient un session_id=54 par exemple, il se déconnecte et un autre utilisateur B arrive et obtiendra le même session_id=54.

    Si la machine de connexion est aussi centralisée (serveur d'applications, 3 tiers+) et que le login de connexion est le même, alors je ne vois pas comment identifier l'utilisateur physique derrière la connexion. Il faut le faire en amont de SQL Server, au niveau du frontal applicatif.

    Si on est en client serveur pur (client lourd -> SQL Server), alors la machine ou l'IP (host_name dans sys.dm_exec_sessions, client_net_address dans sys.dm_exec_connections) peut permettre d'identifier l'origine physique de la connexion.

  5. #5
    Membre confirmé Avatar de StripMat
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2014
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2014
    Messages : 206
    Par défaut
    Merci pour vos réponses, effectivement j'ai eu beau me creuser la cervelle, je pense que nous allons gérer ces logs au niveau applicatif.

  6. #6
    Membre confirmé Avatar de StripMat
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2014
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2014
    Messages : 206
    Par défaut
    Nouvelle question, j'ai tenté de créer un deuxième utilisateur avec le même nom de connexion mais j'ai reçu l'erreur 15063. J'ai fais des recherches sur cette erreur, sans succès :/

    Est-ce possible qu'a l'identification d'un nouveau client un script puisse lui créer un utilisateur SQL avec un nom de connexion commun à tous les autres Utilisateurs ?

Discussions similaires

  1. Gestion des connexions à SQL Server 2005 dans un Webservice
    Par pete666 dans le forum Services Web
    Réponses: 3
    Dernier message: 10/09/2009, 08h43
  2. [DEBUTANT] Connexion à SQL Server
    Par jesus144 dans le forum Bases de données
    Réponses: 2
    Dernier message: 08/03/2005, 12h38
  3. [C#] Problème de connexion sql server 2000
    Par rabbiwan dans le forum ASP.NET
    Réponses: 8
    Dernier message: 22/12/2004, 16h21
  4. Connexion à SQL Server avec ASP
    Par ayobo dans le forum ASP
    Réponses: 3
    Dernier message: 25/05/2004, 17h06
  5. Connexion SQL Server
    Par Bart51 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 06/05/2004, 10h49

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