Permisos

Buenas:
Acabo de migrar las bases de datos del SQL Server 2000 de un equipo a otro (las bases de datos contienen la información de la Intranet), y cuando intento acceder a la página que maneja la información me sale el siguiente error:
SQL error: [Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'., SQL state 28000 in SQLConnect
... Con lo que no puedo acceder a las páginas porque supuestamente no tengo permisos
¿Qué puedo hacer?
Gracias por adelantado
-VÍCTOR-

1 respuesta

Respuesta
1
Más que un error de permisos tienes un error de autentificación, es decir, SQL Server se diferencia, entre muchas otras cosas, de Access (por ejemplo) en que al ser un gestor multiusuario (cosa que Access no) tiene un sistema de autentificación que es obligatorio.
En todas las cadenas de conexión (tanto OLEDB como DSN, etc) tienes unos parámetros que te sirven para conectar enviando las credenciales.
Debes mirar dentro de los parámetros de tu cadena para ver como pasarle un nombre de usuario y contraseña y, como es lógico, tener uno.
Buenas:
Vale, tengo los DSNs, pero ¿cuáles tengo que modificar, en el servidor web o en el que tengo la base de datos?
Lo que ocurre es que antes tenía en el servidor web también el SQL Server, así que no sé cuáles cambiar...
Gracias otra vez
-VÍCTOR-
Tienes que hacer coincidir todos los inicios de sesión:
* En el SQL Server tendrás un inicio de sesión para esa base de datos y aplicados sus permisos (el usuario tiene que poder acceder a esa base de datos)
* En el DSN del servidor web tienes que hacer que el driver pueda acceder poniéndole ese inicio de sesión. Sabrás que lo has hecho bien porque tienes un botón de probar el driver y no te tiene que dar ningún error
* En tu cadena de conexión tienes que poner el mismo inicio de sesión. Por cuestiones de seguridad pon la cadena de conexión en un sitio no visible del código (o al menos poco visible)
Perdona que te siga molestando, pero no tengo mucha idea del SQL Server...
¿Dónde está el inicio de sesión para la base de datos (lo primero que me pones)?
Los DSNs lo he puesto ya que vayan desde el servidor web al servidor de la base de datos y me ha dado correcto el test
En mi cadena de conexión (supongo que te referirás al código fuente del fichero) ya tenía colocado el usuario y la contraseña...
Te vuelvo a dar las gracias, y perdona las molestias...
-VÍCTOR-
No te preocupes
Si te ha dado correcto ya puedes usar la base de datos
En cuanto al SQL Server si estas muy mal de conocimientos te recomiendo que hagas una parada para, al menos, tomar idea de como va a groso modo.
SQL Server no es un gestor como el access y un cambio en un punto como los permisos puede ocasionar varios problemas. Asi que ve con ojo.
Los permisos en SQL Server tienen que ver, primero, con los inicios de sesión que encontraras en en seguridad y luego tienes que ir a la base de datos y tocar los accesos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas