Les formulaires d'Authentification avec LDAP “Serveur non disponible” erreur

Je suis à l'aide d'Active Directory et des Formulaires d'Authentification pour vous connecter en quelques-uns de nos sites web intranet. Parfois, lorsque les utilisateurs se connectent, une exception se produit. Je reçois un e-mail de toutes les exceptions et jusqu'à présent, c'est la seule exception que je ne sais pas comment le résoudre. J'ai fait des recherches sur et en dehors pendant des semaines, mais j'ai pas eu de chance dans la résolution de ce problème.

Source:

Système.DirectoryServices.Les protocoles

Date et l'Heure:

01/06/2014 8:37 AM

Message:

Le serveur n'est pas disponible.

Trace De La Pile:

à
Système.DirectoryServices.Les protocoles.LdapConnection.BindHelper(NetworkCredential
newCredential, Boolean needSetCredential)

au Système.Web.De sécurité.ActiveDirectoryMembershipProvider.ValidateCredentials(String
nom d'utilisateur, mot de passe de Chaîne)

au Système.Web.De sécurité.ActiveDirectoryMembershipProvider.ValidateUserCore(String
nom d'utilisateur, mot de passe de Chaîne)

au Système.Web.De sécurité.ActiveDirectoryMembershipProvider.ValidateUser(String
nom d'utilisateur, mot de passe de Chaîne)

au Système.Web.L'INTERFACE utilisateur.Contrôles webcontrols.Connexion.AuthenticateUsingMembershipProvider(AuthenticateEventArgs
e)

au Système.Web.L'INTERFACE utilisateur.Contrôles webcontrols.Connexion.AttemptLogin()

au Système.Web.L'INTERFACE utilisateur.Contrôles webcontrols.Connexion.OnBubbleEvent(source de l'Objet, EventArgs
e)

au Système.Web.L'INTERFACE utilisateur.De contrôle.RaiseBubbleEvent(source de l'Objet, EventArgs args)

au Système.Web.L'INTERFACE utilisateur.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

Utilisateur:

Informations Du Navigateur:

Capacités du navigateur, Tapez = IE8, Nom = IE, Version = 8.0, les Grands
Version = 8, Version Mineure = 0, La Plate-Forme = WinXP, Est Une Version Bêta = False, Est
Crawler = False, Est AOL = False, Est Win16 = False, Est Win32 = True,
Prend En Charge Les Trames = True, Prend En Charge Les Tables = True, Prend En Charge Les Cookies =
Vrai, Prend En Charge VBScript = True, Prend En Charge JavaScript = 3.0, Prend En Charge
Les Applets Java = True, Prend En Charge Les Contrôles ActiveX = True, Prend En Charge
Version JavaScript = 1.5,

Je suis incapable de reproduire cette erreur sur le serveur de développement. C'est étrange, parce qu'il va jeter l'exception, alors ils peuvent se connecter à l'amende juste après. Certains jours, je ne reçois pas cette exception à tous, et les autres jours, c'est le mur. Cela pourrait-il être un problème avec le serveur de production? Éventuellement un paramètre est manquant ou quelque chose? Je ne sais vraiment pas ce qu'il se passe avec celui-ci. Quelqu'un a une expérience avec cela?

C'est ainsi que je me connecte dans la web.config

Chaîne de connexion

<add name="ADService" 
     connectionString="LDAP://domain/OU=users,DC=domaincontroller,DC=net" />

Fournisseur d'appartenances

 <membership defaultProvider="AspNetActiveDirectoryMembershipProvider">
      <providers>
        <clear />
        <!--Membership provider for Active Directory-->
        <add name="AspNetActiveDirectoryMembershipProvider" type="System.Web.Security.ActiveDirectoryMembershipProvider,  System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
             connectionStringName="ADService" attributeMapUsername="sAMAccountName" />
      </providers>
    </membership>

Je ne suis pas sûr de ce qu'il se passe. Toute aide est appréciée!

Mise à JOUR: Nous sommes actuellement en train de faire une grande libération qui comprend un Seul Signe Sur. Nous sommes toujours à l'aide de l'Authentification par Formulaires et Active Directory. Nous avons mis en place un tout nouveau serveur de production. Il n'est pas allé vivre encore, mais certaines personnes y ont accès. J'ai déjà reçu le même message sur ce nouveau serveur. Il est Server 2008 R2 Standard. Nous sommes à l'aide de IIS Version 7.5.7600.16385 être exact. Cette exception est gênant pour moi et ennuyeux pour les utilisateurs. Il ne peut pas arriver tout le temps sur la production actuelle, mais certains jours, il n'arrive pas une fois (je ne sais pas si c'est parce que c'est une journée lente et les gens ne sont pas en utilisant le site web) et puis certains jours, il arrive comme un fou et je peux obtenir environ 15 à 20 de ces exceptions. (si pas plus)
J'ai regardé plusieurs questions. D'autres ont eu le même problème mais le leur se produire lorsqu'ils entrez le nom d'utilisateur correct mais un mauvais mot de passe. J'ai essayé d'entrer le mot de passe dans le mal des centaines de fois, mais je n'ai jamais pu reproduire le problème.

  • Pouvez-vous poster le code source et comprennent le try/catch que les emails que vous sur l'échec?
  • C'est un unhandeled exception. J'ai tous les e-mails envoyés en erreur d'application. Je ne suis même pas sûr de l'endroit où je l'avais mais un try catch que j'ai mis un dans le bouton soumettre.
  • Êtes-vous d'utiliser quelque chose comme <asp:Login ID="Login1" runat="server"OnAuthenticate="Login1_Authenticate" Si donc nous devrions être en mesure de se plonger dans votre OnAuthenticate pour intercepter les erreurs spécifiques à un peu mieux.
  • Ohh créatif. Ne pense pas à ce sujet. Je vais certainement mettre en œuvre ce à partir d'ici. Jusqu'à présent, avec l'aide de SoroTrestal et son idée d'ajouter le numéro de port, je n'ai pas reçu ce message d'erreur dans plus de 24h. Présentera un rapport après les 2 jours pour confirmer ce fut le correctif. Merci pour l'idée et de l'aide.
  • Nous avons le même problème. Sont tous vos serveurs appeler le serveur ldap sur le même domaine que le serveur ldap?
  • Oui, ils sont en réalité.

InformationsquelleAutor Humpy | 2014-01-06