El objetivo de este documento es mostrar como se configuran los servidores y los clientes de base de datos oracle para que entre ellos exista una comunicación de datos cifrada y que las consultas no puedan ser captadas por un sniffer.
La seguridad es uno de los aspectos más importantes del sistema de información del cliente. Tanto en el nivel básico, que proporciona Oracle, como en el módulo Advanced Security en versiones Enterprise nos garantiza un nivel alto de seguridad.
Vamos a configurar Oracle Advanced Security para asegurarnos que se mantiene la integridad y cifrado de los datos.
El propósito de una criptografía segura es convertir texto plano en un texto ininteligible basado en una clave.
Los algoritmos de encriptación de datos que Oracle soporta son los siguientes:
Tenemos que tener en cuenta la negociación de seguridad entre el cliente y el servidor, las políticas existentes son las siguientes:
Para aclarar estas políticas veamos el siguiente cuadro:
Oracle Advanced Security es un componente de Net8, para configurarlo tenemos que abrir el asistente de NET8.
En Linux el comando para poder abrir el menú es netassit, en Windows es la herramienta con la que configuramos NET8 ( NET Manager ).
Todos los cambios que hace esta herramienta en Oracle Advanced Security los hace sobre el archivo sqlnet.ora, por lo tanto para configurarlo no haría falta sacar siempre el asistente, también escribiendo en este archivo la configuración sería suficiente. (Al final de la configuración gráfica se pondrá un ejemplo del sqlnet.ora con una configuración para ver como se puede configurar sin asistente).
Configuramos lo que corresponda en cada pestaña teniendo en cuenta los siguientes valores:
Aquí tenemos que elegir una de las políticas nombradas antes en el cuadrito (por defecto está la política de aceptar, incluso si no se configura nada ).
Esta etiqueta se refiera al establecimiento de una semilla que tomará el algoritmo, los valores están entre 10 caracteres y 70 caracteres. Métodos disponibles: Son los métodos de cifrado existentes, si se eligen varios, se tomará el primero.
Todas estas configuraciones quedan reflejadas en el SQLNET.ora
SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER= (MD5)
NAMES.PREFERRED_SERVERS =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = onames2.orasite.com)(PORT = 1640))
)
SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT= (MD5)
SQLNET.AUTHENTICATION_SERVICES= (NTS)
SQLNET.ENCRYPTION_TYPES_SERVER= (RC4_128)
SQLNET.ENCRYPTION_TYPES_CLIENT= (RC4_128)
SQLNET.ENCRYPTION_SERVER = requested
NAMES.DIRECTORY_PATH= (ONAMES, TNSNAMES)
SQLNET.CRYPTO_SEED = qwertyuiopasdfghjklzxcvbnm
Comentarios:
por Yo | 3/31/2008 10:05:51 PM
RE: Encriptación e integridad de datos en Oracle
hola
por Adrianne | 4/26/2010 10:12:43 AM
RE: Encriptación e integridad de datos en Oracle
Hola yo hice una prueba y me presento error Ora- Algoritmos no instalados..
por alix2181 | 7/9/2010 1:26:20 PM
RE: Encriptación e integridad de datos en Oracle
Fuera de utilizar Advance security, tengo entendido que la conexión nativa entre clientes y servidor Oracle existe un cifrado propietario, ¿alguien sabe que caractaristicas tiene este cifrado o que cifra (trasporte, datos, campos...)?