Está en la página 1de 7

SEGURIDAD, REQUISITO INDISPENSABLE EN LA BASE DE

DATOS ESTUDIO DE OPINÓN DEL PUEBLO

SECURITY, AN INDISPENSABLE REQUIREMENTS FOR THE


DATABASE OF THE PEOPLE´S OPINIONS STUDY
Jessica Carriles Cardo1 , Lienzt de la Caridad Chang Collado2

1 Centro de Estudios Sociopolíticos y de Opinión, Cuba, jessica@op.cc.cu, San Sebastián #5 e/ Corralfalso y Aparación.
Guanabacoa, La Habana, Cuba.
2 Centro de Estudios Sociopolíticos y de Opinión, Cuba, lien@op.cc.cu, Cocos #143 apto. 10 e/ Rabí y General Lee. Diez de
Octubre, La Habana, Cuba.

RESUMEN: El Centro de Estudios Sociopolíticos y de Opinión se encuentra inmerso en el desarrollo y avance


tecnológico, debido a ello ha informatizado una parte de sus procesos, como es la captura de opiniones espon-
táneas generadas por todo el país. Hoy en día existe la necesidad imperante de que la información contenida
en su base de datos se mantenga segura, cumpliendo requisitos tales como la integridad y confidencialidad.
Por lo que se hace necesario implementar mecanismos de seguridad que restrinjan el acceso a la información
de personas no autorizadas. El presente trabajo investigativo describe cómo garantizar la seguridad de los da-
tos, empleando protocolo SSL, creando roles, vistas y asignando niveles de privilegios. Como resultado se ob-
tuvo un sistema de base de datos seguro y confiable.

Palabras Clave: Seguridad, integridad, confidencialidad, privilegios y SSL.

ABSTRACT: Estudios's Center Sociopolitical and of Opinión finds itself immersed in development and techno-
logical advance, due to it, the center has computerized one part of its processes, as the capture of spontaneous
opinions generated by all around the country. Nowadays exists the prevailing need that the information con-
tained in the database keep safe, obeying requirements such like the integrity and confidentiality. What one be-
comes necessary to implement mechanisms of certainty that restrict the access to not authorized people's in-
formation. The present investigative work describes how guarantee the security of the data, using SSL protocol,
creating roles, views and assigning levels of privileges. As a result, it got a system of data base safe and relia-
ble.

KeyWords: Security, integrity, confidentiality, privileges and SSL.

1. INTRODUCCIÓN sonas modificar sus hábitos y patrones de conduc-


ta, así como, su forma de pensar. Las TIC ofrecen
En la actualidad el mundo está experimentando un amplio marco de posibilidades, fundamental-
cambios esenciales debido al aumento de las Tec- mente en el desarrollo de la industria de software
nologías de la Información y las Comunicaciones para la informatización de la sociedad en que se
(TIC). Dichas tecnologías constituyen el núcleo vive, trayendo como consecuencia aumento en la
central de las transformaciones que afrontan la productividad y mejor gestión de las empresas y
economía y la sociedad, imponiéndoles a las per- organizaciones.
“VIII Taller Internacional de Tecnologías de Software Libre y Código Abierto”
Carriles, J.; Chang, L. | “SEGURIDAD, REQUISITO INDISPENSABLE EN LA BASE DE DATOS ESTUDIO DE OPINIÓN DEL PUEBLO”

El desarrollo de la industria del software y el au- como alcanzar razonamientos lógicos.


mento de la competencia en el mercado exige co-
mo requisito fundamental para las aplicaciones 2.2 Seguridad de bases de datos en Post-
informáticas la presencia de altos niveles de segu-
greSQL
ridad. En las organizaciones es importante adoptar
medidas orientadas a prevenir acciones que pon- La seguridad de los datos implica protegerlos de
gan en riesgo la confidencialidad e integridad de la acciones indebidas que pongan en peligro su defi-
información que se maneja. nición, existencia, consistencia e integridad inde-
El Centro de Estudios Sociopolíticos y de Opinión pendientemente de la persona que los accede [1].
(CESPO) es una de las empresas que ha contribui- La seguridad de una base de datos se refiere a la
do al avance tecnológico en Cuba, informatizando protección de la información contra el acceso por
sus procesos para alcanzar resultados eficaces, parte de las personas no autorizadas y la indebida
precisos y confiables. Cuenta con una base de destrucción o alteración. Es un componente funda-
datos encargada de procesar las opiniones espon- mental de la estrategia global en materia de seguri-
táneas generadas por la población de todo el país, dad informática, y es una cuestión demasiado im-
por lo que se convierte en una institución estratégi- portante como para quedarse con las configuracio-
ca en cuanto a la información que procesa. En él se nes “por defecto”. [2]
garantiza el estricto cumplimiento de la seguridad Para mantener la seguridad en una base de datos,
informática y de la información, de modo que los deben cumplirse requisitos tales como:
recursos sean utilizados bajo las normas y regla-
mentos establecidos. Además, la información allí Confidencialidad: Condición que asegura que la
contenida sólo puede ser consultada y modificada información no pueda estar disponible o ser descu-
por las personas que se encuentren acreditadas y bierta por o para personas, entidades o procesos
dentro de los límites de su autorización. El CESPO no autorizados. [3]
cuenta con políticas de seguridad que garantiza Integridad: Condición que garantiza que la infor-
este requisito a través de los controles legales, el mación sólo puede ser modificada, incluyendo su
acceso físico, los componentes de hardware y de creación y borrado, por el personal autorizado. El
software. concepto de integridad significa que el sistema no
En la actual coyuntura, la base de datos que con- debe modificar o corromper la información que al-
tiene la información sensible de las opiniones es- macene, o permitir que alguien no autorizado lo
pontáneas, no cuenta con los requerimientos de haga. [3]
seguridad indispensables. La configuración de la Para garantizar que se cumplan estos requisitos se
seguridad es ineficiente, puesto que sus paráme- definen dos niveles de seguridad.
tros están definidos por defecto. Todos los usuarios • Seguridad de acceso al sistema
pueden acceder, insertar, eliminar y actualizar la
Permite definir desde qué equipos se pueden co-
información desde cualquier ubicación remota sin
nectar los usuarios a las bases de datos, así como
restricciones. Además, el tráfico de los datos a tra-
definir qué usuarios y a qué bases de datos se
vés de la red no es seguro, por lo que pueden ser
pueden conectar. Las configuraciones de este nivel
interceptados y utilizados con fines malintenciona-
de seguridad se realizan en los ficheros post-
dos. Por todo lo anteriormente planteado se hace
gresql.conf, pg_ident.conf y pg_hba.conf.
necesario emplear mecanismos de seguridad para
proteger los datos contra su revelación, alteración o El fichero postgresql.conf presenta parámetros im-
destrucción no autorizadas. portantes para configurar las conexiones, así como
para la seguridad y autenticación.
Configuración de las conexiones: [4]
2. CONTENIDO
listen_addresses (string): Especifica las direcciones
2.1 Materiales y métodos TCP / IP por las cuáles el servidor va a escuchar
las conexiones desde aplicaciones cliente. El valor
Los métodos científicos de investigación utilizados toma la forma de una lista separada por comas de
en el presente trabajo son: nombres de host y/o direcciones IP numéricas.
Analítico-Sintético: Empleado para realizar un port (integer): Especifica el puerto TCP por el cual
análisis detallado de las teorías y documentos que escucha el servidor, por defecto es el 5432. El nú-
hacen referencia a la seguridad a nivel de base de mero de puerto es el mismo para todas las direc-
datos; permitiendo la extracción de los elementos ciones IP por las que escucha el servidor.
más importantes que se relacionan con el objeto de max_connections (integer): Determina el número
estudio. máximo permitido de conexiones simultáneas al
Histórico-Lógico: Empleado para analizar la evo- servidor de base de datos. El valor predeterminado
lución de la seguridad a nivel de base de datos, así es de 100 conexiones.

“VIII Taller Internacional de Tecnologías de Software Libre y Código Abierto”


Carriles, J.; Chang, L. | “SEGURIDAD, REQUISITO INDISPENSABLE EN LA BASE DE DATOS ESTUDIO DE OPINIÓN DEL PUEBLO”

Seguridad y autenticación: [4] en el fichero. Debe estar en el mismo directorio que


pg_hba.conf.
authentication_timeout (integer): Establece el tiem-
po máximo para completar la autenticación del METHOD
cliente, en cuestión de segundos. trust: Permite todos los accesos sin necesidad de
SSL 1 (boolean): Especifica si se permiten conexio- autenticarse (sólo recomendable para conexiones
nes SSL. El valor predeterminado es off. Comuni- desde el equipo local).
cación SSL sólo es posible con conexiones TCP / reject: Rechaza la conexión sin condiciones.
IP. password: Solicita la contraseña sin encriptar.
password_encryption (boolean): Cuando se especi- md5: Solicita la contraseña con el método de en-
fica una contraseña en CREATE USER o ALTER criptación md5.
USER sin escribir: cifrado o no cifrado, este pará-
ident: Utiliza el usuario del sistema desde el que se
metro determina si la contraseña debe ser encrip-
está intentado conectar.
tada. El valor predeterminado es on (cifrar la con-
traseña). cert: Autenticar utilizando certificados SSL.
row_security (boolean): Especifica si se aplican o • Seguridad de los datos
no las directivas de seguridad de fila. El valor pre- Cuando se permite un acceso es importante res-
determinado es on. tringirlo a personal autorizado. La seguridad de los
El fichero pg_hba.conf controla la autentificación datos es responsabilidad del Sistema Gestor de
del cliente. Bases de Datos (SGBD) que se esté utilizando, por
En el fichero se debe definir un registro para cada lo que debe ser configurada con roles, privilegios y
acceso que se pueda conectar al servidor. Cada permisos adecuados para evitar los accesos malin-
registro especifica el tipo de conexión (TYPE), tencionados. Por lo general se puede garantizar a
nombre de la base de datos a la que tendrá acceso través del control discrecional y el control obligato-
(DATABASE), nombre de usuario (USER), direc- rio. En ambos casos, la unidad de los datos que se
ción IP del cliente (ADDRESS) y el método de au- necesite proteger puede comprender desde toda la
tentificación que se va a utilizar (METHOD). [5] base de datos hasta un componente específico
TYPE: dentro de una tupla específica. [6]
Local: Se define para las conexiones que se reali- a. Administración de roles
zarán desde el propio servidor. Los roles de las bases de datos pueden tener un
Host: Se utilizará para conexiones remotas no-SSL número de atributos que define sus privilegios e
y SSL. interactúa con el sistema de autenticación del clien-
te. PostgreSQL administra el acceso a las bases de
Hostssl: Sólo se utilizará para conexiones SSL. datos utilizando el concepto de roles. Para crear
Hostnossl: Sólo se utilizará para las conexiones usuarios o grupos de usuarios se emplea la sen-
remotas no-SSL. tencia: [7]
DATABASE: CREATE ROLE nombre [ [ WITH ] opción [ ... ] ]
All: Permite la conexión a cualquier base de datos. Donde opción puede ser:
Sameuser/Samerole: Se empleará para bases de SUPERUSER | NOSUPERUSER
datos que su nombre sea el mismo que el usua- | CREATEDB | NOCREATEDB
rio/rol que se conecta.
| CREATEROLE | NOCREATEROLE
nombd1, nombd2,…: Permite la conexión a cual-
quiera de las bases de datos de la lista. | CREATEUSER | NOCREATEUSER
@fichero: Permite la conexión a las bases de datos | INHERIT | NOINHERIT
incluidas en el fichero. Debe estar en el mismo | LOGIN | NOLOGIN
directorio que pg_hba.conf | REPLICATON | NOREPLICATION
USER: | CONNECTION LIMIT límite_conexiones
ALL: Permite la conexión de cualquier rol. | BYPASSRLS | NOBYPASSRLS: característica
role1, role2,…: Permite la conexión de los roles de introducida en 9.5, por defecto es la opción NOBY-
la lista y además permite la conexión de cualquier PASSRLS, si se especifica BYPASSRLS significa
rol que sea miembro de role2. que el rol no tendrá en cuenta las políticas que se
@fichero: Permite la conexión de los roles incluidos le hallan asignado.
| [ ENCRYPTED | UNENCRYPTED ] PASSWORD
'contraseña'
1
Secure Sockets Layer por sus siglas en inglés. Protocolo | VALID UNTIL 'fecha'
criptográfico que permite autenticar y entregar privacidad a la
información entre el cliente y el servidor de forma segura.

