none
Atelier 10 RRS feed

  • Question

  • Bonjour,

     

    J'ai commencé l'atelier 10 en reprenant le fichier de démarrage.

     

    J'ai lancer l'outil de configuration d'ASP.NET, Sélectionné un fournisseur différent pour chaque fonctionnalité.

    Fait les test = OK

    Je me suis assuré que le "<membership defaultProvider="AspNetSqlMembershipProvider"

    Je me suis assuré que le role de "admin" était "administrateurs" et que la rêgle de "administrateurs" était autoriser sur la racine du projet.

    J'ai intégré le  dossier "XmlMembershipServices" par fichier, ajouter --> sitesweb existant.

    J'ai défini AffairesSansRisque comme projet de démarrage.

     

    Bref tout me semble avoir été initialisé correctement, et malgré cela quand je connecte sur Admin j'ai bien

    " Bonjour admin ! 1 utilisateurs sont connectés actuellement sur le site."

     

    MAIS PAS l'option : administrer les annonces pour obtenir "Base des annonces"

     

    Je n'arrive pas à trouver où se trouve l'erreur?

    Pouvez-vous m'aider. Merci

     

    Cordialement

     

    Jean 

    • Déplacé Tagore Bandlamudi mercredi 7 juillet 2010 06:32 Forums Consolidation (Origine :Forum du coach ASP.NET)
    vendredi 30 mars 2007 08:35

Réponses

  • Bonjour,

     

    Je crois qu'il y a encore un souci dans le fichier web.config à la racine du site, il n'est pas nécessaire de mettre une règle puisque par défaut tout est public. Vous pouvez supprimer la balise allow sur le rôle Administrateurs et donc réduire votre rubrique du fichier de config à :

    <authentication mode="Forms"/>

    <roleManager enabled="true"/>

     

    En résumé, il faut que :

    • la gestion des rôles soient activée dans le fichier de config à la racine du projet via la section <roleManager> (point 3.2 de l'atelier 5).
    • la sécurité soit activée pour le fournisseur AspNetXmlSiteMapProvider (point 3.5 de l'atelier 5) via l'attribut securityTrimmingEnabled.
    • que les règles d'accès s'enchaînent correctement dans l'organisation hiérarchique de vos fichiers de config.

    Pour vérifier que cela fonctionne :

    • Lancez l'application depuis Visual Studio sur la page d'accueil du site AffairesSansRisque. Normalement, vous devez voir un menu réduit aux seules pages publiques de la racine du site.
    • Identifiez vous par exemple en tant qu'administrateur au travers de la page login.aspx. Le menu doit alors laisser apparaître de nouvelles pages, celles qui sont sous le répertoire 0 de votre site.

    Cordialement,

     

     

    lundi 23 avril 2007 16:36

Toutes les réponses

  • Bonjour,

     

    Vous voulez dire que le menu ne vous affiche pas le lien qui donne accès à la page AdministrerAnnonces.aspx ?

    Si c'est votre souci, il faut vérifier que sous le répertoire 0 il y a bien un fichier web.config donnant accès à la page au rôle des Administrateurs. Est-ce que c'est bien le cas ?

    lundi 2 avril 2007 14:58
  • Bonjour Mademoiselle,

     

    c'est effectivement ce que je voulais dire, il n'y a pas de lien.

    J'ai vérifié et modifié pour forcer l'accès à administrerAnnonces.

    Voici le Web.Config dans le répertoire 0 après modif :

     

    <?xml version="1.0" encoding="utf-8"?>

    <configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">

    <system.web>

    <authorization>

    <deny users="*" />

    <allow roles="Administrateurs" />

    </authorization>

    </system.web>

    </configuration>

     

    ça ne marche toujours pas je n'ai pas le lien qui apparait.

    Voici le code avant modification tel qu'il était.

    <?xml version="1.0" encoding="utf-8"?>

    <configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">

    <system.web>

    <authorization>

    <deny users="*" />

    <allow roles="UtilisateursAvecPouvoir" />

    </authorization>

    </system.web>

    </configuration>

     

    Voici le web.Config donnant l'accès à l'administrateur sur la racine AffairesSansRisque :

    ...

    <!-- Installe de nouveaux providers pour le service d'appartenance-->

    <roleManager enabled="true" />

    <authorization>

    <allow roles="Administrateurs" />

    </authorization>

    ...

    Voici le Web.sitemap tel qu'il est

     

    <?xml version="1.0" encoding="utf-8" ?>

    <siteMap enableLocalization="true" xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >

    <siteMapNode url="Default.aspx"

    title=" $resources: Web.sitemap, MenuItemHome , Accueil"

    description="Espace Accueil">

    <siteMapNode url="ConsulterAnnoncesParRegion.aspx"

    resourceKey="MenuItemConsulterAnnonces">

    <siteMapNode url="ConsulterAnnoncesJournaux.aspx"

    resourceKey="MenuItemConsulterJournaux"/>

    </siteMapNode>

    <siteMapNode url="1/DiffuserAnnonce.aspx"

    resourceKey="MenuItemDiffuserAnnonce"/>

    <siteMapNode url="1/Services.aspx?imagedirectory=~/Uploads"

    resourceKey="MenuItemServices"/>

    <siteMapNode url="0/AdministrerAnnonces.aspx"

    resourceKey="MenuItemAdministrerAnnonces"/>

    <siteMapNode url="QuiSommesNous.aspx"

    resourceKey="MenuItemQuiSommesNous"/>

    </siteMapNode>

    </siteMap>

     

    Voyez-vous le pourquoi de cette erreur ?

     

    A+

     

    Jean

    mardi 3 avril 2007 07:18
  • Bonjour,

     

    Inversez l'ordre des balises allow et deny dans le web.config sous le dossier 0 et cela devrait marcher .

    Il faut indiquer en premier les règles d'autorisation d'accès et seulement ensuite les règles de refus d'accès.

     

    Lien utile : http://msdn2.microsoft.com/fr-fr/library/8d82143t(VS.80).aspx

     

    Cordialement,

    mardi 3 avril 2007 07:38
  • Bonjour mademoiselle,

     

    J'ai inversé l'ordre des balises, mais rien n'a changé.

     

    Vraiment je ne comprends pas. J'ai essayé de forcer l'accès de l'"administrateur" en ajoutant une autorisation sur les deux dossiers 0 et 1 dans l'outil d'administration ASP.NET.

     

    Cela ne change rien à l'apparence dans le panneau de droite de "Gérer les règles d'accès" .

    En me mettant sur le répertoire 0, on voit apparaître comme auparavant en faible intensité la ligne Autoriser -- Administrateurs --- mais l'icône du personnage n'est pas bordée comme pour la précédente ligne qui autorise "UtilisateursAvecPouvoir"

    De surcroît, quand je m'indentifie comme un utilisateur avec pouvoir je n'ai pas non plus le lien "Administrer les annonces"

     

    Je nage... je coule

     

    Je compte sur vous pour m'envoyer la bouée...

     

    A+

     

    Jean

    mercredi 4 avril 2007 09:58
  • Bonjour,

     

    Je crois qu'il y a encore un souci dans le fichier web.config à la racine du site, il n'est pas nécessaire de mettre une règle puisque par défaut tout est public. Vous pouvez supprimer la balise allow sur le rôle Administrateurs et donc réduire votre rubrique du fichier de config à :

    <authentication mode="Forms"/>

    <roleManager enabled="true"/>

     

    En résumé, il faut que :

    • la gestion des rôles soient activée dans le fichier de config à la racine du projet via la section <roleManager> (point 3.2 de l'atelier 5).
    • la sécurité soit activée pour le fournisseur AspNetXmlSiteMapProvider (point 3.5 de l'atelier 5) via l'attribut securityTrimmingEnabled.
    • que les règles d'accès s'enchaînent correctement dans l'organisation hiérarchique de vos fichiers de config.

    Pour vérifier que cela fonctionne :

    • Lancez l'application depuis Visual Studio sur la page d'accueil du site AffairesSansRisque. Normalement, vous devez voir un menu réduit aux seules pages publiques de la racine du site.
    • Identifiez vous par exemple en tant qu'administrateur au travers de la page login.aspx. Le menu doit alors laisser apparaître de nouvelles pages, celles qui sont sous le répertoire 0 de votre site.

    Cordialement,

     

     

    lundi 23 avril 2007 16:36