Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

Conexiones a Oracle

Estas en el tema de Conexiones a Oracle en el foro de Oracle en Foros del Web. Hola a todos: Estoy desarrollando una aplicacion windows con VS.Net y como gestor de Base de Datos Oracle. Tengo el siguiente problema. Los usuarios de ...
  #1 (permalink)  
Antiguo 16/11/2006, 12:25
 
Fecha de Ingreso: marzo-2003
Ubicación: Ciudad Habana, Cuba
Mensajes: 57
Antigüedad: 21 años, 1 mes
Puntos: 0
Pregunta Conexiones a Oracle

Hola a todos:

Estoy desarrollando una aplicacion windows con VS.Net y como gestor de Base de Datos Oracle. Tengo el siguiente problema.
Los usuarios de la aplicacion son usuarios fisicos de oracle, el problema esta en que no quiero que un mismo usuario se conecte desde la aplicacion desde otra PC si ya esta conectado de una. Estuve buscando por la web y me encontre solucionarlo realizando una consulta sobre la vista v$session, lo que pasa es que esta vista no es 100% confiable ya que en ocasiones he detectado que cuando un usuario ya se ha desconectado me dice que todavia esta conectado. Alguna sugerencia de como realizar esta operacion?.

Gracias de antemano
  #2 (permalink)  
Antiguo 16/11/2006, 12:39
Avatar de PequeñoMauro  
Fecha de Ingreso: abril-2006
Ubicación: Lima - Perú
Mensajes: 600
Antigüedad: 18 años
Puntos: 3
Hola, la mejor forma de que puedas hacer eso, es creando un PROFILE. Una de las características o propiedades es que puedes establecer en un PROFILE la cantidad de conexiones por usuario, independientemente de la pc con la que haga la conexión. Cuando creas el PROFILE, lo que haces es asignar ese PROFILE al usuario, y entonces dependiendo de la cantidad de conexiones que tenga, solo podrá conectarse de acuerdo al profile asignado.
Yo uso Oracle 8i, y para poder crear un PROFILE, entro al DBA Studio, me conecto al SID establecido, opción Secutiry - Profiles. Para no hacerla larga, te dejo la sentencia para que solo pueda conectarse una vez:

Código:
CREATE PROFILE "EL_NOMBRE_QUE_ELIJAS" 
    LIMIT CPU_PER_SESSION DEFAULT CPU_PER_CALL DEFAULT CONNECT_TIME 
    DEFAULT IDLE_TIME DEFAULT SESSIONS_PER_USER 1 
    LOGICAL_READS_PER_SESSION DEFAULT LOGICAL_READS_PER_CALL DEFAULT 
    PRIVATE_SGA DEFAULT COMPOSITE_LIMIT DEFAULT 
    FAILED_LOGIN_ATTEMPTS DEFAULT PASSWORD_LOCK_TIME DEFAULT 
    PASSWORD_GRACE_TIME DEFAULT PASSWORD_LIFE_TIME DEFAULT 
    PASSWORD_REUSE_MAX DEFAULT PASSWORD_REUSE_TIME DEFAULT 
    PASSWORD_VERIFY_FUNCTION DEFAULT
En un post anterior habia puesto al respecto. Lo que esta con negrita es lo que permite que tengas una sola conexión, estoy copiando la sentencia que ejecuta el motor para que veas todas las opciones.
Ahora para asignar al usuario, lo haces con ALTER USER:

Código:
ALTER USER "TU_USUARIO"  PROFILE "EL_NOMBRE_DEL_PROFILE_QUE_CREASTE_ARRIBA"
Depende de ti, puedes buscar al respecto , cualquier cosita avisas
__________________
"Nada en mis manos traigo tan solo a tu cruz me aferro....."

Última edición por PequeñoMauro; 16/11/2006 a las 12:41 Razón: corregir una cosita
  #3 (permalink)  
Antiguo 16/11/2006, 13:00
 
Fecha de Ingreso: marzo-2003
Ubicación: Ciudad Habana, Cuba
Mensajes: 57
Antigüedad: 21 años, 1 mes
Puntos: 0
Si amigo gracias pero disculpame que no puse eso.
El problema es que cuando se realizan conexiones desde la app la cantidad de sesiones no he logrado definir cual es, pues no es una sola, es decir cuando se realiza una conexion y verifico las sesiones me dice que es mas de 1, incluso hasta 3, por eso no he podido definir bien el # y no he usado los profiles, alguna otra sugerencia?

Gracias de antemano
  #4 (permalink)  
Antiguo 16/11/2006, 13:09
Avatar de PequeñoMauro  
Fecha de Ingreso: abril-2006
Ubicación: Lima - Perú
Mensajes: 600
Antigüedad: 18 años
Puntos: 3
Yo te recomiendo los PROFILES, es sencillo, y no necesitas hacer la consulta a la vista v$session. Solo creas el PROFILE, se lo asignas al usuario y listo.
__________________
"Nada en mis manos traigo tan solo a tu cruz me aferro....."
  #5 (permalink)  
Antiguo 16/11/2006, 13:16
 
Fecha de Ingreso: marzo-2003
Ubicación: Ciudad Habana, Cuba
Mensajes: 57
Antigüedad: 21 años, 1 mes
Puntos: 0
Si te entiendo, solo que te repito que no se el numero de sesiones concretamente, no es que no halla usado los profiles si los he usado, incluso tengo un problema con el cliente de oracle para los profiles, pero bueno ese no es el caso, el problema esta en que si altero el profile y le pongo solo una sesion por usuario entonces ni la persona que puede entrar ya que su usuario no esta conectado desde otra PC entonces tampoco lo deja entrar pues las sesiones son mas de 1.

Me entiendes?
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 22:18.