miércoles, 23 de julio de 2008

Guardar la session en el sqlserver

En una aplicacion .Net se puede guardar la session en un Sqlserver (AspnetsessionState). Para esto alcanza con correr un script y configurar el acceso a la base (creada por el script) en el config. Los pasos estan bien detallados aca.

Me paso en un W2003 server, que la ejecución del wizard del aspnet_regsql.exe, no me creaba la base de datos (ASPSTATE). Llamando al script directamente InstallSqlState.sql, tampoco tenia los permisos necesarios. Corriendolo por linea de comando me funciono:

aspnet_regsql.exe -S SERVER -U USER -P pssw -ssadd -sstype p

Si no se setea sstype persisted hay que darle permisos a la base de datos tempdb con el usuario que se esta accediendo

El seteo del web.config en la seccion system web hay que especificar el string de conexion de la session, esto es:
< mode="SQLServer" sqlconnectionstring="data source=SERVER INSTANCE;Integrated Security=yes;" cookieless="false" timeout="20">

Dependiendo de si se use Impersonate o no, hay que agregar el usuario DOMAIN/USER o NT AUTHORITY\NETWORK SERVICE a la base de datos

No hay comentarios: