2013-04-12 2 views
1

J'ai rencontré un problème d'enregistrement en utilisant les composants WebPart Visigo.Sharepoint.FormsBasedAuthenticaiton. Il y a parfois un affichage d'erreur inconnue et parfois ça passe bien, ce qui m'a amené à croire qu'il a quelque chose à voir avec l'un des serveurs de la ferme. Je suis donc allé directement à la page de connexion sur server1 et tout allait bien et le quand je suis allé à la page de connexion sur le serveur2, je reçois une page d'erreur qui dit simplement Fichier introuvable.Batterie de serveurs Sharepoint 2010, page manquante sur le deuxième serveur

J'ai regardé dans les journaux à l'aide de l'ID de corrélation fourni sur l'écran d'erreur et suis tombé sur ce qui semble pointer vers le PasswordRecoveryWebPart étant le problème. J'ai commencé à comparer les mises en page FBA et les fichiers de fonctionnalités sur les deux serveurs et je ne vois rien qui soit manquant. Je ne suis pas sûr de ce qu'il faut regarder et des remèdes possibles. Merci.

Mise à jour

Basé sur une question ci-dessous, j'ai essayé de se connecter au second serveur afin que je puisse aller à la page Paramètres du site et consulter les informations de gestion des utilisateurs FBA. Comme ma page de connexion est la même que la page d'inscription et donc sur le second serveur est en erreur, j'ai créé une nouvelle page avec juste le webpart personnalisé de connexion sur elle. Malheureusement, je n'arrive pas à me connecter lorsque j'accède directement au deuxième serveur et que je reçois ces erreurs dans les journaux.

SPSecurityTokenService.Issue() failed: System.NullReferenceException: Object reference not set to an instance of an object. 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.SPRequestInfo.ValidateFormsAuthProviderNames(Uri context, String membershipProvider, String roleProvider) 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.SPRequestInfo.SetProviderNames(RequestSecurityToken request) 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.SPRequestInfo..ctor(IClaimsIdentity identity, RequestSecurityToken request, Boolean initializeForActor) 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.SPRequestInfo..ctor(IClaimsPrincipal principal, RequestSecurityToken request) 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.GetTokenLifetime(Lifetime requestLifetime) 
    at Microsoft.IdentityModel.SecurityTokenService.SecurityTokenService.Issue(IClaimsPrincipal principal, RequestSecurityToken request) 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.Issue(IClaimsPrincipal principal, RequestSecurityToken request)  

Request for security token failed with exception: System.ServiceModel.FaultException`1[System.ServiceModel.ExceptionDetail]: Object reference not set to an instance of an object. (Fault Detail is equal to An ExceptionDetail, likely created by IncludeExceptionDetailInFaults=true, whose value is: System.NullReferenceException: Object reference not set to an instance of an object. 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.SPRequestInfo.ValidateFormsAuthProviderNames(Uri context, String membershipProvider, String roleProvider) 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.SPRequestInfo.SetProviderNames(RequestSecurityToken request) 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.SPRequestInfo..ctor(IClaimsIdentity identity, RequestSecurityToken request, Boolean initializeForActor) 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.SPRequestInfo..ctor(IClaimsPrincipal principal, RequestSecurityToken request) 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.GetTokenLifetime(Lifetime requestLifetime) 
    at Microsoft.IdentityModel.SecurityTokenService.SecurityTokenService.Issue(IClaimsPrincipal principal, RequestSecurityToken r...) 

System.ServiceModel.FaultException`1[[System.ServiceModel.ExceptionDetail, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]: Object reference not set to an instance of an object. 
    at Microsoft.IdentityModel.Protocols.WSTrust.WSTrustChannel.ReadResponse(Message response) 
    at Microsoft.IdentityModel.Protocols.WSTrust.WSTrustChannel.Issue(RequestSecurityToken rst, RequestSecurityTokenResponse& rstr) 
    at Microsoft.IdentityModel.Protocols.WSTrust.WSTrustChannel.Issue(RequestSecurityToken rst) 
    at Microsoft.SharePoint.SPSecurityContext.SecurityTokenForContext(Uri context, Boolean bearerToken, SecurityToken onBehalfOf, SecurityToken actAs, SecurityToken delegateTo) 
    at Microsoft.SharePoint.SPSecurityContext.SecurityTokenForFormsAuthentication(Uri context, String membershipProviderName, String roleProviderName, String username, String password, Boolean isPersistent) 
    at Microsoft.SharePoint.IdentityModel.SPClaimsUtility.AuthenticateFormsUser(Uri context, String userName, String password) 
    at UHPS.Login.Login.loginControl_Authenticate(Object sender, AuthenticateEventArgs e) 
    at System.Web.UI.WebControls.Login.AttemptLogin()  at System.Web.UI.WebControls.Login.OnBubbleEvent(Object source, EventArgs e) 
    at System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args)  at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) 
    at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) 
+0

Pouvez-vous fournir plus de détails? Comment déployez-vous les composants WebPart et quels sont les mappages d'accès de remplacement définis pour cette application Web? Aussi, combien de temps prend un processus de connexion réussi? Les erreurs peuvent aller de: - Ne pas avoir déployé la ou les partie (s) Web correctement sur le 2ème serveur -> probablement - Ne pas avoir les commandes marquées comme sûres - Le serveur expire - Les mappages d'accès alternatifs sont dirigés vers un seul serveur plutôt que vers le serveur. loadbalancer –

Répondre

1

Je ne sais pas pourquoi le résultat final est un fichier non trouvé exception, mais étant donné que se produisant à GetMembershipProvider de l'erreur, je suppose que le fournisseur d'appartenances n'a pas été configuré sur le seul serveur qui est de donner la Erreur.

Les entrées du fournisseur d'appartenances doivent exister dans le fichier web.config de l'application Web sur chaque serveur SharePoint. Instructions sur la configuration du fournisseur d'appartenances sont ici:

http://donalconlon.wordpress.com/2010/02/23/configuring-forms-base-authentication-for-sharepoint-2010-using-iis7/

+0

Merci, je ne serai pas capable d'y jeter un coup d'oeil avant demain, mais je vérifierai les fichiers web.config sur ce serveur pour m'assurer qu'il n'y a pas d'erreur ou quoi que ce soit. –

+0

J'ai comparé le web.config du site principal (inetpub \ wwwroot \ wss \ VirtualDirectories \ 80 \ Web.config) sur les deux serveurs et ils sont identiques. J'ai également comparé les fichiers web.config de SeucrityTokenServiceApplication et ils sont identiques. –

+0

Que se passe-t-il lorsque vous ouvrez la page Gestion des utilisateurs FBA (Paramètres du site) sur le serveur de problème? –

Questions connexes