Páginas

miércoles, 10 de agosto de 2011

Novedades Migrando base de datos de Oracle 10g a Oracle 11g

Al momento de la migración de la base de datos de Oracle 10g a Oracle 11g, me encontré con algunas novedades interesante, una de ellas son las nuevas características de auditoría y seguimiento, la nueva herramienta “adrci” para la revisión de las mismas, y otra que me puso a investigar que son los ACL.
Los ACL’s es una nueva característica de la versión 11g,el objetivo de esta es la seguridad a nivel de redes, se podría decir que es una especie de firewall, aunque no necesariamente lo sea.
Si no conocemos esta nueva funcionalidad tendremos problemas al intentar por ejemplo enviar mails, o consumir un http.
a continuación pondré un ejemplo de como crear un ACL y asignar privilegios necesarios para enviar un mail:
1. Creamos un ACL
begin
    dbms_network_acl_admin.create_acl (
    acl => 'nombreacl.xml',
    description => 'Normal Access',
    principal => 'USUARIOoROL',
    is_grant => TRUE,
    privilege => 'connect',
    start_date => null,
    end_date => null
);
end;
2. Agregamos usuarios o roles al ACL anterior
begin
dbms_network_acl_admin.add_privilege (
acl => 'nombreacl.xml',
principal => 'USUARIOoROL',
is_grant => TRUE,
privilege => 'connect',
start_date => null,
end_date => null);
end;
Si queremos agregar mas usuarios, lo podemos hacer con esta misma rutina
3. Asignamos el HOST al que tendrá acceso
begin
DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL(acl  => 'nombreacl.xml',
                                    host => 'tudominio.comOtuIP');
end;      

Las vistas del Diccionario de datos con las que puedes revisar los acl son:
DBA_NETWORK_ACLS
DBA_NETWORK_ACL_PRIVILEGES
USER_NETWORK_ACL_PRIVILEGES

No hay comentarios: