Pregunta

Estoy perplejo sobre cómo despedir un evento en Silverlight cuando una cookie de autenticación forma expira. Me gustaría redirigir la aplicación a una pantalla de inicio de sesión de inmediato. Entiendo que puedo esperar hasta que falle una llamada de servicio web, pero creo que redirigir al usuario para iniciar sesión después de ingresar datos es una experiencia deficiente del cliente.

¿Fue útil?

Solución

Esta cookie tiene un tiempo de espera predeterminado de 30 minutos. Eso significa que si no hay comunicación con el servidor durante más de 30 minutos, entonces la cookie expirará y el usuario se registrará. La implementación real de cómo funciona el vencimiento es un poco más complicada, pero esta es la versión simple (puede encontrar el comportamiento más complicado descrito aquí: http://support.microsoft.com/kb/910439). Puede aumentar o disminuir este valor si es necesario (en el archivo web.config), pero no se recomienda hacerlo demasiado grande. Cuanto más larga sea la vida de la cookie, más posibilidades de que alguien tenga que robarla y hacerse pasar por el usuario. La breve vida útil de la cookie es esencialmente una medida de seguridad, y solo debe cambiarse después de una cuidadosa consideración.

De Aplicaciones comerciales Pro con Silverlight 4, página 250

Supongo que podrías hacer un temporizador en el MainPage Y simplemente redirige automáticamente al inicio de sesión si el temporizador no se actualizó durante 30 minutos. No puedo encontrar la cita en este momento, pero creo que recuerdo que también dijo que no hay forma real de saber cuándo expiró la cookie.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top