2010-11-30 7 views
6

J'ai deux applications ASP.NET hébergées sur un serveur. Leurs configs ont les mêmes valeurs machineKey et les sections d'authentification se présenter comme suit:Connexion unique dans ASP.NET - nom de cookie, machineKey et quoi de plus?

<authentication mode="Forms"> 
     <forms loginUrl="/_login/default.aspx" name=".MySingleAuth" /> 
    </authentication> 

<authentication mode="Forms"> 
     <forms loginUrl="~/MySingle/LogOn/0" timeout="2880" name=".MySingleAuth"/> 
    </authentication> 

Le signe unique sur (l'authentification dans les deux applications utilisant un biscuit) ne fonctionne toujours pas. Qu'est-ce que je rate? Editer: Les deux applications sont sur notre intranet, l'une sous https://ip:84 et l'autre sous https://ip:86 (où ip est une adresse IP).

Répondre

9

Pour moi, la configuration suivante pour SingleSignOn travaillé:

<machineKey 
    validationKey="818B77A6AFBF5E0B82B7FBE6F992E1733986DAEF81D1EB107B55D6F68EB6FEC6097349A9E37A407A6B5CF2FA1AB9327CA182A2C999A768C14B146036420203F9" 
    decryptionKey="45798D54477D1D11BFC16733786AABB50E7FD5DDB3F8F46A" 
    validation="SHA1" 
/> 

<authentication mode="Forms"> 
    <forms name=".ASPXAUTH" loginUrl="~/Login.aspx" protection="All" cookieless="UseCookies" enableCrossAppRedirects="true"/> 
</authentication> 
  1. Assurez-vous les clés sur les deux applications sont absolument identiques (validation et le déchiffrement)
  2. Le nom du cookie doit être le même
  3. SingleSignOn ne fonctionne que si vous êtes sur le même domaine (cookies).

Lisez cette page, il m'a aidé: http://www.codeproject.com/KB/aspnet/SingleSignon.aspx