Error de inicio de sesión del usuario 'NT AUTHORITY\ANONYMOUS LO GO

08/09/2007 - 14:16 por Alfonso | Informe spam
Hola;

Hace poco me he pasado a windows vista y a la hora de seguir con el
desarollo de un servicio web en visual estudio 2005 me he encontrado con este
problema cuando intento conectarme a mi base de datos sql Server 2005 espress:

Error de inicio de sesión del usuario 'NT AUTHORITY\ANONYMOUS LOGON

No se si es por como instale el sql server, porque hago algo mal, por
permisos, por el IIS 7,pero el caso es que me funcionaba en xp y en vista
no hay forma.


Por favor si alguien me puede hecahr una mano se lo agradeceria muchisimo.

Preguntas similare

Leer las respuestas

#1 Alberto Poblacion
08/09/2007 - 14:34 | Informe spam
"Alfonso" wrote in message
news:
Hace poco me he pasado a windows vista y a la hora de seguir con el
desarollo de un servicio web en visual estudio 2005 me he encontrado con
este
problema cuando intento conectarme a mi base de datos sql Server 2005
espress:

Error de inicio de sesión del usuario 'NT AUTHORITY\ANONYMOUS LOGON

No se si es por como instale el sql server, porque hago algo mal, por
permisos, por el IIS 7,pero el caso es que me funcionaba en xp y en
vista
no hay forma.



Tiene toda la pinta de que la cadena de conexión al sql server la tienes
configurada para uasr seguridad integrada. Esto significa que le pasa
automáticamente a Sql Server el usuario que está ejecutando la aplicación.
Si Sql Server no conoce a ese usuario, se produce ese error.
En este caso, a la visua del error que te da, tienes la página web
configurada para funcionar en modo anónimo, pero el Sql Server no conoce al
usuario anónimo.

Tus opciones son estas (no sé si me dejo alguna más):

1) Cambiar la cadena de conexión para que utilice un usuario concreto, en
lugar de la seguridad integrada. Lógicamente, ese usuario concreto tendrás
que darlo de alta en el Sql Server, y habilitar en éste la seguridad en modo
mixto, que de forma predeterminada está desactivada.

2) Dejar la cadena con autenticación integrada, y cambiar la identidad del
usuario que ejecuta la página web para que coincida con algún usuario dado
de alta en sql server. Esto lo puedes hacer de varias formas:

a) Usar un usuario fijo, poniendo en el web.config un <identity
impersonate="true" userName="Nombre" password="xxx" />
b) Usar autenticación integrada, de forma que use el mismo usuario que
accede en el navegador. Hay que habilitarla con la herramienta
administrativa del IIS, y poner en el web.config la autenticación en modo
Windows y un <identity impersonate="true"/>. Nótese que tiene varios
requisitos en cuanto al tipo de navegador y a que los puestos pertenezcan al
mismo dominio que el servidor.

3) Dar de alta al NT AUTHORITY\ANONYMOUS LOGON como usuario de Sql Server.
No lo he probado nunca (aunque sí he probado en versiones anteriores con el
usuario ASPNET). En teoría debería funcionar.

Una observación más acerca del Sql Server en windows Vista: En versiones
previas de los sistemas operativos, el administrador del sistema era
automáticamente administrador de Sql Server. En Vista, no; hay que añadirlo
a mano. Al poner el service pack de sql server para Vista te pregunta
automáticamente si quieres añadir al usuario como administrador del sql
server.
Respuesta Responder a este mensaje
#2 Alfonso
10/09/2007 - 19:20 | Informe spam
Gracias por tu respuesta.

He estado haciendo pruebas y con:

<identity
impersonate="true" userName="Nombre" password="xxx" />



Ya no me sale ese error pero ahora me aparece otro, no se si habré dado un
paso hacia adelante o hacia atras.

Ahora el error es:

System.Data.SqlClient.SqlException: Error de inicio de sesion del usuario
''. El usuario no esta asociado a una conexion de de sql server de confianza.

Me ha dejado a cuadros porque si le paso un usuario porque ahora no me sale
en el error.

Dato: El usuario que uso el el impersonate lo tengo dado de alta en el logon
de sql server.

Que hago??
Respuesta Responder a este mensaje
#3 Alberto Poblacion
10/09/2007 - 20:07 | Informe spam
"Alfonso" wrote in message
news:
He estado haciendo pruebas y con:

<identity
impersonate="true" userName="Nombre" password="xxx" />



Ya no me sale ese error pero ahora me aparece otro, no se si habré dado un
paso hacia adelante o hacia atras.

Ahora el error es:

System.Data.SqlClient.SqlException: Error de inicio de sesion del usuario
''. El usuario no esta asociado a una conexion de de sql server de
confianza.

Me ha dejado a cuadros porque si le paso un usuario porque ahora no me
sale
en el error.

Dato: El usuario que uso el el impersonate lo tengo dado de alta en el
logon
de sql server.

Que hago??



Por el error que me indicas ("no esta asociado a una conexion de de sql
server de confianza"), me da la impresión de que el usuario lo has dado de
alta en la tabla de usuarios de Sql Server, en lugar de decirle a Sql Server
que tome el usuario de Windows. Si estás usando el Sql Server Management
Studio Express, la diferencia es que en la ventana de "New Login" en el
primer caso marcas la opción de "SQL Server authentication" (y te pregunta
usuario y password), mientras que en el segundo marcas la de "Windows
Authentication" y tiene un botón "buscar" que te lista los usuarios del
sistema para que selecciones uno.
Para usar el "identity impersonate" junto con la cadena de conexión
configurada para usar una conexión de confianza, necesitas que el usuario de
Sql Server esté en el modo "Windows Authentication".
Si quisieras usar el otro modo ("SQL Server authentication"), haría falta
activar el Modo Mixto en Sql Server y poner el usuario y password en la
cadena de conexión (y olvidarte del identity impersonate que en este caso no
afectaria a la conexion con Sql Server).
Respuesta Responder a este mensaje
#4 Alfonso
10/10/2007 - 18:19 | Informe spam
He estado tiempo liado con trabajo y otras cosas pero no he solucionado nada.

Sigo con el erro de:

System.Data.SqlClient.SqlException: Error de inicio de sesión del usuario
'NT AUTHORITY\ANONYMOUS LOGON'.
en System.Data.SqlClient.SqlInternalConnection.OnError(SqlException
exception, Boolean breakConnection)
en
System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject
stateObj)
en System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior,
SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet
bulkCopyHandler, TdsParserStateObject stateObj)
en System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean
enlistOK)
...

Me he creado un Inicio de sesion en sqlserver y lo he asociado a mi base de
datos.

Cadena de conexion:

return new System.Data.SqlClient.SqlConnection(
"Data Source=HP1\\SQLEXPRESS;Initial
Catalog=RENTACAR;Persist Security Info=True; User ID=super; Password3456");


Mi cadena de conexion funciona porque si intento conectarme directamente (he
hecho otro proyecto) me devuelve los datos a la perfección.
Mi problema esta a la hora de acceder a los datos desde un servicio web,que
me aparece el dichoso error.

Os recuerdo que estoy en windows vista.
Otra cosa es que tengo instalado el norton como antivirus, por si eso
pudiera influir.

Muchas gracias por vuestro tiempo espero vuestras ayuda.

Por el error que me indicas ("no esta asociado a una conexion de de sql
server de confianza"), me da la impresión de que el usuario lo has dado de
alta en la tabla de usuarios de Sql Server, en lugar de decirle a Sql Server
que tome el usuario de Windows. Si estás usando el Sql Server Management
Studio Express, la diferencia es que en la ventana de "New Login" en el
primer caso marcas la opción de "SQL Server authentication" (y te pregunta
usuario y password), mientras que en el segundo marcas la de "Windows
Authentication" y tiene un botón "buscar" que te lista los usuarios del
sistema para que selecciones uno.
Para usar el "identity impersonate" junto con la cadena de conexión
configurada para usar una conexión de confianza, necesitas que el usuario de
Sql Server esté en el modo "Windows Authentication".
Si quisieras usar el otro modo ("SQL Server authentication"), haría falta
activar el Modo Mixto en Sql Server y poner el usuario y password en la
cadena de conexión (y olvidarte del identity impersonate que en este caso no
afectaria a la conexion con Sql Server).


Respuesta Responder a este mensaje
#5 Alberto Poblacion
11/10/2007 - 09:37 | Informe spam
"Alfonso" wrote in message
news:
Sigo con el erro de:

System.Data.SqlClient.SqlException: Error de inicio de sesión del usuario
'NT AUTHORITY\ANONYMOUS LOGON'.
[...]
Cadena de conexion:

return new System.Data.SqlClient.SqlConnection(
"Data Source=HP1\\SQLEXPRESS;Initial
Catalog=RENTACAR;Persist Security Info=True; User ID=super;
Password3456");

Mi cadena de conexion funciona [...]



No puede ser. El programa tiene que estar usando alguna otra cadena de
conexión en otra parte. Esta de aqui, que tiene UserId y Password, no puede
dar el error de 'NT AUTHORITY\ANONYMOUS LOGON'. Por algún otro sitio del
programa tienes que estar usando otra cadena que tenga puesta la
autenticación integrada. Tendrás que seguir la traza de pila del error y ver
qué es lo que está haciendo el programa en ese punto y de dónde está sacando
la cadena de conexión que falla.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida