2010-09-28 4 views
0

J'utilise un site Web CMS sur WSS 3.0.SharePoint - page de connexion personnalisée

Je voudrais avoir une page de connexion personnalisée pour les éditeurs. Est-ce que j'ai d'autres alternatives que le contrôle de bienvenue? (Si vous utilisez Active Directory, vous êtes assez Par exemple, pourrais-je utiliser le contrôle de connexion ASP.NET?

Merci pour votre aide.

Répondre

0

Les réponses ci-dessous sont vraiment utiles, mais j'ai peur que mon environnement soit limité (WSS 3.0, hébergement mutualisé).

Je simplement ajouté ce lien qui ouvre la boîte de dialogue d'authentification:

<a href="/_layouts/Authenticate.aspx?Source=/_layouts/settings.aspx">Sign in</a> 

(Lorsque le paramètre source indique l'URL pour rediriger vers sur l'authentification.)

Merci.

1

Cela dépendra du mécanisme d'authentification que vous utilisez. Si vous utilisez l'authentification basée sur les formulaires, vous pouvez contrôler plus complètement la page de connexion FBA peut être difficile à configurer et je recommande de rester avec AD si vous le pouvez, mais si vous avez pour aller FBA, voici un bon guide:

http://technet.microsoft.com/en-us/library/cc262201(office.12).aspx

+0

Merci, c'était très utile. –

1

Ce n'est vraiment pas très difficile. Cela ne peut se produire que si vous avez un site authentifié basé sur Forms et non basé sur Windows, vous devez alors modifier la page login.aspx.

cela dépend du dossier _layouts de 12 ruche. donc vous devez le modifier. La meilleure façon de faire est, pour le dossier _layouts, de faire une copie de celui-ci et collez-le quelque part dans le disque, puis changez l'emplacement dans les propriétés IIS pour le site du dossier _layouts à votre copié. et faites les changements de cette page de connexion. Points à retenir: Il utilise une page maître et 5 ou 6 emplacements personnalisés sont requis. alors faites-les dans votre nouvelle masterpage.

Ensuite, il est question du code pour que le contrôle de connexion fonctionne. Si vous personnalisez votre code de connexion. alors vous devez modifier

ceci est un exemple:

using System; en utilisant System.Web.Security; en utilisant System.Web.UI.WebControls;

espace de noms CustomLoginPage { public class Connexion: Microsoft.SharePoint.WebControls.UnsecuredLayoutsPageBase { protégé System.Web.UI.WebControls.Login Loginbox; protected override bool AllowAnonymousAccess {get {return true; } } protected override bool AllowNullWeb {get {Renvoie true; }}

protected void Login_Click(object sender, EventArgs e) 
    { 
    if (AuthenticateUser(loginBox.UserName, loginBox.Password)) 
     return; 
    } 
    protected bool AuthenticateUser(string emailAddr, 
     string password) 
    { 
     string userName = emailAddr; 
     MembershipUserCollection coll = 
     Membership.FindUsersByEmail(emailAddr); 
     if (coll != null && coll.Count == 1) 
     { 
     // We're doing this to force the enumerator to give us the 
     // one and only item because there is no by int indexer 
     foreach (MembershipUser user in coll) 
     { 
      userName = user.UserName; 
     } 
     } 
     if (Membership.ValidateUser(userName, password)) 
     { 
     FormsAuthentication.RedirectFromLoginPage(userName, true); 
     return true; 
     } 
     return false; 
    } 
} 

}

donc s'il vous plaît faire modifier.

L'une URL que je suis pour effectuer c'est:

http://www.devx.com/enterprise/Article/35068/1954

Allez-y et si vous rencontrez des problèmes. n'hésitez pas à me contacter: [email protected]

+0

Salut Ankur qui était vraiment utile merci. –

Questions connexes