Mostrando entradas con la etiqueta Database Vault. Mostrar todas las entradas
Mostrando entradas con la etiqueta Database Vault. Mostrar todas las entradas

07 noviembre 2017

Oracle Database Security Assessment Tool


 

Con el creciente número de infracciones de datos cada día, salvaguardar la propiedad intelectual, la información sensible y los datos regulados se ha vuelto crítico. La herramienta de evaluación de seguridad de la base de datos Oracle (DBSAT) ayuda a identificar áreas de riesgo y recomienda cambios y controles que se deben implementar para mitigar esos riesgos. La herramienta de evaluación de seguridad de la base de datos Oracle recopila automáticamente los datos de configuración de una base de datos y luego informa los hallazgos.

Oracle ha proporcionado una nueva herramienta para evaluar la configuración de seguridad y asesor ar sobre ella. Es una utilidad liviana y lo más importante es que es gratis (¡Pero si es Oracle!, pobre Larry adiós a su nuevo barco  ). Siempre que tengamos el soporte activo de Oracle, deberíamos poder descargar la utilidad (¡no tan gratis!). 


Para los S.O. del lado oscuro (Microsoft)  no es tan útil

Para la primera versión, es muy prometedor, aunque los hallazgos para los sistemas operativos de Windows son limitados. Para Windows, no se ve las configuraciones del sistema operativo.

Necesitamos crear un usuario.

Primero, un usuario necesita ser creado con privilegios minimalistas. La documentación tiene el script de muestra que podría aprovisionarse.

create user dbsat_user identified by xxxxx;
//Si has instalado Database Vault y está habilitada, conéctate como DV_ACCTMGR para ejecutar este comando.
grant create session to dbsat_user;
grant select_catalog_role to dbsat_user;
grant select on sys.registry$history to dbsat_user;
grant select on sys.dba_users_with_defpwd to dbsat_user; // 11g and 12c
grant select on audsys.aud$unified to dbsat_user; // 12c only
grant audit_viewer to dbsat_user; // 12c
grant capture_admin to dbsat_user;// 12c covers sys.dba_priv_captures, sys.priv_capture$, sys.capture_run_log$
// Si has instalado Database Vault y está habilitada, conéctate como DV_OWNER para ejecutar este comando.
grant DV_SECANALYST to dbsat_user;

Recuperar información.

Necesitamos "recopilar" la configuración ejecutando los comandos a continuación. Como de costumbre, esto se ejecutará "como administrador". En el caso del proceso, le pedirá la contraseña. Asegúrese de que esté segura ya que el archivo tiene información muy importante.

D:\dbsat_output>set path=%path%;d:\dbsat

D:\dbsat_output>dbsat collect dbsat_user/xxxxxxxxxx dbsat_output20171024


Connecting to the target Oracle database...
SQL*Plus: Release 12.1.0.2.0 Production on Tue Oct 24 13:01:05 2017
Copyright (c) 1982, 2014, Oracle.  All rights reserved.
Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP, Advanced Analytics and Real Application Testing options
Database Security Assessment Tool version 1.0.2 (October 2016)
Setup complete.
SQL queries complete.
OS Commands Skipped.
BEGIN
*
ERROR at line 1:
ORA-20002: Complete without OS Commands.
ORA-06512: at line 4

Disconnected from Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP, Advanced Analytics and Real Application Testing options DBSAT Collector completed successfully.
Calling D:\app\oracle\product\12.1.0\dbhome_1\bin\zip.exe to encryptdbsat_output20171024.json...
Enter password:
Verify password:
adding: dbsat_output20171024.json (164 bytes security) (deflated 88%) zip completed successfully.

D:\dbsat_output>dir
Volume in drive D is New Volume
Volume Serial Number is 32D6-96CB

Directory of D:\dbsat_output
10/24/2017  01:01 PM  
10/24/2017  01:01 PM  
 ..
10/24/2017  01:01 PM            29,227 dbsat_output20171024.zip
               1 File(s)         29,227 bytes

               2 Dir(s)  223,632,429,056 bytes free

Mostrar los informes

Necesitamos generar un informe basado en el archivo, generado a partir del último paso. Al completar este paso, tendremos tres archivos (archivo de texto, excel, html) que enumeran las recomendaciones. Asegúrese de proteger este archivo, ya que la exposición al mundo exterior causaría riesgos de seguridad que nuestra base de datos tiene ahora.


Esta herramienta está destinada a ayudarnos a identificar posibles vulnerabilidades en nuestros sistemas, pero usted es el único responsable de su sistema y del efecto y los resultados de la ejecución de esta herramienta.


(Incluyendo, sin limitación, cualquier daño o pérdida de datos). Además, la salida generada por esta herramienta puede incluir información de configuración del sistema potencialmente sensible e información que podría ser utilizada por un atacante experto para penetrar en su sistema. Somos los  únicos responsables de garantizar que el resultado de esta herramienta, incluidos los informes generados, se maneje de acuerdo con las políticas de nuestra organización.



Archive:  dbsat_output20171024.zip
[dbsat_output20171024.zip] dbsat_output20171024.json password:
password incorrect--reenter:
password incorrect--reenter:
  inflating: dbsat_output20171024.json
Database Security Assessment Tool version 1.0.2 (October 2016)

DBSAT Reporter ran successfully.

Además, para generar el informe, necesitaría instalar Python en su máquina. Mi preferencia es usar el html ya que tiene enlaces a las secciones individuales. Los infores tienen esta apariencia:










20 octubre 2017

Games of Roles (Season 2): Controla a tus super usuarios


Si deseas ver la primera arte de este artículo sigue este enlace.

Realms (Reinos)

Los usuarios con el rol DBA tienen los privilegios SELECT (y UPDATE, DELETE, o INSERT) ANY  TABLE y, por lo tanto, todavía pueden manipular datos en la tabla AHORROS, observa Cersei, preguntándose si hay una manera de evitarlo. Hay, responde Tycho. Implica crear un "círculo de protección" especial conocido como un Realm en Oracle Database Vault y colocar la tabla dentro de él. Solo el usuario administrador de Oracle Database Vault creado anteriormente, DVADMIN, puede crear dominios. Tycho inicia sesión como DVADMIN y ejecuta el SQL que se muestra en el Listado 1 para crear un Realm denominado BRAAVOS Schema Realm. El parámetro AUDIT_OPTIONS muestra qué nivel de auditoría debe habilitarse para las operaciones en el ámbito. Tycho elige crear pistas de auditoría solo para intentos fallidos de controlar la cantidad de información de seguimiento de auditoría generada. Menciona que luego explicará los detalles de la auditoría.


-- Listado1: Como DVADMIN, Crear un Realm
begin
 dbms_macadm.create_realm(
  realm_name    => 'BRAAVOS Schema Realm',
  description   => 'Realm for entire BRAAVOS schema',
  enabled       => dbms_macutl.g_yes,
  audit_options => dbms_macutl.g_realm_audit_fail, 
                  
  realm_type    => 1
 ) ;
end;
/
-- Como DVADMIN, añadir un objeto al Realm 
begin
  dbms_macadm.add_object_to_realm (
    realm_name   => 'BRAAVOS Schema Realm',
    object_owner => 'BRAAVOS',
    object_name  => 'ACCOUNTS',
    object_type  => 'TABLE'
  );
end;

/

A continuación, Tycho agrega la tabla CUENTAS al reino que acaba de crear, usando el SQL que se muestra en el Listado 2, nuevamente como el usuario DVADMIN. Después de eso, inicia sesión como usuario de WEBAPP1 e intenta seleccionar de la tabla:

-- Listado2: Como WEBAPP1
SQL> select * from Braavos.accountss;
select * from Braavos.savings
                   *
ERROR at line 1:
ORA-01031: insufficient privileges

Petyr está perplejo. Refiriéndose a la secuencia de comandos setup.sql, ella señala que el usuario de WEBAPP1 sí tiene privilegios SELECT en la tabla, por lo que la instrucción SELECT no debería haber fallado. El motivo es simple, explica Tycho: la tabla está protegida por el reino, que tiene prioridad sobre los privilegios típicos de la base de datos de Oracle. Tycho luego agrega al usuario WEBAPP1 como un usuario autorizado del reino, usando el SQL, tal y como e muestra a continuación.

-- Listado3: Añadiendo un usuario autorizado
begin
  dbms_macadm.add_auth_to_realm(
    realm_name    => 'BRAAVOS Schema Realm',
    grantee       => 'WEBAPP1',
    auth_options  => dbms_macutl.g_realm_auth_participant
  );
end;
/

Con el usuario de WEBAPP1 permitido dentro del dominio, se respetarán los privilegios típicos de la base de datos Oracle del usuario, como SELECT en la tabla. Debido a que ni siquiera los privilegios SYSDBA están permitidos dentro del reino, el poderoso privilegio del sistema SELECT ANY TABLE no sirve para las tablas dentro de ese reino y, por lo tanto, su instrucción SELECT falla con un error de "privilegios insuficientes",  lo que Cersei, nuestra auditora IT, quería.

Vistas del diccionario de datos de Oracle.


Cersei y Petyr ahora son visiblemente felices; ambos obtuvieron lo que querían. Pero tienen más preguntas: ¿Cómo conocemos los distintos reinos, quiénes son los usuarios autorizados, etc.? Hay varias vistas de diccionario de datos, explica Tycho. Señala algunas importantes que son propiedad de un esquema llamado DVSYS, que se crea cuando Oracle Database Vault está activado:
  • DVSYS.DBA_DV_REALM muestra todos los reinos creados.
  • DVSYS.DBA_DV_REALM_OBJECT muestra los objetos dentro de un reino.
  • DVSYS.DBA_DV_REALM_AUTH muestra a todos los usuarios autorizados para acceder a los objetos en los reinos.

Informes de auditoría

Cersei recuerda a todos que un requisito muy importante es capturar el historial de los cambios y las infracciones, los rastros de auditoría, de tal manera que el administrador de seguridad, pero no el usuario de DBA, pueda verlos. Es posible, continúa Tycho, a través de dos clases principales de pistas de auditoría (audit trails):

  • Auditoría de configuración Esta ruta de auditoría registra los cambios en varios elementos de configuración, como los reinos creados, los usuarios autorizados y los objetos ubicados en los reinos. El recorrido está disponible como una vista DV $ CONFIGURATION_AUDIT en el esquema DVSYS. Esta política de auditoría no se puede desactivar. Todos los cambios a la configuración de Oracle Database Vault serán capturados.
  • Auditoría de cumplimiento. Esta ruta de auditoría registra las actividades realizadas en la base de datos relacionadas con Oracle Database Vault. Está disponible a través de la vista DV $ ENFORCEMENT_AUDIT en el esquema DVSYS. El Listado 4 muestra la declaración de SQL que Tycho usa para ver las acciones que causaron una violación de dominio en esta pista de auditoría. Apuntando al primer registro en la salida, muestra que el usuario de WEBAPP1 emitió la declaración
  • SELECT * FROM BRAAVOS.ACCOUNTS, el 17-DEC-15 a las 08.11.31.123646 PM y recibió un error ORA-1031 (privilegios insuficientes). Esto es cuando el usuario de WEBAPP1 aún no estaba autorizado para el reino y trató de seleccionar de la tabla AHORROS. Esta vista tiene varias columnas valiosas, incluidas OS_USERNAME, USERHOST e INSTANCE_NUMBER, que muestran el nombre de usuario del sistema operativo que emitió la instrucción, el nombre del sistema del cliente y la Id. De la instancia (para una base de datos Oracle Real Clusters de aplicaciones [Oracle RAC]) respectivamente .
Comprobación de un rastro de auditoría para las vulneraciones de dominio de la base de datos Oracle Vault
-- Listado4: Como DVADMIN
select extended_timestamp, username, action_command, returncode
from dvsys.dv$enforcement_audit
where action_name = 'Realm Violation Audit'
and action_object_name = 'BRAAVOS Schema Realm'
order by 1,2,3
/

Rules (Reglas) 


Una de las políticas permanentes de la operación de TI en Braavos es rechazar cualquier operación de lenguaje de definición de datos (DDL) durante la semana, para evitar problemas de rendimiento y posibles ataques contra la base de datos. Actualmente, esta política se aplica a través de disparadores de DDL después de nivel de esquema que simplemente generan una excepción cuando las sentencias DDL se ejecutan durante los días laborables. Pero estos disparadores son propiedad de SYS, observa Cersei, por lo que los DBA pueden potencialmente manipular el efecto de estos desencadenantes, incluso incluso suprimirlos. Para reducir la posibilidad de que una cuenta poderosa como el DBA provoque un ataque, y con un espíritu de segregación de deberes, Cersei se pregunta si sería posible hacer cumplir esta política, no a través de desencadenantes propios de SYS, y por lo tanto, imposibilitaría que el política a ser influenciada por los DBA.

-- Listado5:Como DVADMIN, Configuración de reglas en Oracle Database Vault
-- Primero crea una regla
begin
   dvsys.dbms_macadm.create_rule (
      rule_name => 'Weekday',
      rule_expr => 'to_char(sysdate,''DY'') not in
             (''MON'',''TUE'',''WED'',''THU'',''FRI'')'
          );
end;
/
-- Luego crea un conjunto de reglas
begin
   dvsys.dbms_macadm.create_rule_set(
      rule_set_name => 'WEEKDAY_RULE_SET',
      description   => 'Weekday',
      audit_options => dbms_macutl.g_ruleset_audit_fail +
                      
      enabled       => dbms_macutl.g_yes,
      eval_options  => dbms_macutl.g_ruleset_eval_any,
      fail_options  => dbms_macutl.g_ruleset_fail_silent,
      fail_message  => 'Security Doesn''t Allow This Operation on a Weekday',
      fail_code        => 20001,
      handler_options  => dbms_macutl.g_ruleset_handler_off,
      handler          => ''
   );

   dvsys.dbms_macadm.add_rule_to_rule_set(
      rule_set_name => 'WEEKDAY_RULE_SET',
      rule_name     => 'Weekday',
      rule_order    => 1
   );
end;
/

-- Cree una regla de comando que impida que la tabla truncar
begin
   dvsys.dbms_macadm.create_command_rule(
       command=> 'TRUNCATE TABLE',
       rule_set_name => 'WEEKDAY_RULE_SET',
       object_owner => 'BRAAVOS',
       object_name => '%',
       enabled => 'Y'
   );
end;   
/

Es, asegura Tycho, con reglas en Oracle Database Vault. Tycho configura la regla que se muestra en el Listado 5, utilizando los siguientes pasos:

  • Cree una regla que muestre el período permitido. Para el ejemplo, Tycho especifica que el período no es un día laborable.
  • Cree un conjunto de reglas. Tycho especifica que cuando se infringe la regla, el usuario debe obtener un error ORA-20001 con este mensaje personalizado: "La seguridad no permite esta operación en un día laborable".
  • Agregue la regla al conjunto de reglas.
  • Cree una "regla de comando" en Oracle Database Vault que impida una acción específica. Para el ejemplo, Tycho elige evitar TRUNCATE TABLE en todas las tablas del esquema de BRAAVOS.
  • Después de configurar la regla, Tycho inicia sesión como el usuario WEBAPP1. La reunión de hoy es un día laborable, por lo que emite el siguiente SQL:


SQL> truncar la tabla Braavos.t1;
tabla truncada Braavos.t1
                    *
ERROR en la línea 1:
ORA-47306: 20001: la seguridad no permite esta operación en un día laborable


La operación falla y el mensaje de salida proporciona una explicación bastante clara. La aplicación de esta regla se realiza a través de Oracle Database Vault, no desencadenadores, por lo que los usuarios de DBA no pueden alterar la configuración o ignorar esta regla. Solo los administradores de Oracle Database Vault pueden cambiarlo. Las reglas se pueden definir para cualquier tipo de cheque, explica Tycho, como verificar una dirección IP específica. Cersei no podría estar más feliz.

Games of Roles (Season 1): Controla a tus super usuarios

 

Limita la autorización solo a aquellos que lo necesiten y elimina los roles de superusuario de gran alcance con Oracle Database Vault.

Tycho, es el responsable de arquitectura de bases de datos en el banco de Braavos, hoy es día de reuniones “tensas”. En vista de varias leyes, reglamentos y mandatos como:
  •         LOPD
  •         ENS
  •         GDPR
  •         PCI/DSS

Y en menor medida:
  •         Sarbanes-Oxley
  •         HIPAA
  •         GLBA

Cersei, el auditor de TI del banco, quiere asegurarse de que los privilegios asignados a las personas se limiten a lo que realmente necesitan: nada más. Por ejemplo, los DBA de soporte de producción que administran la infraestructura de la base de datos, toman copias de seguridad, etc., deberían tener privilegios para hacer todo eso pero no tener acceso a datos como la información de la cuenta.

El rol de la base de datos "DBA", que se otorga a los DBA de Braavos para administrar la infraestructura de la base de datos, también incluye otros privilegios poderosos como la capacidad de seleccionar y eliminar de cualquier esquema cualquier esquema, incluidos los rastros de auditoría de estas actividades. Esos privilegios no pueden despojarse de ese rol; son partes integrales de la misma. Cersei quiere que los DBA pierdan esos privilegios, pero los DBA no pueden hacer su trabajo sin el rol de DBA, explica Petyr, gerente de DBA. No es que los DBA realmente usen esos privilegios para seleccionar de tablas sensibles o eliminarlos de los rastros de auditoría, por lo que tener esos privilegios no hace ninguna diferencia, argumenta Petyr.

Ha habido muchas instancias de un atacante malintencionado que usa privilegios de DBA para robar datos confidenciales e incluso de DBA falsos que roban datos y borran los rastros de auditoría, usando los privilegios de rol de DBA todopoderosos. ¿Y no suelen ser los DBA los que tienen más probabilidades de ser investigados cuando ocurre una violación de datos? le pregunta a Cersei. Sin esos privilegios, explica, su responsabilidad se reducirá drásticamente. Petyr considera esta lógica y ve de inmediato el valor de la solicitud de Cersei, pero explica que sin el rol de DBA, los DBA no pueden hacer su trabajo. Así que aquí están, preguntándose si el sabio Tycho tiene una solución.

Sí, asegura Tycho, las necesidades de Petyr y Cersei se pueden cumplir con una opción de costo adicional llamada Oracle Database Vault en Oracle Database 12c.

Separación de tareas

Es necesario abordar varios tipos de usuarios y actividades. Nuestra auditora de TI identifica cinco tipos distintos de usuarios de bases de datos y sus actividades:
  • DBA. Usuario que realiza la gestión de la infraestructura de la base de datos, como inicio / apagado, copia de seguridad, etc.
  • Gestor de seguridad: Usuario que realiza actividades como crear usuarios y cambiar contraseñas. Actualmente, los DBA realizan la administración de cuentas, y Cersei desea que alguien en seguridad de TI, no un DBA, la administre.
  • Auditor: Usuario que establece la separación de funciones y controles de las actividades realizadas por varios usuarios. Esto debería ser realizado por el departamento de cumplimiento de TI, insiste Cersei.
  • Usuario del esquema empresarial. Cuenta de usuario que contiene tablas de datos reales y otros objetos que son compatibles con la empresa.
  • Usuario regular Cuenta de usuario conectada a la base de datos desde aplicaciones o un usuario humano especificado que permite ver y manipular datos en esquemas, pero no los posee.


Es vital, insiste Cersei, que los privilegios que disfrutan estos usuarios no se solapan. Por ejemplo, el usuario de DBA debería poder iniciar y detener la base de datos, pero no crear usuarios ni seleccionarlos de ninguna tabla en los esquemas comerciales. De manera similar, el usuario del administrador de la cuenta debería poder crear usuarios, pero no iniciar y detener la base de datos y no seleccionar ningún dato de una tabla (a menos que, por supuesto, se lo autorice explícitamente). El usuario del auditor debe ser el único que vea los datos de auditoría pero no pueda crear usuarios. En otras palabras, a todos se les deben otorgar precisamente los privilegios que necesitan para hacer su trabajo y no un poco más, sea o no sea su intención usar los privilegios.

Configuración

Es muy fácil separar los usuarios y las actividades con Oracle Database Vault, asegura Tycho, mientras comienza a configurar una demostración para los visitantes de su oficina. Primero, elige a los usuarios para diversos tipos de actividades. Para la primera categoría, los usuarios de DBA como SYS, SYSTEM y otros DBA nombrados ya están presentes. Para crear los tipos de usuario 4 y 5, el esquema empresarial y los usuarios normales, ejecuta el script en setup.sql. El esquema que contiene todos los datos de usuario del banco se denomina BRAAVOS. El usuario que se conecta a la base de datos para realizar transacciones es WEBAPP1. La tabla CUENTAS en el esquema BRAAVOS almacena los datos en las cuentas de ahorro. Tycho rompe la configuración restante en nueve pasos, para cubrir situaciones en las que Oracle Database Vault puede o no estar actualmente instalado o configurado y donde puede usarse en bases de datos convencionales y conectables.
  • Paso 1. Para las otras dos categorías de usuarios, administrador de cuentas y auditor, Tycho crea dos usuarios especiales para su uso por Oracle Database Vault, denominados DVACCMGR y DVADMIN, respectivamente. El usuario de DVADMIN administrará la instalación completa de Oracle Database Vault.
-- Como SYSDBA
create user dvadmin identified by dvadmin; 
create user dvaccmgr identified by dvaccmgr; 
grant create session to dvaccmgr, dvadmin;
  • Paso 2 En caso de que Oracle Database Vault no se haya configurado, Tycho comprueba mediante el siguiente SQL:

-- Como SYSDBA
SQL> select * from dba_dv_status; 

  • Paso 3. La salida confirma que la opción no se ha configurado. Durante la instalación de algunas bases de datos, es posible que los DBA hayan instalado la opción Oracle Database Vault pero nunca la hayan configurado. Para aquellas bases de datos en las que Oracle Database Vault nunca estuvo instalado, Tycho usa el siguiente comando para instalar no solo la opción Oracle Database Vault sino también para configurarla en un solo paso.

dbca -silent -configureDatabase -sourceDB ACMEDB -addDBOption OMS,DV -olsConfiguration true -dvConfiguration true -dvUserName dvadmin -dvUserPassword dvadmin -dvAccountManagerName dvaccmgr -dvAccountManagerPassword dvaccmgr

Tycho realiza los cambios apropiados a las opciones, como el nombre de la base de datos en las bases de datos en las que ejecuta este comando. Aquí está el resultado: 

Preparing to Configure Database
1% complete
3% complete
18% complete
Adding Oracle Label Security
19% complete
20% complete
21% complete
54% complete
Adding Oracle Database Vault
90% complete Completing Database Configuration
100% complete
Look at the log file "C:\app\oracle\cfgtoollogs\dbca\ACMEDB\ ACMEDB.log" for further details. 

La última línea muestra la ubicación del archivo donde se registrarán los detalles de la salida. Si la opción ya estaba instalada en la base de datos, explica Tycho, el comando habría salido sin hacer nada y la salida lo habría hecho referencia. 

  •  Paso 4. Algunas bases de datos ya tenían Oracle Database Vault instalado pero no configurado. Para ellos, Tycho configura los dos usuarios especiales para administrar Oracle Database Vault y las cuentas de usuario DVADMIN y DVACCMGR, ejecutando el siguiente SQL como usuario de SYS:

begin dvsys.configure_dv ( dvowner_uname => 'dvadmin', dvacctmgr_uname => 'dvaccmgr' ); end; /
  • Paso 5. A continuación, Tycho ejecuta el script utlrp.sql en el directorio rdbms / admin bajo Oracle Home como SYS.

SQL> @ utlrp.sql
  • Paso 6. Para aquellas bases de datos en las que Oracle Database Vault se instaló pero no se configuró, Tycho se conecta como usuario de DVADMIN y habilita Oracle Database Vault.

SQL> exec dbms_macadm.enable_dv
  • Paso 7. Tycho reinicia cada base de datos. 
  • Paso 8. Confirma que la opción Oracle Database Vault está configurada y habilitada, ejecutando el siguiente SQL:

SQL> select * from dba_dv_status;

  • Paso 9. Para las bases de datos multitenant, Tycho ejecuta todos los pasos anteriores en el contenedor raíz (la base de datos del contenedor). Ejecuta los pasos 4, 5 y 6 en cada base de datos conectable donde se necesita Oracle Database Vault, y cierra y vuelve a abrir todas las bases de datos conectables habilitadas para Oracle Database Vault.

Gestión de usuarios


Con Oracle Database Vault habilitado, Tycho demuestra el primer efecto para Cersei y Petyr. Como el usuario SYS (Tycho enfatiza que SYS debe usarse solo cuando se demuestran los controles, no en el día a día), intenta crear un usuario llamado TEST:



create user test identified by test;
                              *
ERROR at line 1:
ORA-01031: insufficient privileges



El usuario SYS, que tenía todos los privilegios para crear un nuevo usuario antes, falla con un error ORA-1031. SYS ahora puede realizar actividades típicas de administración de bases de datos pero no administrar ningún usuario. Para administrar a los usuarios, Tycho inicia sesión como el usuario de Oracle Database Vault para la gestión de cuentas-DVACCMGR-y ejecuta este SQL:



SQL> conn dvaccmgr/dvaccmgr
SQL> create user test identified by test;

User created.


Además, el usuario de DVACCMGR puede realizar otras funciones de administración de usuarios, como cambiar contraseñas y otorgar privilegios de CREATE SESSION. Sin embargo, DVACCMGR no puede seleccionar de ninguna tabla ni cerrar la base de datos. Este usuario de DVACCMGR debe ser controlado por el equipo del administrador de cuentas y no por el equipo de DBA, por lo que los DBA no pueden administrar a los usuarios, exactamente lo que Cersei quería. Un requisito satisfecho, quedan más por abordar, en nuestra segunda parte del artículo:

Games of Roles (Season 2): Controla a tus super usuarios