** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - Proteger código
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoProteger código

 Responder Responder Página  12>
Autor
Mensaje
A310773 Ver desplegable
Nuevo
Nuevo


Unido: 16/Septiembre/2015
Localización: Madrid
Estado: Sin conexión
Puntos: 13
Enlace directo a este mensaje Tema: Proteger código
    Enviado: 16/Septiembre/2015 a las 07:59
Hola buenas,
Soy completamente nuevo en access,asi que perdonad si la pregunta es obvia.

Deseo hacer una bbdd con código vba. La base de datos será entregada a bastantes usuarios. No deseo que al abrirla puedan acceder al código VB.

Hay alguna forma de hacer esto desde el propio access? Quizás convirtiéndola a exe? (se que se puede pero no tengo ni idea de los inconvenientes)

Gracias por la ayuda, no he encontrado nada por Internet.
Arriba
jmmiralles Ver desplegable
Colaborador
Colaborador
Avatar

Unido: 29/Noviembre/2008
Localización: Albacete-España
Estado: Sin conexión
Puntos: 569
Enlace directo a este mensaje Enviado: 16/Septiembre/2015 a las 08:33
Buenos días a todos,
si lo que quieres es hacer una ejecutable, dependiendo del office que tengas, tendrías que hacer lo siguiente:

  • Hasta office 2003 crear archivo MDE
  • Superior office 2003 crea archivo ACCDE.
  • Para 2013 crea archivo ACCDR

Esto realmente no son archivos tipo exe, son archivo compilados, pero es lo máximo que se podrá hacer, por ahora.


     Ojo con esto, muy importante,

 con este tipo de archivos no podrás modificar ni manipular nada, con lo cual se recomienda hacer una copia antes de convertirla y guardarla a buen recaudo; así cuando tengas que hacer cualquier modificación de código, diseño de formulario etc,  lo harías desde esta copia.

El proceso es irreversible, pero te aseguras que nadie pueda manipular código, ni diseño de los objetos.

La otra opción que tienes es proteger el código con una contraseña.

Espero te sirva.


Editado por jmmiralles - 16/Septiembre/2015 a las 08:38
Saludos desde un lugar de la Mancha

Visita Mi Web

http://jmmirallesortega.wix.com/accessyvba<
Arriba
A310773 Ver desplegable
Nuevo
Nuevo


Unido: 16/Septiembre/2015
Localización: Madrid
Estado: Sin conexión
Puntos: 13
Enlace directo a este mensaje Enviado: 16/Septiembre/2015 a las 10:01
OK. Muchisimas Gracias.
Si, pasarla a exe me serviría. La intención es que nadie toque absolut4nads, salvo registros.

Me fío más de eso que un password en access que hay mil programas que lo revientan.

Es office 2010. Creo que desde acceso no se puede pasar directamente a ese, verdad? Si es así, conoces algún programa fiable que lo pase?

Gracias de nuevo.
Arriba
E. Feijoo Ver desplegable
Moderador
Moderador


Unido: 16/Abril/2004
Localización: España
Estado: Sin conexión
Puntos: 19948
Enlace directo a este mensaje Enviado: 16/Septiembre/2015 a las 12:11
En Access NO EXISTEN ejecutables, intenta entender los conceptos básicos para evitar errores de interpretación que solo derivan en problemas.

La actual encriptación de las bases de datos, abandono el arcaico método utilizado hasta la versión 2003 (tambien sus inseguridades con los grupos de trabajo) y en cuanto a las copias del código .... lo primero es que tiene que ser original (proteger lo que ha sido copiado, será solo para evitar que se descubra el plagio), que es diferente a proteger la metodología utilizada (que es independiente del método).

Programas que 'revierten el código' los hay para todo, solo tiene que 'merecer la pena' el beneficio obtenido, solo se protege ante usuarios de igual o inferior dominio sobre el tema a proteger.

Lo mejor de las compilaciones esta en que no se pueden modificar y que el programa (en líneas generales) acostumbra a duplicar la velocidad, ya que no tiene que verificar de forma previa a la ejecución (por eso tiene que funcionar muy bien o será cohete sin frenos)
Arriba
A310773 Ver desplegable
Nuevo
Nuevo


