2011-11-02 6 views
1

Il existe des questions similaires à ce sujet, mais ils sont soit sans réponse ou sur ASP.Net. Je souhaiterais que, lorsque les utilisateurs atteignent un site interne (ASP Classic, IIS 6, Windows Server 2003), ils s'autologisent et déterminent qui ils sont, en fonction de leur enregistrement Active Directory SANS popup leur demandant d'entrer leur nom d'utilisateur et mot de passe. L'utilisation de l'authentification anonyme dans IIS signifie que LOGON_USER génère l'utilisateur administrateur. Désactiver l'anonymat signifie que j'obtiens le popup.ASP Active Directory Active Directory sans Popup

Comme ils se sont déjà connectés à Windows, existe-t-il un moyen de déterminer qui ils sont et de ne pas leur demander de saisir à nouveau un nom d'utilisateur et un mot de passe.

J'ai l'AD fissuré dans ASP. Juste besoin d'arrêter de demander un nom d'utilisateur et mot de passe.

Merci à l'avance, James

+0

Dupliquer le message: http://serverfault.com/q/327110/494 –

+0

Comme mentionné dans ce post, c'était parce que personne n'avait répondu ici! "Il ya une question similaire à cela sur le débordement de la pile et j'ai à peu près posté la même question là-bas, sans réponses." – jamesmhaley

Répondre

1

Dans la collection Request.ServerVariables, il y a un élément de AUTH_USER qui doit être remplie pour les utilisateurs authentifiés:

http://www.4guysfromrolla.com/demos/servervariables.asp

Pour avoir ASP classique connecter en tant qu'utilisateur différent, vous avez besoin d'un objet COM externe . Il est un exemple en ligne qui a un code VB6 vous pouvez compiler dans un objet COM activex et appeler à partir d'ASP classique pour se connecter en tant qu'utilisateur différent (et connectez-vous à nouveau):

http://www.iisfaq.com/Default.aspx?tabid=2947

Une fois connecté , votre processus ASP s'exécutera sous le nom d'utilisateur connecté, et non plus sous l'utilisateur configuré dans IIS. Avec ces deux bits d'information, vous devriez être en mesure de travailler si un utilisateur est connecté, et sinon, connectez-vous automatiquement sous un compte en utilisant ASP. Le popup n'apparaîtra plus.

Hope this helps,

Erik

-Edit- désolé, je me rends compte que j'ai mal compris votre question ... l'authentification doit être gérée par IIS lorsque vos utilisateurs sont connectés à Windows et « intégré L'authentification Windows "est vérifiée dans le paramètre IIS sous" Sécurité de répertoire ". Avez-vous essayé de vérifier à la fois cette case à cocher et l'accès anonyme, mais en refusant l'accès READ sur les dossiers de vos sites Web internes pour IUSR_ [nom_ordinateur]? Cela devrait empêcher les utilisateurs anonymes d'accéder et permettre aux utilisateurs Windows de passer. Il est toujours plus facile de tester ceci sur un sous-dossier de l'un de vos sites internes avant de jouer avec des droits à la racine d'un site.

0

Ce chiffre est inférieur au navigateur. Ce que vous voulez, c'est que le navigateur tente de se connecter en utilisant les informations d'identification de l'utilisateur actuel. Dans IE, il s'agit du comportement par défaut pour les sites identifiés comme étant dans la "zone Intranet". Par conséquent, une approche de ce type pour utiliser une stratégie de groupe pour garantir que les machines du domaine ont ajouté les sites Web internes à toutes les listes de sites Intranet des machines clientes.

D'autres navigateurs disposent également d'un mécanisme permettant de répertorier les sites auxquels les informations d'identification de l'utilisateur actuel peuvent être utilisées pour satisfaire un problème de connexion d'un serveur.

1

Cela m'a été très utile.La raison pour laquelle j'ai trouvé spécifiquement que ça ne fonctionnait pas pour moi est qu'il y a un "." dans le nom de domaine. Cela fait que le site n'est pas traité comme un site intranet.