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 :

Connexion simultanée ASP.net


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 64
    Par défaut Connexion simultanée ASP.net
    Bjr,
    Je suis en train de développer un petit site web avec une authentification login/mot de passe. Le tout en ASP.net C# .net 3.5 et VS2008.

    Grâce au login, je sais à quelle entreprise appartient la personne identifiée.

    On me demande de mettre en place des quotas. C'est à dire que pour une entreprise donnée, il ne peut pas y avoir plus d'un certain nombre de connexions simultanées à ma page web.

    Car si on fournit 10 login à une entreprise, rien ne l'empêche d'utiliser un login par plusieurs personnes en même temps. Donc, on souhaite contrôler sur le nombre de connexion simultané et pas sur le nombre de compte créé.

    Je pense que ce n'est pas possible mais si qq'un a une solution, j'en serais ravi.
    Cdlt.

  2. #2
    Membre expérimenté
    Avatar de Lyche
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2007
    Messages
    2 523
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 523
    Billets dans le blog
    4
    Par défaut
    regarde du coté de global.asax, il te permet de stocker des données global de ton appli.
    Au pire, tu fais une temp table qui stock les données utilisateurs au moment de la connexion et qui efface lors de la déconnexion. Avec un teste de présence au moment de l'authentification.
    Rejoignez la communauté du chat et partagez vos connaissances ou vos questions avec nous

    Mon Tutoriel pour apprendre les Agregations
    Consultez mon Blog SQL destiné aux débutants

    Pensez à FAQ SQL Server Ainsi qu'aux Cours et Tuto SQL Server

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 64
    Par défaut
    Je suis d'accord pour le stockage d'info mais comment faire lors de la déconnexion qui dans la majorité des cas se fera suite à la fermeture du navigateur Web.

  4. #4
    Rédacteur
    Avatar de Louis-Guillaume Morand
    Homme Profil pro
    Cloud Architect
    Inscrit en
    Mars 2003
    Messages
    10 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Cloud Architect
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2003
    Messages : 10 839
    Par défaut
    comme on t'a dit, regarde dans le global_asax

    session_start et session_end

    Je pense que ce n'est pas possible mais si qq'un a une solution
    ca prend à peu près 3 lignes de code de déclarer un int global que tu incrémentes ou décrementes

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 64
    Par défaut
    Ok, je vais tester ça.
    Merci.

    j'ai une autre question:
    Ce site sera diffusé sur le web et non pas en intranet. nous possédons une infrastructure d'hébergement avec des serveur windows 2003, SQL server 2005, etc.
    Donc nous allons utiliser IIS puisque le dév se fait en .net.

    Faut-il acheter des licences particulières pour diffuser notre site sur le web via IIS? Sachant qu'il sert à visualiser les données de nos clients.

    Merci.

  6. #6
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    comme on t'a dit, regarde dans le global_asax

    session_start et session_end
    Je dirais mauvaise idée. Sauf erreur de ma part, une session ne commence pas au moment où l'internaute s'authentifie mais au moment où il arrive sur le site. A ce stade tu ne sais pas encore qui il est. Tu risques de mobiliser toutes les connections si 10 utilisateurs arrivent en même temps, ne s'authentifient pas, vont boire un café.

    Il faut le faire au moment où l'internaute s'authentifie avec succès.

    En plus, il me semble que les sessions ont une durée de vie de 20 minutes par défaut, une latence. Le session_onend se produira 20 minutes après que l'internaute ait quitté le site en fermant son navigateur plutôt qu'en cliquant sur le bouton deconnexion. Tu ne pourras pas décrémenter ton compteur assez vite.

    Perso, pour faire simple, j'utiliserai une variable d'application pour stocker l'identifiant de session et le nom d'utilisateur en cours. Ainsi, tu associes un navigateur avec un identifiant de connexion.

    Reste le temps de latence... Le reduire en changeant les paramêtres de IIS. Tu peux aussi le préciser dans les script "Session.TimeOut" pour .Net?

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

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

Discussions similaires

  1. Connexion en ASP.NET à une base Oracle 9i
    Par DJuL- dans le forum Accès aux données
    Réponses: 3
    Dernier message: 12/07/2007, 10h49
  2. Réponses: 2
    Dernier message: 09/08/2006, 03h13
  3. Erreur connexion asp.net oracle
    Par WELCOMSMAIL dans le forum Connexions aux bases de données
    Réponses: 9
    Dernier message: 05/04/2006, 09h07
  4. Réponses: 5
    Dernier message: 22/02/2006, 12h53

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