cambio de usuario de la cuenta dbo desde mi NT user a sa

26/05/2005 - 14:45 por .·:m·a·r·l·a:·. | Informe spam
Hola a todos:

trabajo con un servidor en que soy "casi administrador", me refiero a que lo
soy a nivel de base de datos, pero no a nivel de servidor, con lo cual puedo
hacer casi todo excepto
- crear bases de datos
- añadir usuarios en el servidor (NT o SQL)
- crear linked servers
- modificar configuracion de servidor como por ejemplo DB ownership
chaining

esto es debido a que el departmaneto dueño del servidor es encargado de
crear los backups y otros mantenimientos

el caso es que tengo algunos problemas para hacer funcionar el DB Ownership
chaining y me han comentado desde dicho departamento que ello puede ser
devido a que las tablas/vistas estas creadas con dbo, pero dbo esta logeado
con mi cuenta de acesso NT (dominio/usuario) y no con sa, con lo cual me han
dado la solucion de cambiar el login de usuario a sa mediante :

sp_change_user_login Update_One dbo sa

en cada una de lasbases de datos

mi pregunta

perdere algun permiso siendo despues un usario con todos los roles
(db_owner, bd_acessadmin...) que siendo dbo como ahora ??

puede ser realmente el problema de que no funcione correctamente el DB
ownership chaining el ser mi usuario o sa el login de la cuenta dbo ??

decir que todas las referncias entre vistas que usarian DB ownership
chaining estan hechas siempre tal que database.dbo.nombrevista asi que el
problema no viene de la referencia de las tablas/vistas


gracias por adelatado por el tiempo que os molesteis en contestarme
 

Leer las respuestas

#1 Alejandro Mesa
26/05/2005 - 15:31 | Informe spam
puede ser realmente el problema de que no funcione correctamente el DB
ownership chaining el ser mi usuario o sa el login de la cuenta dbo ??



Si. El objeto referenciado debe pertenecer al mismo usuario y este usuario
debe estar mapeado al mismo login en ambas bds. Por ejemplo, que tu hubieses
creado ambas tablas, usando en ambas bds el mismo login y usuario.

sp_change_user_login Update_One dbo sa



No se si podras correr esta sentencia, primero porque los parametros son
varchar(10) y sysname, asi que debes encerrarlos entre apostrofes. Segundo,
porque el login 'sa' no es permitido por este procedimiento. Has una prueba
crea un login nuevo, dale acceso a la bd y luego usa el procedimiento para
mapear este usario al login 'sa', veras el error.

Ademas, si mapeas tu usuario hacia 'sa', entonces tendras acceso a sql
server pero no a la bd si es que estas usando 'Windows Authentication',
porque 'sa' es un login de sql server. Creo que este procedimiento no deja
mapear un usuario ligado a un login de windows, excepto cuando este queda
huerfano, osea, que se borra la cuenta de usuario a nivel de sistema
operativo, quedando el usuario mapeado hacia un login no existente.


AMB

".·:m·a·r·l·a:·." wrote:

Hola a todos:

trabajo con un servidor en que soy "casi administrador", me refiero a que lo
soy a nivel de base de datos, pero no a nivel de servidor, con lo cual puedo
hacer casi todo excepto
- crear bases de datos
- añadir usuarios en el servidor (NT o SQL)
- crear linked servers
- modificar configuracion de servidor como por ejemplo DB ownership
chaining

esto es debido a que el departmaneto dueño del servidor es encargado de
crear los backups y otros mantenimientos

el caso es que tengo algunos problemas para hacer funcionar el DB Ownership
chaining y me han comentado desde dicho departamento que ello puede ser
devido a que las tablas/vistas estas creadas con dbo, pero dbo esta logeado
con mi cuenta de acesso NT (dominio/usuario) y no con sa, con lo cual me han
dado la solucion de cambiar el login de usuario a sa mediante :

sp_change_user_login Update_One dbo sa

en cada una de lasbases de datos

mi pregunta

perdere algun permiso siendo despues un usario con todos los roles
(db_owner, bd_acessadmin...) que siendo dbo como ahora ??

puede ser realmente el problema de que no funcione correctamente el DB
ownership chaining el ser mi usuario o sa el login de la cuenta dbo ??

decir que todas las referncias entre vistas que usarian DB ownership
chaining estan hechas siempre tal que database.dbo.nombrevista asi que el
problema no viene de la referencia de las tablas/vistas


gracias por adelatado por el tiempo que os molesteis en contestarme



Preguntas similares