You are on page 1of 3

Introducción a la seguridad en Access (MDB)

Corresponde a: Microsoft Office Access 2003


Imprimir

Mostrar todo
NOTA La información recogida en este tema sólo se aplicará a bases de datos de Microsoft Access
(.mdb).
Existen diferentes estrategias para controlar el nivel de acceso a la base de datos de Microsoft Access y
sus objetos. Estas estrategias se describen brevemente a continuación, ordenadas por nivel de seguridad.
Codificación y descodificación
Mostrar u ocultar objetos en la ventana Base de datos
Utilizar opciones de inicio
Mediante una contraseña
Seguridad por usuarios
Evitar que los usuarios copien una base de datos, y establezcan contraseñas u opciones de inicio
Proteger el código de Microsoft Visual Basic para Aplicaciones (VBA)
Proteger páginas de acceso a datos
NOTA Antes de distribuir la base de datos o la página de acceso a datos, se recomienda eliminar la
información personal que pueda estar almacenada en el archivo. Para obtener más información,
vea Quitar información personal de un archivo o página de Access.

Pues las mismas que entre un 600 y un Mercedes, es decir todas. Ambas se llaman bases de datos, del
mismo modo que ambos se llaman coches, pero las diferencias son abismales. Tanto en el precio, por
supuesto, como en cuanto a forma de conexión (ODBC contra ficheros compartidos), el rendimiento muy
superior en Oracle, la capacidad total de la base de datos, que en Oracle prácticamente es ilimitada, la
estabilidad, independencia respecto al Sistema Operativo (Oracle va en Windows, Linux, AIX, Unix,
Solaris, ...) y, por supuesto, en cuanto a la seguridad.

En Oracle puedes tener tener varias bases de datos en la misma instancia de servidor, y puedes dar o
quitar permisos por cada objeto de la base de datos. Por ejemplo, un usuario podría entrar sólo de
consultas a un par de tablas, con control total en otras dos y no acceder al resto, tener un login que
caduque dentro de un mes, pedir nueva contraseña cada quince días... en fin, un montón de cosas que
Access ni se plantea.

De todos modos, la diferencia principal en seguridad es que en Access cada usuario con acceso a la base
de datos tiene acceso también al fichero mdb que contiene todo, por lo que si es lo bastante 'habilidoso'
podría llegar a obtener toda la información independientemente de lo que hagamos en cuanto a permisos
dentro de la propia base de datos.

Hay que asumirlo, Access es muy cómodo y flexible, pero más como 'juguetito' que como entorno serio de
explotación.

http://www.galeon.com/ortihuela/access.htm

Perdona, estos días me conecto poco y no vi tu post...

Mira si estás abriendo de modo esclusivo, porque si es así bloqueas la base para que nadie
más se pueda conectar...

Por otro lado, lo que tenias que hacer es partir la base (hay un asístente y todo en
herramientas), así estan los datos en una (la que actua de servidor) y los otras tienen vistas
a las tablas de la que actua como servidora. Eso funciona muy bien cuando acceden pocas
personas...
http://www.filehungry.com/spanish/product/windows_software/security_tools/password
_recovery/remove_access_passwords/

Bueno gente el concepto es mas fácil de lo que parece, antes que nada tenemos que
tener un concepto medio medio-alto de sql y programación en general si no bueno
espero que consigan algún manual y después se fijen en este post.

1) Buscando objetivos: La joda es la siguiente, todo programa al conectarse a una base


de datos sql o access lo hace mediante lo que se denomina STRING DE CONEXIÓN,
esto es básicamente una cadena de caracteres en la cual aparecen con detalle el usuario ,
contraseña y host de la base de datos. Tenemos que buscar estos objetivos utilizando los
métodos conocidos.

2) Leyendo el código: Cuando nos encontremos con el fuente del programa tendremos
que buscar la siguiente declaración (por ejemplo en un VB6.0)

Set mdb = New ADODB.Connection


mdb.Open
"DRIVER={PostgreSQL+};SERVER=XXX;port=XXX;DATABASE=XXX;UID=post
gres;PWD=postgres;", "postgres", "postgres"

3) Si hemos encontrado ese código bueno significa que vamos bien, lo siguiente es
entender que tipo de host tiene esta base por ejemplo localhost es solo para conexiones
desde el host tmb para ip del estilo 192.XXX.XXX.XXX , lo que nos interesa es el bug
siguiente una ip del estilo 200.XXX.XXX.XXX o algun texto indicativo de que se
puede conectar desde cualquier pc a esta base de datos mediante esa contraseña y
nombre de usuario.

4) Por ultimo nos bajamos cualquier programita para conectarnos a una base de
datos y listo a disfrutar

Pues lo principal es un control de acceso a los datos por usuario, siendo además
conveniente registrar cada acceso (o modificación) de los datos, así como guardar la
fecha de última modificación de cada registro. Todo esto permite seguridad previa y un
seguimiento posterior a un posible 'ataque'. Estas posibilidades deben traerlas
incorporadas la BD que vayas a utilizar, aunque hay algunas que se pueden colocar
artesanalmente. Sobre las estrategias, cada BD posee unas características y debes ser tú
el que decidas el control a realizar en función de los usuarios que vayan a hacer uso de
los datos.
Espero que te sirva

En Access existe dentro del menú de herramientas seguridad, un asistente para seguridad por usuarios.

Lee detenidamente cada uno de los apartados que tiene; allí puedes crear usuarios y determinar qué
permisos tienen sobre cada uno de los objetos de la base de datos.

Ten cuidado de los permisos que das a la base de datos, porque si no le activas el abrir, puede que no la
puedas abrir ni siquiera tú mismo.
Allí te creará un archivo con extensión mdw, que es el que contiene toda la configuración de usuarios y
permisos.

Ten en cuenta en qué lugar se guarda, ya que puede que vuelvas a necesitarlo.

You might also like