Foros del Web » Programación para mayores de 30 ;) » .NET »

Utilizar variable de sesión para proteger directorio en ASP.Net

Estas en el tema de Utilizar variable de sesión para proteger directorio en ASP.Net en el foro de .NET en Foros del Web. Hola a todos. Me estoy iniciando en .Net y tengo algunas (muchísmas) dudas. Me ha tocado proteger un directorio para que sólo se pueda entrar ...
  #1 (permalink)  
Antiguo 28/09/2004, 13:10
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 21 años, 5 meses
Puntos: 4
Utilizar variable de sesión para proteger directorio en ASP.Net

Hola a todos. Me estoy iniciando en .Net y tengo algunas (muchísmas) dudas.

Me ha tocado proteger un directorio para que sólo se pueda entrar estando autorizado. Otras secciones de la página tienen un archivo include de un ASP (no es .Net) que comprueba si se han activado unas determinadas variables de sesión por si hay que redirigir al usuario al registro.

Yo lo que pretendo es proteger un directorio entero que tiene tanto páginas ASP como ASPX, así que el include anterior no me valdría. No estoy muy seguro pero creo que con un archivo web.config en el directorio en cuestión se podría realizar la protección. Pero claro, este archivo es XML y no sé cómo puedo recuperar las variables de sesión para comprobar su validez.

Por supuesto, si la posible solución funcionase al hacer cualquier petición a esa carpeta, incluidos documentos PDF e imagenes, pues mejor que mejor.

Muchas gracias. Un saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
  #2 (permalink)  
Antiguo 28/09/2004, 15:51
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
No te entendí muchas cosas pero si prentendes proteger ciertos archivos lo puedes hacer desde el web.config, haciendo algo como ésto:_

Cita:
<httpHandlers>
<add verb="*" path="*.pdf" type="System.Web.HttpForbiddenHandler" />
<add verb="*" path="*.xls" type="System.Web.HttpForbiddenHandler" />
...
...
</httpHandlers>
Obviamente tambien te tienes que apoyar del IIS con el archivo Aspnet_isapi.dll y seleccionar esos archivos que deseas bloquear, pero quiero saber si eso es lo que buscas para que te lo detalle.

Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #3 (permalink)  
Antiguo 28/09/2004, 16:06
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 21 años, 5 meses
Puntos: 4
Gracias por responder. Voy a ver si lo expreso un poco mejor.

La página tiene un registro de usuarios con contraseña. Cuando se registran se crean una variables de sesión que se recuperan en las páginas restringidas para permitir el acceso. Más o menos:

Código:
<%
If Session("usuario")<>"Brave" And Session("password")<>"nap" Then
  Response.Redirect "registrarse.asp"
End If
%>
Este código se incluye en todas las páginas ASP de acceso restringido con un include.
Código:
<!--#include file="controlacceso.asp"-->
Ahora bien, he creado un nuevo directorio con diversas páginas ASP y ASPX que también deberían estar restringidas. Como hay páginas en ASP.Net ya no puedo usar el include. Entonces, ¿cómo consigo proteger todas las páginas de ese nuevo directorio utilizando las variables de sesión y sin tener que modificar todas las páginas? Pensé que con un web.config en ese directorio existía esa posibilidad.

¿Se entendió ahora?

Un saludo y gracias de nuevo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
  #4 (permalink)  
Antiguo 29/09/2004, 01:39
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 21 años, 5 meses
Puntos: 4
He estado viendo esto:

http://msdn.microsoft.com/library/en...guringsecurity

Creo que la solución pasa por aquí:

web.config
Código:
<location path="page.aspx" />
  <authorization>
    <allow users="DomainName\Bob, DomainName\Mary" />
    <deny users="*" />
  </authorization>
</location>
Pero, ¿cómo han hecho Bob y Mary para decir que son ellos?

Un saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
  #5 (permalink)  
Antiguo 29/09/2004, 08:11
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Cita:
Pero, ¿cómo han hecho Bob y Mary para decir que son ellos?
Lo que pasa es que eso se utiliza cuando usas autenticacion de windows..
<authentication mode="Windows" />

Es por eso que se les puedes asignar o denegar el acceso a los usuarios que desees dentro de tu domain.

Salu2
  #6 (permalink)  
Antiguo 25/10/2008, 14:11
 
Fecha de Ingreso: octubre-2003
Ubicación: Lima
Mensajes: 319
Antigüedad: 20 años, 6 meses
Puntos: 2
Respuesta: Utilizar variable de sesión para proteger directorio en ASP.Net

Cita:
Iniciado por RootK Ver Mensaje
No te entendí muchas cosas pero si prentendes proteger ciertos archivos lo puedes hacer desde el web.config, haciendo algo como ésto:_



Obviamente tambien te tienes que apoyar del IIS con el archivo Aspnet_isapi.dll y seleccionar esos archivos que deseas bloquear, pero quiero saber si eso es lo que buscas para que te lo detalle.

Salu2

Hola cito lo que le escribiste al amigo aqui, lo que pasa es que yotengo una pagina a la que teienes que logearte y luego puedes comprar cursos por internet, los cuales te los bajas en pdf. El punto es que no se como proteger esos archivos para que solo puedas descargarlos si es que ya pagaste por el. El logeo lo hize desde con config protegiendo toda una carpeta, pero ahora el punto es como protejo esos archivos para que solo puedan ser bajados una vez que ya pagaste.

Muchas gracias
  #7 (permalink)  
Antiguo 27/10/2008, 03:21
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 8 meses
Puntos: 188
Respuesta: Utilizar variable de sesión para proteger directorio en ASP.Net

A ver, en el onLoad de la página que quieres proteger tienes que hacer una comparación entre el valor de Session("Parametro") y el valor del Parámetro creado.

Si al loguear se crea una variable de sesión, ejemplo Session.add("isLoggedIn","tlK2rUs");

pues comparas en el onload con un if Session("isLoggedIn") == "tlK2rUs"; y si se verifica dejas que cargue la página, y si no, pues por código se redirige a la página de login o a una página de error específica.
  #8 (permalink)  
Antiguo 27/10/2008, 07:54
 
Fecha de Ingreso: octubre-2003
Ubicación: Lima
Mensajes: 319
Antigüedad: 20 años, 6 meses
Puntos: 2
Respuesta: Utilizar variable de sesión para proteger directorio en ASP.Net

Hola Fuzzylog, creo que no me explique bien, lo que deseo proteger es un archivo que se va a bajar de la pagina. UN archivo PDF, las personas se legean y si, las paginas estan protegidas y solo se pueden cargar si es que hay una persona que haya iniciado sesion. Pero ademas de iniciar sesion deben de haber pagado para poder descargarse los archivos.

Saludos

Gracias de antemano
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:49.