Sql server 2000 en internet

Te quería preguntar una cosilla, que probablemente sea una tontería pero llevo un par de horas peleándome.
El problema que tengo es que necesito que SQL Server 2000 acepte peticiones de usuarios anónimos, a través de internet, pero no se como hacerlo y no he encontrado en internet algún manual.
Esto quiero que sea para acceder a la base de datos a través de una web escrita con ASP y VBScript, aunque sospecho que el problema puede estar en los permisos de usuarios.

1 Respuesta

Respuesta
1
Esto lo resuelves creando un usuario genérico, que sea el que realiza todos los procesos de trabajo en la red, con esto eliminas cuantas veces vas a ver al usuario anonymus.
Creo que no me he explicado bien. Vamos a ver, yo estoy desarrollando una página web, con ASP y VBScript, para la base de datos uso el SQLServer. Bien, como intermediario entre la Web y la base de datos voy a usar el ODBC de windows, puesto que de ese modo no tengo que cambiar nada en la página si modifico, por ejemplo, el nombre de la base de datos, solo el "enlace" del ODBC. Así e estado trabajando cuando las bases de datos las hacía en Access. Eso creo que esta bien. Mi problema esta con el usuario, estoy seguro.
Al usuario le he dado permisos para ejecutar el Select en todas las tablas que voy a usar.
Muchas gracias, pero me he liado un poco, je je
El usuario genérico donde lo tengo que crear, ¿en windows o en el propio sqlserver?
Y si es en sqlserver, como lo hago exactamente, porque he creado uno, sin contraseña con permisos para acceder a la base de datos que hace falta, pero me sigue dando el mismo error
En sql server, este usuario tiene que accesar con autenticación de sql server, con esos datos en tu página de internet, en los lugares donde se conecta, le pasas ese usuario y listo.
Ahora, también es conveniente que me indiques en forma precisa que es el error que te envía.
Este es el error completo:
No se puede mostrar la página
Hay un problema con la página que está intentando ver y no se puede mostrar.
--------------------------------------------------------------------------------
Please try the following:
Haga clic en el botón Actualizar o inténtelo de nuevo más tarde.
Abra la página principal de localhost y, a continuación, busque vínculos a la información que desea.
HTTP 500.100. Error interno del servidor: error de ASP
Servicios de Internet Information Server
--------------------------------------------------------------------------------
Información técnica (para personal de soporte técnico)
Tipo de error:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E4D)
[Microsoft][ODBC SQL Server Driver][SQL Server]Error de inicio de sesión del usuario 'TRAKATA\IUSR_TRAKATA'.
/Agricentro/productos.asp, línea 26
Tipo de explorador:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)
Página:
GET /Agricentro/productos.asp
Hora:
Viernes, 02 de septiembre de 2005, 18:12:22
Más información:
Soporte técnico de Microsoft
Mal, el usuario y servidor están mal, el servidor debe de ser una dirección ip que reconozca la conexión que realizas, ya que estas en la internet no en una red local, el usuario si es un genérico, adelante.
Ahora mismo estoy trabajando en mi equipo, porque trabajo en mi casa, pero una vez terminada si la colgare en un servidor en condiciones, así que en principio podría usar la ip de rollback (127.0.0.1), de todos modos estoy usando odbc, así que con el DSN, usuario y contraseña tendría suficiente, ¿no es así?
Yo sigo pensando en que el usuario que he creado no esta bien configurado, y no se como hacerlo.
----
Muchísimas gracias, Indito
No creo que sea tan fácil, ya que nunca vas a tener DSN en los equipos de las personas que accesan internet, tiene que ser la ip.
El usuario tendrías que indicarme que permisos tiene para saber si esta bien creado.
¿Y en tu DSN has conseguido que el usuario se conecte?
Hago una prueba de conexión, cuando doy de alta la base de datos en la DSN y me sale que todo ok, es a la hora de acceder desde la web
¿Cuál es el código que utilizas para conectarte desde la página?
Y te recuerdo, no es lo mismo una página de intranet que una de WEB.
oConn.connectionstring = "DSN=Base_de_datos_de_ODBC;User=usuario;Password=Contraseña"
De pura casualidad en el servidor tienes instalado el MDAC_TYP.EXE que se utiliza para accesar a las bases de datos.
Puedes colocar todo el segmento de código
Creo que si, pero para estar seguros, ¿cómo lo miro?
Por casualidad se instala con algún Visual Studio, ¿o con el Service Pack 1?
Si claro:
"set oConn = server.createobject ("ADODB.Connection")
set oRs = server.createobject("ADODB.Recordset")
oConn.connectionstring = "DSN=Base_de_datos;User=usuario;Password=Contraseña"
TxtSql="Consulta"
oConn.open 'Aqui me dice el navegador que esta el fallo
oRs.open TxtSql, oConn"
Aunque me da el fallo cuando intento abrir la conexión he puesto hasta que abro el recordset, porque creo que una vez hecho esto, es igual que si trabajara con Access a través de DSN
jejeje, creo que si, he creado un usuario con los siguientes permisos: Select, Update, Insert y Delete. Todos ellos para las tablas que he creado con la base de datos.
Por si es también esto, quiero decirte que este usuario lo he creado en la base de datos y no en el servidor, ¿eso es correcto?
--
Muchísimas gracias, Indito
¿Seguro qué tienes los permisos de acceso desde el servidor donde se ejecuta tu código hacia el servidor de sql server?
Bueno, pues entonces intentare buscarme la vida por otro lado, a ver si doy con la tecla, que seguro que es una tontería, je je.
Muchísimas gracias de todos modos por prestarme tu tiempo, Indigo
Pues entonces, no veo el problema. Ya que las intranets y extranets que tengo así las he diseñado y sin problemas.
La página va a estar publicada en internet, pero consta de dos partes, una de ellas se ejecutara en el propio servidor, concretamente la que accede a la base de datos (ASP) y al cliente le llegara unicamente código HTML, que sera el resultado de las operaciones del servidor. ASP funciona de esta manera, o eso es lo que me han dicho.
Por eso estoy tan "emperrao" con el tema del ODBC, je je, se que con Access funciona este método de trabajo (dando de alta la base de datos en el ODBC del servidor y accediendo a través de internet).
La version del MDAC que tengo instalada es la 2.80
Utiliza en regedit y busca mdac, con esto ves que versión tienes, pero solo me falta saber en que tipo de ambiente estas desarrollando la página, en un equipo local o en un servidor.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas