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 :

Accès refusé pour utilisateurs anonymes!


Sujet :

ASP.NET

  1. #1
    Membre habitué Avatar de mumu27
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2009
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2009
    Messages : 213
    Points : 128
    Points
    128
    Par défaut Accès refusé pour utilisateurs anonymes!
    Bonjour,

    je souhaite dans mon site web refuser l'accès aux utilisateurs anonymes. Je suis sous Windows 7 et j'utilise IIS 6.0.

    Voici mon fichier 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
    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    <?xml version="1.0" encoding="utf-8"?>
    <!-- 
        Note: As an alternative to hand editing this file you can use the 
        web admin tool to configure settings for your application. Use
        the Website->Asp.Net Configuration option in Visual Studio.
        A full list of settings and comments can be found in 
        machine.config.comments usually located in 
        \Windows\Microsoft.Net\Framework\v2.x\Config 
    -->
    <configuration>
      <appSettings />
      <connectionStrings />
      <system.web>
        <!-- 
                Set compilation debug="true" to insert debugging 
                symbols into the compiled page. Because this 
                affects performance, set this value to true only 
                during development.
            -->
        <roleManager defaultProvider="AspNetWindowsTokenRoleProvider" enabled="true" />
        <compilation debug="true" targetFramework="4.0" />
        <!--
                The <authentication> section enables configuration 
                of the security authentication mode used by 
                ASP.NET to identify an incoming user. 
            -->
        <authentication mode="Windows" />
        <authorization>
          <!-- interdit aux inconnus (anonymes) -->
          <deny users="?" />
        </authorization>
        <!--
                The <customErrors> section enables configuration 
                of what to do if/when an unhandled error occurs 
                during the execution of a request. Specifically, 
                it enables developers to configure html error pages 
                to be displayed in place of a error stack trace.
     
            <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
                <error statusCode="403" redirect="NoAccess.htm" />
                <error statusCode="404" redirect="FileNotFound.htm" />
            </customErrors>
            -->
        <pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID" />
            <identity impersonate="false" />
      </system.web>
      <location path="achats.aspx">
        <system.web>
          <authorization>
            <allow roles="acheteurs" />
            <deny users="*" />
          </authorization>
        </system.web>
      </location>
    </configuration>

    Ensuite je démarre l'application qui doit afficher un certain nombre de renseignements. Voici le fichier Default.aspx.cs:
    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
    25
    26
    27
    28
    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
     
    public partial class _Default : System.Web.UI.Page 
    {
        protected void Page_Load(object sender, EventArgs e)
        {
    		TextBox1.Text = 
    			string.Format("Nom d'utilisateur: {0}\nRéférentiel: {1}\nAuthentifé ? {2}\nType: {3}\nMembre d'Acheteurs ? {4}",
    			User.Identity.Name,
    			User.Identity.AuthenticationType,
    			User.Identity.IsAuthenticated,
    			User.GetType().FullName,
    			User.IsInRole(@"Acheteurs")); // ou bien BRICE-ARNAUD\Acheteur
     
    		if (Roles.IsUserInRole("Acheteurs"))
    			Label1.Text = "Membre du groupe Acheteurs";
    		else
    			Label1.Text = "Ne figure pas dans le groupe Acheteurs";
        }
    }
    Normalement, dans le fichier Web.config le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     <authorization>
          <!-- interdit aux inconnus (anonymes) -->
          <deny users="?" />
        </authorization>
    n'autorise aux utilisateurs non authentifiés à se connecter. Donc quand je lance mon site web il me met accès refusé. Dans mon gestionnaire IIS le mode Authentification anonyme est activé. Il y'a deux autres mode: Authentification par formulaire et Emprunt d'identité ASP.net. Aussi que dois-je faire pour créer un utilisateur qui puisse s'authentifier pour ne plus avoir le message d'erreur avant de lancer le site web? Bref je ne vois pas comment procéder. J'utilise IIS 6.0, donc l'utilisateur à priori c'est Sébastien-PC\IIS_IUSRS. Merci d'avance pour votre réponse.

    mumu27!

  2. #2
    Membre habitué Avatar de mumu27
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2009
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2009
    Messages : 213
    Points : 128
    Points
    128
    Par défaut
    Bonjour,

    je tiens à préciser que j'ai le problème uniquement lorsque j'ouvre mon site web en mode Local IIS (c'est pourquoi j'exécute vs 2010 en tant qu'admin), mais lorsque je l'ouvre en mode File System pas de soucis.

  3. #3
    Membre habitué

    Homme Profil pro
    Informatique en tant qu'autodidacte passionné
    Inscrit en
    Mars 2009
    Messages
    185
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Informatique en tant qu'autodidacte passionné
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 185
    Points : 137
    Points
    137
    Billets dans le blog
    1
    Par défaut
    Bonsoir,

    Il me semble que tes directives d'autorisations se trouvent dans le fichier WebConfig général de ton site.

    Si tu as créé un rôle Acheteurs, il faut également, et indépendamment du fichier WebConfig de la racine du site, créer un dossier (par exemple nommé acheteurs) dans lequel se trouveront les pages protégées destinées aux acheteurs, et un fichier WebConfig pour les autorisations:

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <system.web>
        <authorization>
          <allow roles="Acheteurs" />
          <deny users="*"/>
     
        </authorization>
      </system.web>

Discussions similaires

  1. [phpMyAdmin] #1045 - Accès refusé pour l'utilisateur: 'root'@'@localhost' (mot de passe: NON)
    Par monchat dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 9
    Dernier message: 08/05/2011, 19h04
  2. [EasyPHP] Accès refusé pour l'utilisateur: 'ODBC'@'@localhost'
    Par oprami dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 31/05/2010, 16h42
  3. [EasyPHP] MySQL Accès refusé pour l'utilisateur
    Par roadrunner8fr dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 05/04/2010, 11h22
  4. [EasyPHP] Accès refusé pour l'utilisateur: 'root'@'@localhost'
    Par faamugol dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 9
    Dernier message: 06/04/2009, 10h39
  5. erreur 1045: Accès refusé pour l'utilisateur mot de passe : OUI
    Par antrax2013 dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 31/05/2006, 17h03

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