Ok, voici mon problème, je veux maintenir les données de session entre deux applications ou domaines (par exemple: - www.abc.com et secure.abc.com). J'ai lu sur le net à ce sujet, mais beaucoup de gens pointant de nombreuses façons de le faire, avec des gens commentant + ve et -ve réponses à tous. De plus, beaucoup ne fournissent qu'une réponse théorique, font ceci et cela, mais pas de code du tout.partage des données de session entre les domaines dans asp.net, confus!
sont ces étapes tout ce qui est nécessaire? 1) web.config: <httpCookies domain=".abc.com"/>
2) les données de session magasin dans sql DB comme: (après la préparation du db pour stocker des sessions)
<sessionState mode="SQLServer" sqlConnectionString="Data Source=YourServer;
Integrated Security=True;database=MySessionDB" sqlCommandTimeout="30"
allowCustomSqlDatabase="true"/>
<machineKey decryption="AES" validation="SHA1" decryptionKey="..." validationKey="..." />
3) Am confus au sujet de celui-ci: je veux définir le domaine pour le cookie de session comme ceci Response.Cookies ["ASP.NET_SessionId"]. Domain = ".abc.com"; Mais où ce code doit-il être écrit? cette entrée: http://mgrzyb.blogspot.com/2007/12/aspnet-and-subdomains.html dit: utilisez System.Web.SessionState.SessionIDManager comme classe de base mais la méthode SaveSessionID n'est pas virtuelle et ne peut donc pas être surchargée. Les options sont: ré-implémenter explicitement la méthode d'interface ou décorer la classe SessionIDManager et après avoir appelé SessionIDManager.SaveSessionID définir Response.Cookies [SessionIdCookieName] .Domain à notre domaine.
Seulement si l'auteur avait fourni du code réel, l'étape 3 aurait été claire.
Quelqu'un peut-il fournir le code correspondant?
De plus, ces 3 étapes suffisent pour partager la session entre les domaines?