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

Inicios de Sesion y Usuarios de Base de Datos

Estas en el tema de Inicios de Sesion y Usuarios de Base de Datos en el foro de Bases de Datos General en Foros del Web. Hola a todos tengo un problema, espero puedan ayudarme, es un poco extensa la explicacion pero quiero dar hasta el mas minimo detalle: Acabo de ...
  #1 (permalink)  
Antiguo 15/06/2005, 11:18
Avatar de rudydelperu  
Fecha de Ingreso: enero-2005
Mensajes: 85
Antigüedad: 19 años, 3 meses
Puntos: 0
Pregunta Inicios de Sesion y Usuarios de Base de Datos

Hola a todos tengo un problema, espero puedan ayudarme, es un poco extensa la explicacion pero quiero dar hasta el mas minimo detalle:
Acabo de formatear un servidor q tenia el w2000 server, despues de formatearlo le instale el w2003 server, lo configure todo como estaba antes, el active directory, la base de datos q utiliza el software de la empresa, la red y todo eso, todo estaba bien...pero cuando queremos acceder al sistema de software de la empresa, lo hacemos por medio de contraseña para lo cual tenemos dos tipos de acceso: como 'administrador' y como 'usuario', en cualquiera de los dos casos aparece el sgte mensaje de error:

Error en la conexion
SQLState:'28000'
Error de SQL Server:'18456'
[Microsoft][ODBC SQL Server Driver][SQL Server]Error de Inicio de Sesion del usuario 'Administrador'


lo unico q diferencia para ambos tipos de acceso es la parte final del mensaje de error en donde en vez de 'Administrador' aparece 'Usuario' si es q hemos querido ingresar como 'Usuario'.

Luego damos en el boton aceptar y aparece otro mensaje en donde te especifica:

Origen de Datos:
Id de Inicio de Sesion:
Contraseña:
y tbn da la posibilidad de ingresar usando conexion de confianza, si es q se habilita esa opcion alli recien se puede ingresar al sistema de software de la empresa de manera normal, si es q no se hace eso no se puede, obviamente al usar conexion de confianza esta usando el usuario por defecto del SQL q es 'sa'.


La idea es q ingrese sin q aparescan estos mensajes.

Yo intente lo sgte:

Hacer q coincidan los inicios de sesion del SQL con los usuarios de la base de datos o en todo caso asociarlos, para ello utilice un codigo q baje de internet q es el sgte (lo pongo para aquellos q tengan el mismo problema y quizas les pueda servir):

DECLARE cUsuarios CURSOR READ_ONLY
FOR
select UserName = name from sysusers
where issqluser = 1 and (sid is not null and sid <> 0x0)
and suser_sname(sid) is null
order by name

DECLARE @Usuario varchar(4000)
DECLARE @cadena varchar(4000)
OPEN cUsuarios

