Successfully reported this slideshow.

Seguridad 2° exp_ooo

481 views

Published on

  • Be the first to comment

  • Be the first to like this

Seguridad 2° exp_ooo

  1. 1. Consiste en las acciones que toma el diseñador de base dedatos al momento de crearla tomando en cuenta el volumen de las transacciones y las restricciones que tiene que especificar en el acceso a los datos.
  2. 2. Las bases de datos conectadas a internet o cualquier otrared, son vulnerables a hackers y otros delincuentes quebuscan dañar, robar o alterar datos. Entre ellos están lossiguientes: Espías Hackers Empleados descontentos Personas con desequilibrio emocional Sobornadores
  3. 3. El servidor debe estar en un lugar cerrado Se puede instalar un sistema de video vigilancia Emplear dispositivos de seguridad como: Tarjetas con llaves Usuario y contraseña Dispositivos biométricos Políticas de la empresa
  4. 4.  Aislamiento entre la red empresarial e internet Configurar el enrutador Emplear un firewall Aseguramiento del acceso a una red inalámbrica
  5. 5.  Instalar un mínimo de software del S.O Aplicar los parches de seguridad Cambiar todas las contraseñas predeterminadas
  6. 6. Autentificación de Es la verificación usuarios de la identidad del usuario
  7. 7. Autorización de usuariosMétodo quese le asigna a Estalos usuarios diseñado derechos para para usar proteger laObjetos de la BD BD
  8. 8.  Es el medio por el que se implementan las autorizaciones. Al planear el acceso . El ABD puede usar la matriz de control de Acceso
  9. 9.  Es el conjunto de objetos de una BD que pertenecen a un usuario especifico. “Cuentas de propietario de esquema”.
  10. 10.  Como principal objetivo es que en las bases de datos debe tratarse de no otorgar a los usuarios mas privilegios de los que necesitan para hacer su trabajo. Se le llama denominacion o DBO al conjunto de privilegios y se analizan en una seccion venidera.
  11. 11.  Las personas no cometan errores y se conviertan en desastres de datos. Refuerza la honestidad de personas. Crear inicios de sesiones en la BD que tenga privilegios mínimos requeridos.
  12. 12.  Si se permite a un usuario conectarse mediante un usuario como Empleados o Productos automáticamente tendría privilegios completos en cada Objeto del esquema como: inserción, eliminación y actualización de cualquier tabla por consiguiente alterar cualquier tabla.
  13. 13. CREATE USER vistante @localhostIDENTIFIED BY ‘PASSWORD’;GRANT ALL ON BaseDatos.* TOuser@localhost;
  14. 14. La sentencia GRANTLa sintaxis simplificada de grant consta de tres secciones. No puedeomitirse ninguna, y es importante el orden de las mismas:• grant lista de privilegios• on base de datos.tabla• to usuarioEjemploCreación de un nuevo usuario al que se otorga algunos privilegios mysql> grant update, insert, select -> on demo.precios -> to visitante@localhost;
  15. 15. El comando CREATE USER, este comando crea nuevascuentas.El comando DROP USER , borra una o mas cuentas queno tienen permisos.Puede borrar una cuenta y sus permisos como sigue:DROP USER user;Es posible asignar una contraseña a la cuenta al mismotiempo que se crea y se le otorgan privilegios: mysql> grant update, insert, select -> on demo.precios-> to visitante@localhost identified by ´nuevapasswd´;
  16. 16. El comando SET PASSWORD asigna unacontraseña.--Set password for root@localhost=password(‘laurosoto’);--grant all privileges on *.* to usuario1@localhostidentified by passwordusuario with grant option;
  17. 17. Privilegio es una acción como leer, actualizar o eliminar, que permite ejecutar a un usuario sobre la información de una base de datos.La sintaxis para otorgar privilegios es la siguiente:GRANT{ALL PRIVILEGES|LISA DE PRIVILEGIOS}ON {nombre_tabla|nombre_vistaTo{public|lista_usuarios|lista_roles}
  18. 18. Ejemplo donde se especifican las columnas sobre lasque se otorgan privilegios con el comando grant: mysql> grant update(precio,empresa) -> on demo.precios -> to visitante@localhost; Podemos especificar privilegios diferentes para cada columna o grupos de columnas:mysql> grant update(precio), select (precio, empresa) -> on demo.precios -> to visitante@localhost;
  19. 19. ALL [PRIVILEGES] Da todos los permisos simples excepto GRANTOPTIONALTER Permite el uso de ALTER TABLEALTER ROUTINE Modifica o borra rutinas almacenadasCREATE Permite el uso de CREATE TABLECREATE ROUTINE Crea rutinas almacenadasCREATE USER Permite el uso de CREATE USER, DROPUSER, RENAME USER, y REVOKE ALL PRIVILEGES.CREATE VIEW Permite el uso de CREATEDELETE Permite el uso de DELETEDROP Permite el uso de DROP TABLEVIEWUPDATE Permite el uso de UPDATEUSAGE Sinónimo de “no privileges”GRANT OPTION Permite dar permisos
  20. 20. •EXECUTE Permite al usuario ejecutar rutinas almacenadas•FILE Permite el uso de SELECT ... INTO OUTFILE y LOAD DATA INFILE• INDEX Permite el uso de CREATE INDEX y DROP INDEX•INSERT Permite el uso de INSERT•LOCK TABLES Permite el uso de LOCK TABLES en tablas para las que tenga elpermiso SELECT•PROCESS Permite el uso de SHOW FULL PROCESSLIST•REFERENCES No implementado•RELOAD Permite el uso de FLUSH•REPLICATION CLIENT Permite al usuario preguntar dónde están los servidoresmaestro o esclavo•REPLICATION SLAVE Necesario para los esclavos de replicación (para leer eventosdel log binario desde el maestro)SUPER Permite el uso de comandos CHANGE MASTER, KILL, PURGE MASTERLOGS, and SET GLOBAL , el comando mysqladmin debug le permite conectar (unavez) incluso si se llega a max_connections
  21. 21. El comando revoke permite eliminar privilegiosotorgados con grant a los usuarios. Veamos unejemplo representativo: revoke all on *.* from visitante@localhost;
  22. 22. La vista es un método muy utilizado paraimplementar el control del acceso.•Es una medida de seguridad ya que ocultaestructuras y datos que el usuario no deberíaver .
  23. 23. CREATE VIEW datos ASSELECT nombre, apellido, créditosFROM estudiantesWHERE carrera=‘ISC’;CREATE VIEW vista estudiante ASSELECT nombre, apellido, carreraFROM estudiante;
  24. 24. Están diseñadas para proveer datos de apoyo alanálisis estadístico de poblaciones.Se garantiza a los usuarios permiso para accedera información estadística como totales, cuentaso promedios, pero no a información sobre unindividuo en particular.
  25. 25. SELECT total(salario)FROM empleadosWHERE Turno=‘’nocturno’;
  26. 26. SELECT salarioFROM empleadoWHERE empleado=‘E101’;
  27. 27. SELECT suma(salario)FROM empleadoWHERE departamento=10 ANDpuesto=‘programador’ AND fecha > ‘01-febrero-2004’;

×