En ASP.Net existen 3 formas de almacenar informacion sobre sesiones.
En la memoria del IIS, en la memoria del servidor o en SQL Server.
Cuando una aplicación es distribuida entre multiples servidores (Web Farm), SQL Server es la forma en la que se lleva control de las sessiones, porque nunca se sabe a que servidor se le va a asignar cada una de las solicitudes del cliente y por tanto, la información de sesiones no puede ser accesada si esta se encuentra en un servidor distinto. Pero si la informacion de sesiones es guardada en SQL Server, esta puede ser accedida sin importar en que servidor se este ejecutando la aplicación.
Esto normalmente es usado cuando la misma aplicacion esta en varios servidores, pero me imagino que si usas SQL Server, tus variables de sesion pueden estar disponibles para diferentes aplicaciones accediendo a la misma Base de Datos.
Checa
http://www.developer.com/db/article.php/10920_3595766_1 o busca mas informacion respecto a esto.
En el caso que no se pueda, puedes crear tus propios metodos para almacenar toda la informacion que quieras compartir en una Base de Datos cualquiera.