“VIII Taller Internacional de Tecnologías de Software Libre y Código Abierto”


Carriles, J.; Chang, L. | “SEGURIDAD, REQUISITO INDISPENSABLE EN LA BASE DE DATOS ESTUDIO DE OPINIÓN DEL PUEBLO”

| IN ROLE nombre_rol [, ...] rio para que solamente pueda acceder a los datos a
través de vistas, en lugar de concederle permisos
| IN GROUP nombre_rol [, ...]
para acceder a ciertos campos, así se protegen las
| ROLE nombre_rol [, ...] tablas base de cambios en su estructura.
| ADMIN nombre_rol [, ...]
La sintaxis básica para crear una vista es la si-
| USER nombre_rol [, ...]
guiente:
| SYSID uid
Es importante conocer que si se emplea la senten- CREATE OR REPLACE VIEW nombre_vista AS
cia CREATE USER nombre ya el usuario tendrá la sentencias select
opción de login por defecto, mientras que con el
FROM tabla;
comando CREATE ROLE sí se debe especificar.
d. Seguridad por filas
Una vez creado un rol, puede ser modificado o
eliminado con los comandos ALTER ROLE nom- Las tablas pueden tener políticas de seguridad de
bre y DROP ROLE nombre respectivamente. filas que restringen, por usuario, qué filas pueden
ser devueltas una vez realizada una inserción, mo-
b. Gestión de privilegios dificación o eliminación. [10]
Se le llama privilegio al conjunto de acciones que Para crear una política de seguridad se emplea la
los usuarios pueden realizar sobre cada objeto de sentencia:
la base de datos (tablas, columnas, vistas, funcio-
nes, trigger, entre otros). El comando GRANT brin- CREATE POLICY nombre ON nombre_tabla
da privilegios sobre objetos de una base de datos a [ FOR { ALL | SELECT | INSERT | UPDATE |
uno o más roles. La sentencia para administrar DELETE } ] [ TO { <nombre_rol | PUBLIC | CUR-
privilegios es la siguiente: [8]. RENT_USER | SESSION_USER } [, ...] ] [ USING (
expression_booleana> ) ] [ WITH CHECK ( expres-
GRANT { { SELECT | INSERT | UPDATE | DELETE sion_booleana) ]
| TRUNCATE | REFERENCES | TRIGGER | CRE-
ATE | CONNECT | TEMPORARY | TEMP} | ALL [ Si es necesario modificar o eliminar una política
PRIVILEGES ] } creada se emplean los comandos ALTER POLICY
y DROP POLICY respectivamente. Para habilitar y
ON { [ TABLE ] nombre_tabla [, ...] | ALL TABLES deshabilitar la seguridad de fila para una tabla de-
IN SCHEMA nombre_esquema [, ...] } terminada, se utiliza el comando ALTER TABLE
TO { [ GROUP ] nombre_rol | PUBLIC } [, ...] [ WITH nombre_tabla ENABLE/DISABLE ROW SECU-
GRANT OPTION ] RITY.
REVOKE [ GRANT OPTION FOR ] 2.3 Resultados y discusión
{ { SELECT | INSERT | UPDATE | DELETE | La base de datos ESTOP está implementada en
TRUNCATE | REFERENCES | TRIGGER } PostgreSQL 9.5 sobre el servidor Debian v7.0
[, ...] | ALL [ PRIVILEGES ] } Wheezy, y su administración es a través del cliente
ON { [ TABLE ] nombre_tabla[, ...] | ALL TABLES IN pgAdminIII v1.22.1 sobre el sistema operativo Win-
SCHEMA nombre_esquema [, ...] } dows 7.
FROM { [ GROUP ] nombre_rol | PUBLIC } [, ...] Para garantizar la seguridad de acceso al siste-
ma fue necesario cifrar el tráfico entre los clientes y
[ CASCADE | RESTRICT ] el servidor y así evitar que la información transferi-
da por la red fuera interceptado u obtenido por per-
c. Definición de vistas para proteger las ta- sonas no autorizadas. Esta característica se logró a
blas través de la autenticación de certificados digitales,
impidiendo que los usuarios que no tengan instala-
Una vista es una estructura lógica que permite vi-
do el certificado correspondiente puedan conectar-
sualizar un grupo de datos que provienen de una o
se al servidor.
varias tablas u otras vistas. Los datos accesibles a
través de la vista no están almacenados en la base PostgreSQL soporta nativamente el uso de cone-
de datos como un objeto [9]. xiones SSL para cifrar las comunicaciones, sólo es
necesario tener instalado OpenSSL en el servidor y
Las vistas permiten:
PostgreSQL compilado con soporte SSL (se consi-
- ocultar información: permitiendo el acceso a gue usando el parametro --with-ssl con ./configure
algunos datos y manteniendo oculto el resto de la antes de compilar).
información que no se incluye en la vista. El usuario
Para generar la llave y los certificados es necesario
solo puede consultar la vista.
ubicarse en el directorio de instalación de Postgres
- simplificar la administración de los permi- (opt/PostgreSQL/9.5/data/)
sos de usuario: permite otorgar permisos al usua-

“VIII Taller Internacional de Tecnologías de Software Libre y Código Abierto”


Carriles, J.; Chang, L. | “SEGURIDAD, REQUISITO INDISPENSABLE EN LA BASE DE DATOS ESTUDIO DE OPINIÓN DEL PUEBLO”

Creación de un par de claves pública y privada Para garantizar que cada usuario que accederá a la
base de datos se autentique a través de un certifi-
El primer paso para crear un método de comunica-
cado se necesitó generar la llave, un certificado
ción seguro es poseer un par de claves pública y
autofirmado por el servidor y el certificado de con-
privada.
fianza (usuario.key, usuario.crt, root.crt), para ello
openssl genrsa -des3 -out server.key 2048 se ejecutó la sentencia:
Generating RSA private key, 2048 bit long openssl genrsa -des3 -out /tmp/usuario.key 2048
modulus
………………………………………………………………………..++++++ openssl rsa -in /tmp/usuario.key –out /tmp/usuario.
key
……………………………………………….++++++
E is 65537 (0x10001) Es necesario tener en cuenta al crear la solicitud de
Enter pass phrase for server.key:
certificado la opción correspondiente a common
name debe coincidir con el nombre de usuario que
Verifying – Enter pass phrase for serv-
er.key: se conectará en la base de datos.
Cada vez que el servicio que utilice la clave creada openssl req -new -key /tmp/usuario.key -out
sea inicializado, dígase postgresql-9.5, se requerirá /tmp/usuario.csr
una contraseña, por lo que se eliminó dicha clave Una vez creada la solicitud (usuario.csr), debe ser
para facilitar el funcionamiento a través del coman- firmada por la clave del servidor (server.key). por lo
do siguiente: que es necesario ubicarse en el directorio de confi-
openssl rsa -in server.key -out server.key guración de postgres y ejecutar:
Enter pass phrase for server.key: openssl x509 -req -in /tmp/usuario.csr -CA root.crt -
writing RSA key CAkey server.key -out /tmp/usuariol.crt –
Cacreateserial
Creación de un certificado. Al concluir se deben copiar los archivos generados
Es importante destacar que las conexiones que en la máquina del usuario:
acepta el servidor pertenecen a la red interna del C:\Users\nombre_usuario\AppData\Roaming\postgr
Centro, por lo que no fue necesario acudir a una esql.
Autoridad de Certificación (CA) para que firmara el
certificado, sino que se pudo crear un certificado y Una vez configurado el protocolo SSL en el servidor
autofirmarlo como una CA local. Para ello se ejecu- se establecieron los parámetros de los ficheros
tó lo siguiente: postgresql.conf y pg_hba.conf de acuerdo a las
necesidades del centro. A continuación, una mues-
openssl req -new -key server.key -days 730 -out tra de la sección seguridad y autenticación del fi-
server.crt -x509 chero postgresql.conf
You are about to be asked to enter infor-
mation that will be incorporated # - Security and Authentication -
into your certificate request. authentication_timeout = 1min #1s-600s
... ssl = on #(change requires restart)
...
----- password_encryption = on
Country Name (2 letter code) [AU]:CU row_security = on
State or Province Name (full name) [Some-
State]:Habana En la sección de conexiones y autenticación se
Locality Name (eg, city) []:Plaza definió un puerto diferente al que aparece por de-
Organization Name (eg, company) [Internet fecto, las direcciones IP de las máquinas que se
Widgits Pty Ltd]:CESPO conectarán, así como la cantidad máxima de cone-
Organizational Unit Name (eg, section) xiones que admitirá, teniendo en cuenta que solo
[]:Computacion existen 15 puestos destinados para el trabajo con la
Common Name (eg, YOUR name) []:servidor
Email Address []:admin@op.cc.cu base de datos.
#-------------------------------------
Para utilizar el certificado creado como una CA se # CONNECTIONS AND AUTHENTICATION
debe copiar con el nombre de root.crt. #-------------------------------------
# - Connection Settings -
cp server.crt root.crt
Los permisos y dueño de las llaves y certificados listen_addresses = '192.168.5.34,
generados deben ser restringidos: 192.168.5.35'
port = 5445
chmod 400 server.* max_connections = 15
chmod 400 root.crt Luego en el fichero pg_hba.conf se especificaron
chown postgres:postgres server.* las conexiones que son aceptadas por el servidor.
chown postgres:postgres root.crt A continuación, un ejemplo de los usuarios y hosts
que tienen acceso.

“VIII Taller Internacional de Tecnologías de Software Libre y Código Abierto”


Carriles, J.; Chang, L. | “SEGURIDAD, REQUISITO INDISPENSABLE EN LA BASE DE DATOS ESTUDIO DE OPINIÓN DEL PUEBLO”

# TYPE DATABASE USER ADDRESS METHOD


# IPv4 local connections:
db_estop=# create policy tema_grupousuarios3 on
host all all 127.0.0.1/32 md5 opinion for all to usuarios3 using (codigotema=4 or
hostssl db_estop ernesto codigotema=6)
192.168.5.34/8 cert db_estop=# create policy denuncias_usuario on
hostssl db_estop yurixa opinion for update to denuncias using (codigosenti-
192.168.5.35/8 cert do=3)
Para garantizar la seguridad de los datos, se Una vez creada las políticas se habilitó el nivel de
crearon los usuarios y grupos de usuarios que se seguridad de fila en la tabla correspondiente.
conectarán a la base de datos db_estop, así como db_estop=# ALTER TABLE opinion ENABLE ROW
sus respectivos privilegios. Entre los requisitos LEVEL SECURITY;
cumplidos es que los usuarios que trabajan sobre Otro requerimiento que debe cumplir la base de
esa base de datos utilizan mayormente dentro de la datos es que las opiniones que constituyen denun-
tabla opinion, las opiniones que respondan a un cia sólo sean modificadas por el especialista encar-
tema específico, por lo que se garantizó que las gado de procesarlas, y a la vez no requiere trabajar
opiniones que pertenezcan al tema 1, 2 y 5 sean con todos los campos de la tabla opinion, por lo que
accedidas solo por el grupo de usuarios1, las del se creó una vista que diera respuesta a la necesi-
tema 3, 7 y 8 al grupo de usuarios2 y las de los dad.
temas 4 y 6 al grupo de usuarios3.
db_estop=# CREATE OR REPLACE VIEW vis-
El código utilizado para crear los usuarios fue: ta_denuncia AS select o.opinion, o.fecha,
m.nombrem, p.nombrep from opinion o join munici-
db_estop=# CREATE USER ernesto ENCRYPTED
pio m on (o.codigomunicipio=m.codigo) join provin-
PASSWORD 'sociopolitico' NOBYPASSRLS VALID
cia p on (o.provincia=p.codigo) where codigosenti-
UNTIL '2017-12-29 12:00:00'; (semejante código
do=3;
para los restantes usuarios)
db_estop=# ALTER VIEW vista_denuncia OWNER
Es importante destacar que la contraseña de cada
TO usuario_denuncia
usuario se actualizó con la opción \password nom-
bre_usuario de forma tal que no quedara registrada
en texto plano en los logs del postgresql 3. CONCLUSIONES
(opt/PostgreSQL/9.5/data/pg_log).
Luego de realizada la presente investigación, se
El comando para crear los grupos de usuarios fue: concluye que:
db_estop=# CREATE GROUP usuarios1 USER • A partir del análisis en función de la
ernesto, yurixa, raquel, lissette, rolando, rafael; problemática planteada se comprendió la
db_estop=# CREATE GROUP usuarios2 USER necesidad de implementar mecanismos de
marcela, juan, ana, marbelia, pedro; seguridad a nivel de base de datos, en términos
db_estop=# CREATE GROUP usuarios3 USER de garantizar la protección de la información que
alain, patricia, bety, barbara; se procesa.
• La implementación de certificados digitales y el
Es necesario otorgarle privilegios a los usuarios
protocolo de seguridad SSL garantizó la
para que puedan trabajar en las tablas de la base
autenticación segura de los clientes y convirtió la
de datos. Siempre con el principio de que se niega
información en ininteligible para terceros.
todo y solo se acepta lo que se necesite.
• El empleo de privilegios y niveles de seguridad
db_estop=# REVOKE ALL PRIVILEGES ON opi- de filas restringió el acceso de la información a
nion FROM usuarios1, usuarios2, usuarios3, de- los responsables de procesarlas.
nuncias; • La ejecución y puesta en práctica de
db_estop=# GRANT SELECT, INSERT, UPDATE mecanismos de seguridad y autenticación
ON opinion TO usuarios1, usuarios2, usuarios3, resultó un requisito para garantizar la integridad
denuncias; y confidencialidad de la información.
Luego se crearon las políticas de seguridad de fila
para que cada usuario sólo acceda a la información
que le corresponde.
4. AGRADECIMIENTOS
db_estop=# create policy tema_grupousuarios1 on Agradecemos a las profesoras Yudisney Vazquez y
opinion for all to usuarios1 using (codigotema=1 or Yadira Roble, ambas MCs que aportaron un pro-
codigotema=2 or codigotema=5) fundo conocimiento sobre PostgreSQL.
db_estop=# create policy tema_grupousuarios2 on
opinion for all to usuarios2 using (codigotema=3 or
codigotema=7 or codigotema=8)

“VIII Taller Internacional de Tecnologías de Software Libre y Código Abierto”


Carriles, J.; Chang, L. | “SEGURIDAD, REQUISITO INDISPENSABLE EN LA BASE DE DATOS ESTUDIO DE OPINIÓN DEL PUEBLO”

5. REFERENCIAS BIBLIOGRÁFICAS 2. OpenSSL. OpenSSL. Cryptography and


SSL/TLS Toolkit . [En línea] OpenSSL Software
1. Microsoft. Microsoft, Developer Network. [En Foundation., 2016. [Citado el: 14 de Agosto de
línea] 2017. [Citado el: 14 de Agosto de 2017.] 2017.] https://www.openssl.org.
https://msdn.microsoft.com/es- 3. Alarcón Medina, José Manuel. Curso
es/library/cc434708(v=vs.71).aspx#. Administración de PostgreSQL - ITI 2007. [En línea]
2. Interout. Interout. [En línea] Interoute [Citado el: 19 de Julio de 2017.]
Communications Limited, 2017. [Citado el: 14 de www.uv.es/alarmedi/iti2007/.
Agosto de 2017.] http://www.interoute.es/unified- 4. Escobar, Javier, Ramirez, Luis y Asprino,
ict/hosting/servicios-gestionados/bases-de-datos- Omar. Integridad y Seguridad en los sistemas de
gestionadas/seguridad-en-bases-de-datos. bases de Datos. 2002.
3. Ministrerio de la Informática y las 5. Riggs, Simon y Krosig, Hannu. PostgrSQL 9
Comunicaciones. Resolución 127 Reglamento de Administration Cookbook. Olton : Packt Publishing,
Seguridad para las Tecnologías de la Información. 2010. ISBN 978-1-849510-28-8.
s.l. : Gaceta Oficial de la República de Cuba Nº
057, 2007. ISSN 1682-7511. 6. Villalobos Murillo, Johnny. Principios básicos
de seguridad en bases de datos. México : s.n.,
4. The PostgreSQL Gloval Development Group. 2017, Seguridad.
PostgreSQL 9.5.6 Documentation. 2017, 18.3,
págs. 487-492.
5. The PostgreSQL Global Development, Group. 6. SÍNTESIS CURRICULARES DE LOS AU-
PostgreSQL 9.5.6 Documentation. 2017, 19, págs. TORES
539-556.
Jessica Carriles Cardo nacida el 3 de octubre de 1991 en
6. Wesley Longman, Adison. An introduction to Guanabacoa, La Habana, graduada de Ingeniera en Ciencias
database systems. 7th. Massachusetts : Pearson Informáticas en la Universidad de las Ciencias Informáticas en el
Educación, 2010. págs. 504-532. Vol. XVI. ISBN 0- año 2014. Trabaja en el Centro de Estudios Sociopolíticos y de
201-38590-2. Opinión hace tres años, donde ha participado en seis
Investigaciones de carácter sociopolítico, además ha publicado
7. The PostgreSQL Global Development Group. dos artículos en la revista “En consulta con el Pueblo” de dicha
PostgreSQL 9.5.6 Documentation. 2017, 20, págs. institución titulados “CSPro una herramienta para la elaboración
y procesamiento de cuestionarios” y “Análisis de
557-561. correspondencia en Investigaciones Sociopolíticas utilizando los
8. The PostgreSQL Global Development, Group. softwares SPSS, R y SPAD”. Ha presentado ponencias en la VII
PostgreSQL 9.5.6 Documentation. 2017, 5.6, pág. Conferencia Científica de Estudios Sociopolíticos y en la III
Conferencia Científica de la UCI. El 24 de julio de 2017 le fue
64. otorgada la categoría de Aspirante a Investigador. Actualmente
9. Guía del Programador de PostgreSQL. Las se desempeña como jefa de Seguridad Informática en su
institución.
vistas y el sistema de reglas. Guía del Programador
de PostgreSQL. [En línea] 2017. [Citado el: 15 de Lienzt de la Caridad Chang Collado nacida el 14 de noviembre
de 1993 en Centro Habana, La Habana, graduada de Ingeniera
Agosto de 2017.] http://es.tldp.org/Postgresql- en Ciencias Informáticas en la Universidad de las Ciencias
es/web/navegable/programmer/x895.html. Informáticas en el año 2016. Trabaja en el Centro de Estudios
Sociopolíticos y de Opinión hace un año, donde ha participado
10. The PostgreSQL Global Development Group. en dos Investigaciones de carácter sociopolítico. Es coautora de
PostgreSQL 9.5.6 Documentation. 2017, 5.7, pág. un artículo en la revista “En consulta con el Pueblo” de dicha
65. institución titulado “Análisis de correspondencia en
Investigaciones Sociopolíticas utilizando los softwares SPSS, R
y SPAD”. Presentó una ponencia en la VII Conferencia Científica
5.1 BIBLIOGRAFÍA COMPLEMENTARIA de Estudios Sociopolíticos. Actualmente se desempeña
especialista en Informática en dicha institución.
1. INC web hosting. El SSL, importancia e
implementación. [En línea] 20 de Marzo de 2017.
[Citado el: 15 de Agosto de 2017.]
https://www.inc.cl/hosting/el-ssl-importancia-e-
implementacion.

“VIII Taller Internacional de Tecnologías de Software Libre y Código Abierto”

También podría gustarte