Unido: 16/Septiembre/2015
Localización: Madrid
Estado: Sin conexión
Puntos: 13
Enlace directo a este mensaje Enviado: 16/Septiembre/2015 a las 15:52
Aquí no hay plagio. . A mi me pagan por hacer unos cálculos complejos sobre unos valores de campos de la Bbdd y el resultado meterlo en otro campo. Entender esos cálculos es complicado y laborioso, pero comprenderás que si todo el mundo puede copiar y pegar el código, pues adiós negocio. De ahí mi preocupación.

Tu, como profesional, que harías? Proteger el módulo desde access o pasarlo a exe? Es importante vuestra opinión para mi, que sois los que sabéis.
Arriba
E. Feijoo Ver desplegable
Moderador
Moderador


Unido: 16/Abril/2004
Localización: España
Estado: Sin conexión
Puntos: 19948
Enlace directo a este mensaje Enviado: 16/Septiembre/2015 a las 19:10
Partes de un concepto erróneo los EXE NO EXISTEN EN ACCESS.

Para 'funcionar' Access necesita Access, sea en una versión completa (que permite la creación de proyectos) o con un RUNTIME que solo sirve para 'correr' (ejecutar) la aplicación, insisto una vez mas y por favor que quede aquí claro y diáfano: LOS EJECUTABLES (tipo .Exe) NO EXISTEN EN ACCESS, lo que hay son aplicaciones compiladas y cerradas que no son 'editables' (y esto lo digo con reservas).

Si conviertes tu aplicación en MDE o las variantes modernas (accde) nadie podrá acceder al contenido de formularios, informes, macros o VBA, solo a consultas y tablas si no se las protege (y dado que los datos son externos no veo motivo para protegerlos mas allá de la protección que les aplique su dueño), en fin, los datos 'son del cliente' y con ellos que haga lo que le plazca.

Si los cálculos se generan mediante subrutinas en VBA o con Macros y se compila y guarda la aplicación en el formato correcto (alternativas que trae Access por defecto, no se precisa nada externo), una vez generado el clásico 'mde/accde' en función de la versión que se trabaje, ni el autor podrá acceder 'a sus tripas' (por ello es tan importante conservar la aplicación original).

Lee, infórmate (la tecla F1 es una ayuda inestimable) y después decide tu el camino a seguir, lo que se puede y no se puede alias los 'consejos de los sabios' ya los has ojeado (que no leído y entendido a tenor de tus respuestas).
Arriba
javier.mil Ver desplegable
Colaborador
Colaborador
Avatar

Unido: 10/Agosto/2005
Localización: España
Estado: Sin conexión
Puntos: 4399
Enlace directo a este mensaje Enviado: 16/Septiembre/2015 a las 20:52
No has dicho con que versión trabajas en Access y la verdad es que cambia bastante a nivel de seguridad (access 2013 es bastante mejor que las anteriores),...... pero bueno, aparte de los ya explicado solo decir que tienes una herramienta mas,........  es  la opción de proteger tu código VBA con contraseña (mejor si el es largo). Aunque existen infinidad de programas revienta passwords  de protección del código VBA la verdad es que No encontrado ninguno que lo haya conseguido reventar el pawword VBA de Access. ( si para Excel y Word pero No para Access) Ojo No digo No exista solo que No lo he encontrado.

También tienes la opción de ofuscar el código VBA , hay programas de ofuscamiento., al margen de tener tu código en formato MDE o ACCDE que seria la mejor de las opciones

Finalmente el formato ACCDR No te va proteger de nada asi que cuidado si lo pensabas hacer.

Saludos



Arriba
jmmiralles Ver desplegable
Colaborador
Colaborador
Avatar

Unido: 29/Noviembre/2008
Localización: Albacete-España
Estado: Sin conexión
Puntos: 569
Enlace directo a este mensaje Enviado: 16/Septiembre/2015 a las 21:56
Publicado originalmente por javier.mil javier.mil escribió:

