SQLSTATE = 42000 (Error de inicio de sesión del usuario 'sa'. Motivo: no está asociado a una conexión de SQL Server de confianza)

2,119 views
Skip to first unread message

V. Renzo De Sotomayor B.

unread,
Jul 19, 2011, 5:33:21 PM7/19/11
to powerbui...@googlegroups.com
Buenas tardes.
 
Tengo este problema al conectarme de la PCDesarrollo al Server (Solo cuando lo corro en web).
 
Estoy desarrollando en PB12 Clasic con SQL2008 en PCDesarrollo. Cuando estoy en desarrollo todo va ok...
 
Al conectarme al Server para conexion de prueba(esta con SQL2000) me da el siguiente error (Solo cuando lo corro en web).
 
SQLSTATE = 42000
Microsoft OLE DB Provider for SQL Server
Error de inicio de sesión del usuario 'sa'. Motivo: no está asociado a una conexión de SQL Server de confianza
 
Esta es mi cadena de conexión:
 
SQLCA.DBMS = "OLE DB"
SQLCA.LogId = "sa"
SQLCA.LogPass = ""
SQLCA.AutoCommit = False
SQLCA.DBParm = "PROVIDER='SQLOLEDB',DATASOURCE='192.168.1.10',PROVIDERSTRING='database=compras'"
Si corro la aplicacion con Winform me conecta y no tengo ningun problema.
 
Alguna observación saludos.

--
V. Renzo De Sotomayor B.
T: (051)986578565
 
 

Carlos Lopez

unread,
Jul 19, 2011, 9:40:19 PM7/19/11
to powerbui...@googlegroups.com
Hola,
Tenes que averiguar compatibilidad de la conexion de una aplicacion WEB con SQL Server 2000. (No estoy seguro, pero si casi seguro que es un problema de compatibilidad con la version 2000) lo mas probable es que necesites de alguna libreria extra..
No pude averiguar pero si podes verifica en la pagina de microsoft
SALUDOS

---------------------
Carlos Lopez

V. Renzo De Sotomayor B.

unread,
Jul 20, 2011, 9:40:11 AM7/20/11
to powerbui...@googlegroups.com
Gracias Carlos.
 
Olvide comentar que la maquina de PCDesarrollo esta con Win7-Sql2008R2 y el Server win2k3Server-SQL2000
 
Justamente siguiendo tu consejo vi lo siguiente.
 
Usuarios no autorizados a conectarse a SQL Server. Seguridad.
 
Un problema bastante común es intentar conectarse con SQL Server y recibir un mensaje de error indicando que algo ha fallado. Las causas pueden ser múltiples, entre ellas las siguientes:
 
  • Se está intentando la conexión con SQL Server mediante autentificación estándar cuando ésta está deshabilitada.
  • El usuario no tiene permiso para conectarse a SQL Server
  • El nombre del servidor se ha especificado de forma incorrecta
  • El servicio de SQL Server está parado
  • Hay un problema de conexión en la red.
  • Se está usando un protocolo en el cliente que está deshabilitado en el servidor
Usar autentificación standard cuando está deshabilitada.
Al instalar SQL Server 2000 en cualquiera de sus ediciones incluida MSDE, de forma predeterminada, sólo está disponible la autentificación integrada, Windows o de confianza, estando deshabilitada la autentificación SQL Server o estándar. De esta manera cualquier intento de conexión usando autentificación estándar fallará. Por ejemplo si intentamos conectarnos usando el usuario sa recibiríamos el siguiente mensaje de error:
Error de inicio de sesión del usuario 'sa'. Motivo: no está asociado a una conexión de SQL Server de confianza
Para resolver este problema tenemos dos alternativas, o usar autentificación integrada o habilitar la autentificación mixta (integrada más estándar).
Podemos habilitar la autentificación estándar de dos formas diferentes: mediante el Administrador Corporativo o escribiendo un valor en el registro de Windows. Lo más recomendable es usar el Administrador Corporativo y estos serían los pasos a seguir:
Pulsar con el botón derecho del ratón en el servidor
Elegir propiedades
En la ficha "seguridad" elegir "SQL Server y Windows"
Reiniciar el servicio de SQL Server
Si no tenemos disponible el Administrador Corporativo podemos cambiar el valor LoginMode en el registro de Windows para que tenga un valor de 2 y reiniciar el servicio de SQL Server. La clave donde se encuentra este valor depende de la instancia.
Para la instancia predeterminada la clave es:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer
Y para una instancia con nombre:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\NombreInstancia\MSSQLServer
 
 
El usuario no tiene permiso para conectarse con SQL Server.
Al instalar SQL Server 2000 sólo hay dos inicios de sesión, uno estándar: sa y otro windows: BUILTIN\Administradores. Si además, como hemos visto antes, la autentificación estándar está deshabilitada, sólo tenemos BUILTIN\Administradores que son los administradores locales de la máquina donde se ejecuta SQL Server. De tal manera que ningún otro usuario podrá conectarse con SQL Server. Para que otro usuario pudidiera conectarse con SQL Server habría por tanto que añadir el correspondiente inicio de sesión.
Un problema común en este sentido, es la conexión desde una página ASP o ASP.NET utilizando autentificación integrada cuando en el IIS tenemos habilitado el acceso anónimo. En este caso el usuario que intenta iniciar sesión en SQL Server es IUSR_NombreMáquina o IWAM_NombreMáquina o ASPNET. La solución a este problema es añadir el inicio de sesión correspondiente a estos usuarios de Windows o habilitar y usar la autentificación estándar.
 
Nombre de servidor incorrecto, servicio parado, protocolo deshabilitado
Cuando ponemos un nombre de servidor incorrecto o el servicio de SQL Server está parado o el protocolo que estamos usando está deshabilitado en el servidor, recibiremos un mensaje de error como este:
No existe el Servidor SQL Server o se ha denegado el acceso al mismo
Tenemos que tener en cuenta que para una instancia predeterminada sólo es necesario poner el nombre de la máquina donde se ejecuta SQL Server, pero para las instancias con nombre es necesario especificarlo de la siguiente manera: NombreServidor\NombreInstancia.
Otra cuestión es que no se pueda resolver el nombre del servidor como por ejemplo cuando accedemos a través de Internet. En este caso podríamos especificar la dirección IP del servidor en lugar de su nombre.
Deberíamos comprobar también que no esté parado el servicio, esto es fácilmente comprobable con el administrador de servicios de SQL Server.
Los protocolos pueden estar habilitados o deshabilitados en el servidor. Para comprobar y modificar esto, disponemos de la herramienta de red del servidor.

--
Has recibido este mensaje porque estás suscrito al grupo "PowerBuilder - Ica" de Grupos de Google.
Para publicar una entrada en este grupo, envía un correo electrónico a powerbui...@googlegroups.com.
Para anular tu suscripción a este grupo, envía un correo electrónico a powerbuilder-i...@googlegroups.com
Para tener acceso a más opciones, visita el grupo en http://groups.google.com/group/powerbuilder-ica?hl=es.
 
 
 
--
 
V. Renzo De Sotomayor B.
T: (051)986578565
 
 
 

Micaela Caceres

unread,
Jul 20, 2011, 11:42:49 AM7/20/11
to powerbui...@googlegroups.com
No tienes password, dale un password y prueba

V. Renzo De Sotomayor B.

unread,
Jul 20, 2011, 3:48:00 PM7/20/11
to powerbui...@googlegroups.com
Por lo que estoy informandome es algo con la validacion del usurio del IIS (IIS_USR en el .Net) que no es validado por el SQL2000....


 
El 20 de julio de 2011 10:42, Micaela Caceres <caceres...@gmail.com> escribió:
No tienes password, dale un password y prueba

--
Has recibido este mensaje porque estás suscrito al grupo "PowerBuilder - Ica" de Grupos de Google.
Para publicar una entrada en este grupo, envía un correo electrónico a powerbui...@googlegroups.com.
Para anular tu suscripción a este grupo, envía un correo electrónico a powerbuilder-i...@googlegroups.com
Para tener acceso a más opciones, visita el grupo en http://groups.google.com/group/powerbuilder-ica?hl=es.
Reply all
Reply to author
Forward
0 new messages