Saludos
MArcos Mellibovsky
"fff" <fre...@menta.net> escribió en el mensaje de noticias
news:OdAxO9R...@TK2MSFTNGP06.phx.gbl...
Gracias.
"Marcos Mellibovsky" <mel...@arsoft.com.ar> escribió en el mensaje
news:4E51ADB5-A710-40C9...@microsoft.com...
Crear la base de datos de servicios de la aplicación para SQL Server
http://msdn2.microsoft.com/es-es/library/x28wfk74.aspx
Herramienta Registro de SQL Server para ASP.NET (Aspnet_regsql.exe)
http://msdn2.microsoft.com/es-es/library/ms229862.aspx
Te copio de unos post anteriores de la misma tematica para ayudar o
mejor dicho orientarte como "registrar" las funcionalidades de ASP.NET
2.0 sobre una SQLServer.
Espero que te sirva para orientar, o ayudar un poco mas
______________________
Jose A. Fernandez
blog: http://geeks.ms/blogs/fernandezja
-----------------------------------------------
POST ANTERIOR
-----------------------------------------------
Debes tener un SQL Server para conectarte con para registrarlo y usar
las funcionalidades de login, etc...
Por ejemplo para el servidor llamando SERVIDORREMOTO con el usuario
administrador "sa" con contraseña "clave" en la base de datos
"Ejemplo" (porque sino te crea una base aspnetdb o algo asi)
aspnet_regsql.exe -S SERVIDORREMOTO -U sa -P clave -d Ejemplo -A
mr
(fijate despues en las opciones -A)
Si no te gusta la linea de comandos puedes hacer asi
aspnet_regsql.exe -W
Para que sea interfaz winform con un wizard (que raro no?.. next,
nect, next)
Cuando registraas una DB para utilizar con las caracteristicas
avanzadas de asp.net 2.0 (membership, roles, profiles, etc) tienes que
registrarlo (o el asp.net lo realiza con vos)
Por ejemplo para el servidor llamando SERVIDORREMOTO con el usuario
administrador "sa" con contraseña "clave" en la base de datos
"Ejemplo" (porque sino te crea una base aspnetdb o algo asi)
aspnet_regsql.exe -S SERVIDORREMOTO -U sa -P clave -d Ejemplo -A
mr
(fijate despues en las opciones -A)
Si no te gusta la linea de comandos puedes hacer asi
aspnet_regsql.exe -W
Para que sea interfaz winform con un wizard (que raro no?.. next,
nect, next)
Eso es para registrar un servidor y utilizarlo, pero si ya lo tienes
solo hace falta
1) O crear todo de nuevo
2) Importar (tanto tablas, datos como SP)
Esto lo puedes tener en un SQL2000, MSDE, SQL2005 o SQL2005 Express
(no se si funciona en SQL Server 7, pero creeria que si)
Ahora bien.. todo muy lindo, esta todo en el SQL2005 en la Base de
Datos "Ejemplo" pero no funciona.. por queee??
Bueno ASP.NET provee una coleccion de Provider para cada una de sus
caracteristicas (membership, profiles, roles, etc), por eso sabe donde
ir a buscar tu base ASPNETDB... y sabe como se llama
Eso que esta configurado por defecto esta en el machine.config, por si
lo quieres ver aqui
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG
Bueno hay que indicarle nuestra web que ubique nuestra nuevo SERVER
con nuestra nueva BASE DE DATOS en el
Donde?
En el web.config....(donde sino?)
Seria algo asi
<membership defaultProvider="tuPropioMembershipProvider">
<providers>
<clear />
<add name="tuPropioMembershipProvider"
type="System.Web.Security.SqlMembershipProvider, System.Web,
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
connectionStringName="TUDBEJEMPLOConnectionString"
....
/>
</providers>
</membership>
Mira esta parte
<clear />
Indicas que borre la coleccion membership>>providers que esta cargada
(mediante machine.config)
Y luego todos los parametros requeridos
Para que no te tome el proveedor por defecto, pero igualmente puedes
especificar cual es con
<membership defaultProvider="tuPropioMembershipProvider">
SINTESIS:
Luego de tanto escribir y conociendo que estamos cerca (en la misma
ciudad) espero el cajon de cerveza je!
- Pasar una DB de produccion:
Si no queres utilizar la db que arma el asp.net y teniendo alli
dentro tus tablas de core de tu aplicacion, deberas ralizar lo que
detalle msa arriba.
- Si cambias la DB y el servidor tendras que sobreescribir o mejor
dicho agregar un proveedor de membresia, de roles, de perfiles
- Mas abajo del post (luego de la firma) coloco un ejemplo de
agregar proveedores.
NOTA:
Creo que hay una manera de indicarle directamente TODO en uno SIN
NECESIDAD de realizar un proveedor por cada funcionalidad, NO ME
ACUERDO como era y no lo tenia a mano.. asi que si obtienes por ahi
como era POSTEALO
Mira estos enlaces
------------------------------------------
Crear la base de datos de servicios de la aplicación para SQL Server
http://msdn2.microsoft.com/es-es/library/x28wfk74.aspx
Herramienta Registro de SQL Server para ASP.NET (Aspnet_regsql.exe)
http://msdn2.microsoft.com/es-es/library/ms229862.aspx
Elemento membership (Esquema de configuración de ASP.NET)
Configura los parámetros para la administración y autenticación de
cuentas de usuario utilizando la suscripción ASP.NET.
http://msdn2.microsoft.com/es-es/library/1b9hw62f(VS.80).aspx
______________________
Jose A. Fernandez
blog: http://geeks.ms/blogs/fernandezja
----------------------------------------------------------------------
ESTO VA EN EL WEBCONFIG (va como hijos de <system.web>)
Mira que hacen referencia a un
connectionStringName="TUDBEJEMPLOConnectionString"
Que es el ConnectionString que esta mas arriba en el web.config, que
en ese string
de conexion estas indicandole la db que estas utilizando
Nota: Aqui hay varios parametros mas que puedes mirar
----------------------------------------------------------------------
<membership defaultProvider="TUDBEJEMPLOMembershipProvider"
userIsOnlineTimeWindow="20">
<providers>
<clear/>
<add
name="TUDBEJEMPLOMembershipProvider"
type="System.Web.Security.SqlMembershipProvider, System.Web,
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
connectionStringName="TUDBEJEMPLOConnectionString"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
applicationName="/"
requiresUniqueEmail="true"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="5"
minRequiredPasswordLength="5"
minRequiredNonalphanumericCharacters="0"
passwordAttemptWindow="10"
passwordStrengthRegularExpression="" />
</providers>
</membership>
<profile>
<providers>
<clear/>
<add name="TUDBEJEMPLOProfileProvider"
connectionStringName="TUDBEJEMPLOConnectionString"
applicationName="/"
type="System.Web.Profile.SqlProfileProvider, System.Web,
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</providers>
</profile>
<roleManager defaultProvider="TUDBEJEMPLORoleProvider"
enabled="true"
cacheRolesInCookie="true"
cookieName=".ASPROLES"
cookieTimeout="30"
cookiePath="/"
cookieRequireSSL="false"
cookieSlidingExpiration="true"
cookieProtection="All">
<providers>
<clear/>
<add name="TUDBEJEMPLORoleProvider"
connectionStringName="TUDBEJEMPLOConnectionString"
applicationName="/"
type="System.Web.Security.SqlRoleProvider, System.Web,
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add
name="TUDBEJEMPLOWindowsTokenRoleProvider"
applicationName="/"
type="System.Web.Security.WindowsTokenRoleProvider, System.Web,
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</providers>
</roleManager>
On 2 dic, 17:58, "fff" <fre...@menta.net> wrote:
> muchas, gracias.
> Otra cuestión es, es necesario que aspnetdb sea una base de datos a parte??
> Esto lo digo, porque si es así, necesitaré contratar otra base de datos en
> el servidor externo.
>
> Gracias.
>
> "Marcos Mellibovsky" <mell...@arsoft.com.ar> escribió en el mensajenews:4E51ADB5-A710-40C9...@microsoft.com...
Excepción:
Error durante la ejecución del archivo SQL 'InstallMembership.sql'. El
número de error de SQL es 229 y el mensaje SqlException es: Se ha denegado
el permiso EXECUTE en el objeto 'sp_addrolemember', base de datos
'mssqlsystemresource', esquema 'sys'.
Se ha denegado el permiso EXECUTE en el objeto 'sp_addrolemember', base de
datos 'mssqlsystemresource', esquema 'sys'.
----------------------------------------
Detalles del error
----------------------------------------
SQL Server:
Base de datos: [qct672]
Se cargó el archivo SQL:
InstallMembership.sql
------------------------------------------------
Parece que no tengo permiso para crear alguna tabla de estas.
Que tengo que hacer? Contratar otra b.d. en el servidor remoto? de hecho, he
hecho lo mismo para una b.d. en local y me ha añadido todas las tablas bien.
Porque es tan complicado todo esto???
Gracias.
"Jose A. Fernandez" <ferna...@gmail.com> escribió en el mensaje
news:cba65eb0-7c8e-4edb...@a39g2000pre.googlegroups.com...
Prueba en tu maquina generando estas tablas en la DB original (porque
la idea es que tengas una sola DB) salvo que quieras contrar como
dices 2 DB una para los datos propios de tu negocio y otras para lo
que respecta a seguridad.. pero es algo no creo que te sirva de esa
manera.
Por eso deberias crear la DB en tu maquina de desarrollo probarla y
luego si subirla al servidor (tablas, procedimientos) de la misma
forma que has actualizado la db del servidor con tus tablas y
procedimientos
______________________
Jose A. Fernandez
blog: http://geeks.ms/blogs/fernandezja
On Dec 3, 9:28 am, "fff" <fre...@menta.net> wrote:
> He ejecutdo la herramienta aspnet_regsql para adjuntar las tablas de control
> de usuarios, funciones (b.d. aspnetdb) a la b.d. remota y me da este error:
> No se pudo realizar la instalación.
>
> Excepción:
> Error durante la ejecución del archivo SQL 'InstallMembership.sql'. El
> número de error de SQL es 229 y el mensaje SqlException es: Se ha denegado
> el permiso EXECUTE en el objeto 'sp_addrolemember', base de datos
> 'mssqlsystemresource', esquema 'sys'.
> Se ha denegado el permiso EXECUTE en el objeto 'sp_addrolemember', base de
> datos 'mssqlsystemresource', esquema 'sys'.
>
> ----------------------------------------
> Detalles del error
> ----------------------------------------
>
> SQL Server:
> Base de datos: [qct672]
> Se cargó el archivo SQL:
> InstallMembership.sql
> ------------------------------------------------
> Parece que no tengo permiso para crear alguna tabla de estas.
> Que tengo que hacer? Contratar otra b.d. en el servidor remoto? de hecho, he
> hecho lo mismo para una b.d. en local y me ha añadido todas las tablas bien.
> Porque es tan complicado todo esto???
> Gracias.
>
> "Jose A. Fernandez" <fernande...@gmail.com> escribió en el mensajenews:cba65eb0-7c8e-4edb...@a39g2000pre.googlegroups.com...
> Hola FFF
> ...me sumo al post ;)
> Como te comenta Marcos utilizando la herramienta aspnet_regsql
> Mira estos enlaces y tambien el post anterior que te lo copio mas
> adelante..
>
> Crear la base de datos de servicios de la aplicación para SQL Serverhttp://msdn2.microsoft.com/es-es/library/x28wfk74.aspx
>
> Herramienta Registro de SQL Server para ASP.NET (Aspnet_regsql.exe)http://msdn2.microsoft.com/es-es/library/ms229862.aspx
> Crear la base de datos de servicios de la aplicación para SQL Serverhttp://msdn2.microsoft.com/es-es/library/x28wfk74.aspx
>
> Herramienta Registro de SQL Server para ASP.NET (Aspnet_regsql.exe)http://msdn2.microsoft.com/es-es/library/ms229862.aspx
>
> Elemento membership (Esquema de configuración de ASP.NET)
> Configura los parámetros para la administración y autenticación de
> cuentas de usuario utilizando la suscripción ASP.NET.http://msdn2.microsoft.com/es-es/library/1b9hw62f(VS.80).aspx
> ...
>
> read more >>
El siguiente mensaje puede ayudar a diagnosticar el problema:
'System.Web.Security.SqlRoleProvider' requiere un esquema de base de datos
compatible con el esquema versión '1'. Sin embargo, el esquema de base de
datos actual no es compatible con esta versión. Quizá necesite instalar un
esquema compatible con aspnet_regsql.exe (disponible en el directorio de
instalación de Framework), o actualizar el proveedor con una versión más
nueva. en
System.Web.Administration.WebAdminPage.CallWebAdminHelperMethod(Boolean
isMembership, String methodName, Object[] parameters, Type[] paramTypes) en
ASP.security_users_adduser_aspx.PopulateCheckboxes() en
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\ASP.NETWebAdminFiles\Security\Users\addUser.aspx:línea
28 en ASP.security_users_adduser_aspx.Page_Load() en
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\ASP.NETWebAdminFiles\Security\Users\addUser.aspx:línea
22 en System.Web.Util.CalliHelper.ArglessFunctionCaller(IntPtr fp, Object o)
en System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender,
EventArgs e) en System.Web.UI.Control.OnLoad(EventArgs e) en
System.Web.UI.Control.LoadRecursive() en
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint,
Boolean includeStagesAfterAsyncPoint)
Sabes si se puede evitar este error, y poder gestionar los usuarios desde
las tablas del servidor remoto?
Muchisimas gracias por todo.
"Jose A. Fernandez" <ferna...@gmail.com> escribió en el mensaje
news:f9a12d94-977e-4024...@p69g2000hsa.googlegroups.com...
Bueno lo unico que nos quedo a todos (me incluso) es armarnos nuestros
propiedos sistemas de administracion sobre el nos provee ASP.NET 2.0.
Es decir tener en nuestros sitios web de administracion secciones para
manipular los usuarios, roles, asociar usuarios a roles... es decir
las tareas de seguridad ;)
Ademas cuando publicas el sitio la idea es que no tengas que acceder
al sitio de administracion que provee el asp.net sino que tu tengas
que armarlo.
Mi recomendacion es quemires este tutorial, lo descarges, pruebes y
luego modificas segun tus necesidades
Este es el articulo original
http://peterkellner.net/2006/01/09/microsoft-aspnet-20-memberrole-management-with-iis/
Que luego lo publico en MSDN
- Microsoft ASP.NET 2.0 Member/Role Management with IIS
- Part 1: Security and Configuration Overview
http://msdn2.microsoft.com/en-us/library/aa478958.aspx
- Part 2: Implementation
http://msdn2.microsoft.com/en-us/library/aa478947.aspx
- Part 3: AJAX Enhancements with Microsoft Atlas
http://msdn2.microsoft.com/en-us/library/aa479398.aspx
- Part 4: Adding Personalization with Profiles to the
ObjectDataSource
http://msdn2.microsoft.com/en-us/library/aa479399.aspx
Aqui esta encapsulando el comportamiento para que lo puedas utilizar
mediante algo conocido como objectDataSource.. o sea arma un Wrapper
de las funcionalidaddes de membresia, tu lo puedes extender.
Espero que te sirva de ayuda o guia
_______________________
Jose A. Fernandez
blog: http://geeks.ms/blogs/fernandezja
> "Jose A. Fernandez" <fernande...@gmail.com> escribió en el mensajenews:f9a12d94-977e-4024...@p69g2000hsa.googlegroups.com...
> ...
>
> leer más >>
Te cuento yo hace poco pase por eso y no es cosa del otro mundo.
yo tambien tengo Hosting de pago con Bases de datos SQL y en ASP 2.0.
entonces que hice para q mi aplicacion funcionara con el SQL.
1. Por el administrador de tu Hosting, en mi caso es el PLESK, adicione la
base de datos con su usuario respectivo y su passwd. respectivo.
2. Como en otras repsuestas, debes utilizar el archivo aspnet_regsql.exe que
se encuentra en:
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727 -> generlamente se
encuantra alli. en la version 2.0 de ASP. NET
3. escribi el siguiente comando para la conexion con la db y la creacion del
mismo:
ASPNET_REGSLQ -S "NOMBRE DE MI SERVISOR: EJ: MSSQL.MISERVIDOR.COM" -U "MI
NOMBRE DE USUARIO EJ: MYUSER" -P "MI PASSWORD EJ: MYPASSWD" -A "PARA Q ME
GENERE TODO LO NECESARIO EN LA DB" -D "EL NOMBRE DE LA BASE DE DATOS QUE
CREASTE POR Q NO HAY NECESIDAD DE CREAR ASPNETDB SI NO LA QUE QUIERAS LUEGO
EN EL WEB.CONFIG ESPECIFICAS EL NOMBRE"
Con este comando "omite la informacion entre comillas y adiciona la tuya",
me funciono perfectamente, luego en el web.config que coloco?
adicionas el connectionstring en su lugar
<add name="myConnectionString" connectionString="Data
Source=mssql.miservidor.com;User ID=myuser;Password=mypasswd"
y luego...
<membership defaultProvider="sqlmembershipprovider"
userIsOnlineTimeWindow="15" hashAlgorithmType="">
<providers>
<clear/>
<add name="sqlmembershipprovider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="myConnectionString"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
minRequiredPasswordLength="6"
minRequiredNonalphanumericCharacters="0"
passwordFormat="Hashed""/>
</providers>
</membership>
esto lo hago para especificar cual va hacer el manejador de mis membership o
usuarios y demas roles en mi aplicacion.
Espero te sirva de algo esta ayuda..
Estamos en contacto.
Cualquier sugerencia al respecto, favor notificarlos al correo electrónico
conta...@servisistemasara.com
Su información es muy valiosa para nuestro mejoramiento continuo
Alex Rodrigo Alfonso
Analista de Sistemas
Servisistemas ARA.
alex.a...@servisistemasara.com
Bogotá - Colombia
"fff" <fre...@menta.net> escribió en el mensaje
news:OdAxO9R...@TK2MSFTNGP06.phx.gbl...