8
votes

IIS7 - Serveur de développement de mot de passe Protect Protect

J'ai un serveur de développement exécutant IIS 7.0 avec une application Web ASP.NET MVC, qui authentifie à l'aide de formulaires Authentication / Adhésion.

Je dois pouvoir empêcher les utilisateurs non autorisés de voir ce site. Nos clients devraient toutefois pouvoir entrer un nom d'utilisateur / mot de passe simple pour avoir accès.

Après leur faire, ils devraient pouvoir interagir avec l'application Web à l'aide de l'authentification des formulaires comme si elles sont venues à un site non protégé.

Toute suggestion?


3 commentaires

Ceci est un échec absolu / déficit sur la partie de l'IIS7. Cas massif de la sur-ingénierie et de la manifestation courte de Microsoft ici. Cela devrait être un bouton "Ajouter un mot de passe popup bon marché" Séparez-vous à la totalité des modules d'authentification complexes et de la merde d'authentification complexes.


Il est surprenant le nombre de DUD qui semblent parfaitement disposés à accepter cela et à le supporter en écrivant leurs propres modules d'emballage personnalisés et similaires. Il suffit d'un peu plus de personnes en ingénierie, obtenez avec le programme. Cela devrait être si simple. Je ne vais pas écrire de code personnalisé pour implémenter un mot de passe popup fiancé utilisé pour prendre 2 secondes pour configurer. Il doit y avoir un moyen simple.


Heureux de voir que ce n'est pas seulement moi avoir ce problème


4 Réponses :


-1
votes

Nous avons écrit un module personnalisé pour IIS pour permettre à certaines gammes IP à travers automatiquement et présentez quelqu'un d'autre avec un dialogue de connexion. Une fois qu'ils se seraient connectés, il a enregistré ce fait dans leur session et passa simplement des demandes à travers.

fonctionne bien, peut être appliqué à n'importe quoi sur des sites ou des services IIS.


1 commentaires

Pas de bien quand mon FAI me donne une adresse IP dynamique totalement aléatoire à chaque fois. Aussi pas bon lorsque j'ai besoin de donner accès à un groupe de testeurs ou de partenaires commerciaux sélectionnés, dites 50 d'entre eux, qui ont tous besoin d'accéder au site de développement. Je ne peux pas qu'ils passent tous passer une heure chacun pour aller fouler pour leur adresse IP car ils sont tous situés dans différents endroits physiques et ils sont des gens d'affaires, pas des gens techniques. Ils n'ont aucune idée de l'obtention de leur adresse IP à partir de leur routeur / de leur configuration réseau, etc. Je dois simplement être capable de les envoyer par courrier électronique avec un mot de passe afin de pouvoir facilement frapper le site.



6
votes

Ma réponse précédente Lesdites formulaires Auth et Basic HTTP Auth pourraient vivre côte à côte en mode intégré II7. J'étais complètement tort et j'ai depuis fait une solution simple.

Utilisation d'un httpmodule personnalisé Vous pouvez ajouter une authentification de base sur le côté des formulaires réguliers automatiques auth- xxx

puis dans votre web.config xxx


5 commentaires

En fait, ce n'est pas aussi simple dans mon cas. Votre solution a été la première chose que j'ai essayée - mais une "authentification de base" interfère avec l'authentification "des formulaires" du nouveau projet MVC le plus élémentaire, car nous le connaissons tous de Visual Studio / Nouveau projet. Après l'authentification via «Authentification de base», je vous ai redirigé vers l'URL de connexion par défaut, tout ce que j'essaie et que mon navigateur n'est même pas autorisé à télécharger le fichier Site.css. Des idées?!


L'authentification de base de l'IIS n'aura rien à voir avec l'authentification des formulaires, complètement différente. La façon dont vous avez formulé votre question a fait valoir que vous souhaitez bloquer tous les accès à la page de connexion des formulaires à quiconque mais à vos clients, mais une fois la réponse du défi IIS, ils se connecteraient à l'authentification des formulaires. Je ne sais pas comment avoir IIS authentifier pour le compte de formulaires SQL, désolé. Je suppose que je ne comprends pas non plus, qu'est-ce qui ne va pas avec l'authentification des formulaires, pourquoi une réponse au défi IIS serait-elle meilleure?


Vous êtes totalement faux Jayrdub. La question a été bien expliquée et il s'agit d'une exigence très courante. IIS elle-même indique que "l'authentification de base ne peut être utilisée avec une méthode d'authentification basée sur redirection telle que l'authentification des formulaires". "L'authentification Windows" est également livrée avec la même réserve. Vous pouvez utiliser une authentification de base et de Windows Aucun problème, à condition que vous n'ayez pas également d'authentification des formulaires en cours de fonctionnement dans l'application. La question de l'OP est très légitime et une exigence commune.


Il est super courant d'avoir une application ASP.NET qui utilise la "authentification des formulaires" dans l'application elle-même. Explication: Cela constituerait simplement une chose comme ayant une zone de "connexion membre" de votre site - la plupart des sites ont quelque chose comme ça. Ensuite, vous souhaitez également lancer un mot de passe popup rapide et sale sur l'ensemble du site, car il est actuellement en développement / test et vous ne voulez pas les internautes aléatoires qui l'entourent. Ceci est fait tout le temps sur les serveurs Web IIS6 et UNIX, pourquoi ne peut-il pas autoriser une configuration aussi simple avec un seul bouton de clic.


@Aaron, tu es totalement correct, je ne sais pas pourquoi j'ai répondu de cette façon. J'ai édité et ajouté la solution que j'utilise



2
votes

Je viens de le faire avec helicon sine . La licence libre comprend 3 sites qui pour moi étaient suffisamment bons.

Si vous utilisez ceci sur un site, rappelez-vous simplement de vérifier si la licence est activée pour le site (Menu Démarrer> Helicon> APE> Manager, Aide, Gestionnaire de licences).


2 commentaires

Un complément tiers ne devrait pas être nécessaire pour une tâche aussi simple.


Non, ça ne devrait pas. Cela ne veut pas dire que ce n'est pas, malheureusement.



0
votes

Comme Aaron souligne, ce n'est pas si simple dans IIS7. Maintenant, le côté retournement est que cette vieille astuce n'est pas sécurisée et il y a de meilleurs moyens de le faire maintenant et de pouvoir utiliser toutes les méthodes authenticipraiton avec toutes les applications présente de nombreux avantages. Il y a des moyens de contourner cela comme:

a) Garder le site de développement derrière un VPN que vos clients peuvent accéder.
b) Inverser la proxy du site et laisser le proxy faire l'authentification HTTP.
c) Un peu plus impliqué serait de construire votre application avec un mode démo. Truc ici est de le faire allumer ou éteindre de la première demande donnée à une chaîne de requête magique spéciale. Vérifiez cela dans Session_Start (), puis des utilisateurs de tags qui viennent avec elle et profit.


0 commentaires