FETCH NEXT FROM cUsuarios INTO @Usuario
WHILE (@@fetch_status <> -1)
BEGIN
IF (@@fetch_status <> -2)
BEGIN
SET @cadena = 'sp_change_users_login ''Auto_Fix'',''' + @Usuario + ''''
EXEC ( @CADENA )
END
FETCH NEXT FROM cUsuarios INTO @Usuario
END

CLOSE cUsuarios
DEALLOCATE cUsuarios


lo ejecuté en el analizador de consultas y luego verifiqué en el SQL (Administrador Corporativo) y si paso algo en la configuracion de los usuarios de la base de datos, Ahora junto a sus nombres aparecen tbn el nombre de inicio de sesion (q antes no aparecia). Es decir:

Usuarios de Base de Datos:
Administrador(nombre)----->Administrador(Nombre inicio de sesion)
dbo(nombre)-------------->sa(Inicio de sesion)
Usuario(nombre)----------->Usuario(inicio de sesion)


y en la carpeta Seguridad/Inicios de Sesion:
Administrador----------------->Estandar----------->Permiso--->CreditosDb
BUILTIN/Administradores------->Grupo de Windows->Permiso--->master
sa---------------------------->Estandar---------->Permiso--->CreditosDb
Usuario----------------------->Estandar---------->Permiso--->CreditosDb


Los q dice estandar usan autenticacion 'sa' y estan con acceso permitido a las bases de datos q aparecen alli, en el caso de la empresa donde trabajo usamos la base da datos 'CreditosDb'.

Despues de estos cambios, intentamos ingresar de nuevo al sistema y nada!!...aparece el mismo mensaje de error, la verdad no se me ocurre nada mas, por alli intente eliminar los usuario de base datos y crear otros con los mismos nombres pero esta vez q usen el inicio de sesion 'sa' pero no pude, aparece un mensaje de error diciendo:

Error 15405: No se puede usar el nombre reservado de usuario o funcion 'sa'.

La verdad ya no se q mas hacer, quisiera por favor me ayuden , si alguien tiene conociemientos avanzados de Sql o a pasado por el mismo problema, les agradeceria me ayudasen. Gracias mil de antemano. Salu2.
__________________
RUDY DEL PERU :arriba: :-D :aplauso:
  #2 (permalink)  
Antiguo 15/06/2005, 11:23
Avatar de Jorge_Mota  
Fecha de Ingreso: diciembre-2002
Ubicación: Chapinlandia :-D
Mensajes: 725
Antigüedad: 21 años, 5 meses
Puntos: 11
a ver, creo que tienes que quitar de los inicios de sesion de la base de datos que usa tu soft en el sql server, luego, debes de reagregar al usuario a la bd, por que el UUID que tiene guardado en la base de datos no corresponde con el de tu nuevo Dominio.

checa a ver si es eso.
__________________
Jorge Mota
Blog
Gubiz estafa
  #3 (permalink)  
Antiguo 15/06/2005, 11:57
Avatar de rudydelperu  
Fecha de Ingreso: enero-2005
Mensajes: 85
Antigüedad: 19 años, 3 meses
Puntos: 0
Amigo, gracias por tu apoyo, pero No entendi bien q debo eliminar: los inicios de sesion de SQL o los usuarios de la BD...me hiciste referencia a q quizas no coincidan los UUID, utilice el sgte codigo en el analizador de consultas para el usuario 'Administrador':

select uid, name, sid from sysusers
where name = 'administrador'

select srvid, sid, name from master..sysxlogins
where name = 'administrador'


y me reporto lo sgte:

uid name sid
5 Administrador 0x98E4C43575388D4B8000D6F857955921
-------------------------------------------------------------------
srvid sid name
NULL 0x98E4C43575388D4B8000D6F857955921 Administrador


osea los ID internos si coinciden, quizas tengas razon en lo del dominio, voy a probar eso, pero no se como hacerlo, no se si podrias volver a explicarmelo xq no te supe entender. Gracias mil de antemano. Salu2.
__________________
RUDY DEL PERU :arriba: :-D :aplauso:
  #4 (permalink)  
Antiguo 15/06/2005, 12:17
Avatar de rudydelperu  
Fecha de Ingreso: enero-2005
Mensajes: 85
Antigüedad: 19 años, 3 meses
Puntos: 0
Hola amigo Jorge_Mota ya probe lo q me sugeriste o bueno lo q crei entender, lo q hice fue: eliminar los inicios de sesion de SQL y por consiguiente automaticamente tbn se eliminaron los usuarios de mi base de datos, los volvi a re-crear con autenticacion SQL, con contraseña, con mi base de datos como la predeterminada y con acceso permitido a mi base de datos...pero nada!! ...,q debo hacer por favor alguna otra idea amigo Jorge_Mota o quizas alguien mas q pueda ayudar en este tema. Gracias mil de antemano. Salu2.
__________________
RUDY DEL PERU :arriba: :-D :aplauso:
  #5 (permalink)  
Antiguo 15/06/2005, 13:18
Avatar de Carcharhinus  
Fecha de Ingreso: septiembre-2004
Mensajes: 264
Antigüedad: 19 años, 7 meses
Puntos: 0
a ver si entendi bien:
Instalaste un servidor de SQL "nuevo", talves recuperaste la informacion o las BD desde un respaldo o las creaste de nuevo.
Si fue la segunda opcion el 'Administrador' podria no estar asociado con la BD de tu sistema, fijate bien si en la carpeta de 'Security / Logins' si esta selecionada la casilla en 'Database Access' la BD que utilizan tanto el 'Administrador' como el 'Usuario' si no es asi, seleccionalas.
Si recuperaste las BD de un respaldo, no deberias de tener el problema, lo mejor para 'levantar' un servidor dedesde un respado es resguardar las carpetas donde se encuentran los archivos de las BD 'MDF y LDF' se guardan en la carpeta MSSQL\DATA o donde lo ayas decidido. Saludos.
  #6 (permalink)  
Antiguo 15/06/2005, 15:23
Avatar de rudydelperu  
Fecha de Ingreso: enero-2005
Mensajes: 85
Antigüedad: 19 años, 3 meses
Puntos: 0
Hola Carcharhinus, gracias por tu valioso aporte, cuando instale el sql Server 2000 Personal SP2 fue 'nuevo' xq habia formateado el servidor, la base de datos la recupere adjuntandola por medio de una opcion q tiene el SQL, la habia guardado previamente en un CD q yo denomine Backup y luego las copie en el disco rigido en una ubicacion desde la cual adjunto el SQL, las diferentes opciones de configuracion del SQL las copie manualmente y luego al volver a instalarlo las configure tal cual estaban,...los usuarios 'Administrador' y 'Usuario' si estan asociadas a la base de datos de mi sistema de software, es mas los UID de inicio de sesion en SQL y los UID de usuarios de mi base de datos son los mismos...la verdad estoy q me arranco los pelos xq no doy con la solucion, si pueden seguir ayudandome se los agradecere muchisimo, se q en estos foros hay gente muy capaz. Gracias mil de antemano. Salu2.
__________________
RUDY DEL PERU :arriba: :-D :aplauso:
  #7 (permalink)  
Antiguo 17/06/2005, 12:50
Avatar de rudydelperu  
Fecha de Ingreso: enero-2005
Mensajes: 85
Antigüedad: 19 años, 3 meses
Puntos: 0
Todavia no salgo del problem, creo q el problem va por el tipo de autenticacion:
Al "modificar propiedades del registro..." del servidor le he puesto utilizar autenticacion Sql.

En "Propiedades" del servidor en la ficha 'seguridad' esta con autenticacion SQL y Windows. Y en la cuenta de inicio de servicio he puesto cuenta del sistema ( no se si aqui esta bien q este asi) quizas debi colocar otra cuenta como 'sa' x ejm con su contraseña ( no se si sea factible eso) aunq al hacerlo me ha salido error.

Luego al crear los inicios de sesion los he creado con autenticacion SQL y claro con acceso ala base de datos correspondiente tanto por defecto y en la ficha 'acceso a base de datos'.

No se si esta configuracion es la correcta, mi sistema no conecta como deberia ser, tengo q superar 2 ventanas de error para poder hacerlo, parece ser q los ID de usuarios de BD y los ID de inicio de sesion no coinciden, pero cuando corro un codigo para comprobar esto sale un reporte mostrando q aambos Id son totalmente iguales. He probado con desistalar el sql y volver a instalar, le colocado los service pack despues para probar y nada sigue oigual. ¿Q hago? alguien podria ayudarme.Salu2.
__________________
RUDY DEL PERU :arriba: :-D :aplauso:
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.
Tema Cerrado

SíEste tema le ha gustado a 1 personas (incluyéndote)




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