2009-05-18 5 views
1

Voici le problème auquel nous sommes confrontés.Définition dynamique du chemin dans l'authentification par formulaire

Dans une configuration d'environnement hébergé, nous hébergeons le même projet plusieurs fois. Nous spécifions actuellement un chemin d'accès dans la section config de notre web.config. Cependant, pour faciliter notre processus de déploiement, nous aimerions définir le chemin en fonction du nom du répertoire virtuel.

Existe-t-il un moyen de définir dynamiquement le chemin dans le fichier web.config?

Répondre

1

Il y a une surcharge de FormsAuthentication.SetAuthCookie qui prend en paramètre le chemin du cookie, donc si vous gérez vous-même le processus de connexion, vous pouvez simplement passer le chemin de votre choix.

Le problème est que la norme System.Web.UI.WebControls.Login utilisera uniquement la valeur de chemin par défaut. Vous pouvez cependant gérer l'événement LoggedIn pour fixer le chemin ...

void FixCookie(object sender, EventArgs args) 
{ 
    Response.Cookies[FormsAuthentication.FormsCookieName].Path = "/my-custom-path"; 
} 
+0

Je vais tester ce le matin quand je travaille, merci mil! – StevenMcD

+0

bien que cela fonctionne, j'ai trouvé une solution légèrement meilleure que j'ai posté à propos ici: http://www.failboy.net/2009/05/set-forms-authentication-path/ – StevenMcD

+0

@StevenMcD essayé votre lien ... ne semble pas être actif. pouvez-vous re-poster un qui fonctionne, s'il vous plaît? – xagyg

Questions connexes