No has dicho con que versión trabajas en Access y la verdad es que cambia bastante a nivel de seguridad (access 2013 es bastante mejor que las anteriores)
............................
............................

Finalmente el formato ACCDR No te va proteger de nada asi que cuidado si lo pensabas hacer.


Hola Javier,
yo utilizo access 2010 y desconozco 2013 pero estas dos expresiones me han llamado la atención, ¿me lo podrías explicar, por favor?, ¿no se contradicen o te refieres a cosas diferentes?

Te lo pregunto, a ti o cualquiera que me lo pueda explicar, desde más sincera ingnorancia.


Gracias anticipadamente
Saludos desde un lugar de la Mancha

Visita Mi Web

http://jmmirallesortega.wix.com/accessyvba<
Arriba
javier.mil Ver desplegable
Colaborador
Colaborador
Avatar

Unido: 10/Agosto/2005
Localización: España
Estado: Sin conexión
Puntos: 4399
Enlace directo a este mensaje Enviado: 16/Septiembre/2015 a las 22:26
jmmiralles: Lo mejor si tienes dudas seria que abrieses un hilo nuevo....
Pero resumidamente te explico:

Los ficheros ACCDR son solo ficheros ACCDB que simulan el comportamiento como si estuviese corriendo el Runtime de Access para ver su funcionamiento nada mas. No protegen nada. A menos que lo hayas primeramente convertido a ACCDE y luego renombrado a ACCDR

En cuanto a los MDE también son vulnerables pero partir de Access 2007 el nivel de protección de código interno , de encriptacion de password de entrada , de la desaparecieron los permisos de usuarios y grupos de trabajo que en las versiones anteriores a Access 2007 había, pues la seguridad general del programa ha aumentado considerablemente en todos los aspectos. Ahora No es tan fácil poder desproteger las tripas del código ACCDE.

Saludos


.


Editado por javier.mil - 16/Septiembre/2015 a las 22:40
Arriba
A310773 Ver desplegable
Nuevo
Nuevo


Unido: 16/Septiembre/2015
Localización: Madrid
Estado: Sin conexión
Puntos: 13
Enlace directo a este mensaje Enviado: 16/Septiembre/2015 a las 22:56
Publicado originalmente por E. Feijoo E. Feijoo escribió:

Partes de un concepto erróneo los EXE NO EXISTEN EN ACCESS.

Para 'funcionar' Access necesita Access, sea en una versión completa (que permite la creación de proyectos) o con un RUNTIME que solo sirve para 'correr' (ejecutar) la aplicación, insisto una vez mas y por favor que quede aquí claro y diáfano: LOS EJECUTABLES (tipo .Exe) NO EXISTEN EN ACCESS, lo que hay son aplicaciones compiladas y cerradas que no son 'editables' (y esto lo digo con reservas).

Si conviertes tu aplicación en MDE o las variantes modernas (accde) nadie podrá acceder al contenido de formularios, informes, macros o VBA, solo a consultas y tablas si no se las protege (y dado que los datos son externos no veo motivo para protegerlos mas allá de la protección que les aplique su dueño), en fin, los datos 'son del cliente' y con ellos que haga lo que le plazca.

Si los cálculos se generan mediante subrutinas en VBA o con Macros y se compila y guarda la aplicación en el formato correcto (alternativas que trae Access por defecto, no se precisa nada externo), una vez generado el clásico 'mde/accde' en función de la versión que se trabaje, ni el autor podrá acceder 'a sus tripas' (por ello es tan importante conservar la aplicación original).

Lee, infórmate (la tecla F1 es una ayuda inestimable) y después decide tu el camino a seguir, lo que se puede y no se puede alias los 'consejos de los sabios' ya los has ojeado (que no leído y entendido a tenor de tus respuestas).


Muchas gracias por las aclaraciones. Voy entendiendo algo más, pero yo lo que decía en un principio, es crear un "EXE", si un "EXE", se puede, utilizando aplicaciones profesionales de terceros, que no necesitan Access para correr, de ahí mi insistencia en repetir lo del exe.

Si esto no lo conoces, y yo si, que soy profano en la materia, es que a lo mejor pasas demasiado tiempo dándole al F1, y esto no lo mencionan. Smile.

