> Tech > Deuxième exemple

Deuxième exemple

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

Pour illustrer l’aspect final de l’environnement de mon client, j’ai créé un autre exemple intégré du projet CustomSecurity (avec trois parties principales) que vous pouvez télécharger et évaluer. La première partie de cet exemple est constituée d’un site Web ASP.NET personnalisé, FormsAuth- Sample, qui utilise l’authentification par formulaires avec les

Deuxième exemple

nouvelles classes d’appartenance ASP.NET 2.0 et les contrôles de connexion.

Les classes d’appartenance fournissent une méthode normalisée pour valider les informations d’identification des utilisateurs et pour gérer les paramètres des utilisateurs vis-à-vis d’un référentiel d’utilisateurs personnalisé tel que SQL Server. Les contrôles de connexion fonctionnent par-dessus les classes d’appartenance. Les noms d’utilisateur et mots de passe sont stockés dans une base de données relationnelle SQL Server 2005, que j’ai créée en utilisant l’outil Aspnet_regsql. exe (lequel crée un schéma utilisable par le SQLMembershipProvider.

Pour plus d’informations, consultez la documentation Visual Studio 2005). Pour forcer le site Web ASP.NET à émettre un cookie persistant concernant l’utilisateur, je définis true pour la propriété RememberMeSet de LoginControl et false pour la propriété DisplayRememberMe. Cela signifie que dans un environnement de production, vous devriez d’abord déterminer si le navigateur de l’utilisateur est configuré pour accepter les cookies.

Le site Web FormsAuthSample s’appuie sur la base de données exemple AdventureWorks comme source de données pour les rapports et est conçu comme si la société AdventureWorks avait décidé de configurer un extranet pour ses fournisseurs. Ainsi, lorsque vous utilisez le site Web, il se comportera comme si vous étiez un fournisseur. Lorsque vous allez tester ou déboguer ce site Web, assurez- vous que vous l’exécutez au sein de Microsoft IIS et non du serveur Web prédéfini de Visual Studio 2005. Ce point est important car, comme indiqué précédemment, vous devez éviter le recours à localhost dans vos URL et cibler plutôt le nom de votre machine.

Vous pouvez toujours effectuer le débogage dans Visual Studio, mais veillez à ouvrir le site Web à partir de l’instance IIS locale et non du système de fichiers, comme le montre la figure 2. Vous devrez également modifier StartUrl (située sous l’onglet Start Options de la boîte de dialogue Project Properties) afin de refléter le nom de votre ordinateur. La deuxième partie de mon exemple mis à jour est une implémentation du projet CustomSecurity.

Mes modifications par rapport à la version originale ont abouti à trois différences essentielles :
• Les deux pages de connexion sont conservées, mais elles redirigent l’utilisateur vers la page de connexion de notre site Web.
• La méthode LogonUser appelle un service Web (hébergé sur notre site Web) pour vérifier le nom d’utilisateur et le mot de passe. Notez que LogonUser n’est désormais plus appelée par les utilisateurs finaux (ou notre site Web), car notre site Web gère désormais la vérification des utilisateurs et l’émission de cookies. Mais Visual Studio ou le service Web Reporting Services se sert de la méthode LogonUser lorsque vous déployez des rapports à partir de Visual Studio ; la méthode sera appelée si vous souhaitez employer une API de services Web Reporting Services.
• La méthode IsValidPrincipalName appelle un service Web (hébergé sur notre site Web) pour vérifier les noms d’utilisateur. Pour utiliser la version mise à jour du projet Custom- Security, vous pouvez tout simplement copier la DLL mise à jour vers les deux répertoires bin Reporting Services.

Vous devrez également mettre à jour l’élément d’authentification et ajouter un élément machineKey au fichier Web.config de Report Server, comme le montre le code du listing 1. Enfin, la troisième partie de l’exemple mis à jour est l’ensemble de rapports que nous allons employer pour illustrer le filtrage des rapports (RSFormAuthSample). Dans les téléchargements de l’article sur le Club Abonnés, trouvez et ouvrez le projet RSFormAuthSample dans Visual Studio et mettez à jour la propriété TargetServerURL en conséquence.

Ensuite, déployez le projet vers votre serveur de rapports. Vous serez invité à entrer vos informations d’identification ; servez-vous du nom d’utilisateur Admin et du mot de passe que vous avez créé. Une fois tous les éléments configurés et déployés, vous devez être capable de démarrer le site Web FormsAuth- Sample, de vous connecter et de visualiser les rapports à partir de la page My Account, du Gestionnaire de rapports ou de l’URL Report Server sans avoir à reconnecter. Si, ultérieurement, vous accédez directement au Gestionnaire de rapports et si votre cookie a expiré ou si vous avez supprimé ce dernier, vous devrez être redirigé vers la page de connexion FormsAuthSample. C’est plutôt cool !

Téléchargez cette ressource

Cybersécurité des collectivités : Enjeux, Perspectives & Solutions

Cybersécurité des collectivités : Enjeux, Perspectives & Solutions

Villes, intercommunalités, métropoles, départements et régions sont particulièrement exposés aux risques de cybersécurité. Ce livre blanc Stormshield présente les défis cyber que rencontrent les collectivités, les solutions et perspectives pour qu’elles puissent assurer leur mission d’utilité publique, en toute sécurité.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010