Hablo de esto:

Features

  • Convert your Access database into a simple EXE file
  • Apply a security layer in your Access application
  • Compatible with MDE,MDB,ACCDE and ACCDB MS Access files
  • Custom Icon image
  • Custom bitmap image (Replace MS Access startup logo)
  • Custom run command and command line parameters
  • Custom exe file version information
  • MDE changes are always updated inside EXE
  • Disable MS Access security alerts via Windows Registry
  • Generate a fully customized EXE binary file






Editado por A310773 - 16/Septiembre/2015 a las 23:23
Arriba
RRoca Ver desplegable
Colaborador
Colaborador


Unido: 02/Enero/2006
Localización: España
Estado: Sin conexión
Puntos: 4817
Enlace directo a este mensaje Enviado: 16/Septiembre/2015 a las 23:04
Hola, para proteger el código, tal y como te ha dicho Javier es ponerle una clave a este código y si quieres mas seguridad que la clave sean números y letras mayúsculas y minuscyulas. Otra cosa es lo que también te han dicho convertirlo en ACCDE para su funcionamiento mas rápido y a la vez protección de los distintos objetos. Saludos.
Romain Rolland (1866-1944) escritor y ensayista frances dijo: Crear, es matar la muerte. (para mi, filosoficamente penetrante)
Arriba
E. Feijoo Ver desplegable
Moderador
Moderador


Unido: 16/Abril/2004
Localización: España
Estado: Sin conexión
Puntos: 19948
Enlace directo a este mensaje Enviado: 17/Septiembre/2015 a las 00:07
Tenemos diferentes conceptos de lo que es y de lo que se puede hacer.

Insisto en que Access NO CREA EXE. ahora bien, puedo utilizar un entorno y hacerle hablar en chino o enchufarlo por USB al control de temperatura de una cafetera, pero eso YA NO ES ACCESS, aunque en su interior utilice Access.
Arriba
A310773 Ver desplegable
Nuevo
Nuevo


Unido: 16/Septiembre/2015
Localización: Madrid
Estado: Sin conexión
Puntos: 13
Enlace directo a este mensaje Enviado: 17/Septiembre/2015 a las 00:22
OK.
Entendido. Pero al final, a lo mejor hay más gente que esta opción le interesa, por el motivo que sea,  aunque no sea access puro y duro, eso lo entiendo. En cuanto a proteger algo (que no los datos, sino el código propiode cada uno) quizás sea una opción interesante, menos conocida..

Ahora gracias a vosotros veo que tampoco es necesario esto, ..pero también puede ser elegante dar un exe independiente al cliente y que se olvide de access, algunas soluciones  son completamente independientes.
Eso ya que cada cual decida.

Muchas gracias por vuestro tiempo.
Un saludo.
Arriba
CoMir Ver desplegable
Nuevo
Nuevo
Avatar

Unido: 11/Enero/2006
Estado: Sin conexión
Puntos: 2
Enlace directo a este mensaje Enviado: 17/Septiembre/2015 a las 19:15
Si esa aplicación de terceros a la que te refiere es la que yo creo, mira lo que pone en el apartado FAQ:

"Does the target computer need Microsoft Access pre-installed ?
Microsoft Access or Microsoft Access Runtime instead. At least one of them is essential"

Sospecho que el exe resultante es un lanzador, no un ejecutable "de verdad".

De todas maneras no he podido probarlo, aunque soy curioso por naturaleza, porque me lo impide el antivirus y no pienso averiguar por qué.
Arriba
A310773 Ver desplegable
Nuevo
Nuevo


Unido: 16/Septiembre/2015
Localización: Madrid
Estado: Sin conexión
Puntos: 13
Enlace directo a este mensaje Enviado: 17/Septiembre/2015 a las 20:08
Pues hay varias y son de pago. Si tu no has pagado por ella, hazle caso al antivirus.;).

Tengo entendido que las malas necesitan access. Las buenas no se venden por Internet, y no necesitan access. Cuesta unos 1200 euros.
Arriba
 Responder Responder Página  12>
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable