Oracle Database 12c: Usuarios, Roles y

Anuncio
Oracle Database 12c: Usuarios, Roles y Privilegios
Deiby Gómez
Oracle Linux Certified Implementation Specialist.
Oracle Database 11g Administrator Certified Professional.
Oracle Database 12c Administrator Certified Professional.
Oracle Service Oriented Architecture Infrastructure Implementation Certified Expert.
Oracle Exadata Database Machine X3 Administrator
Oracle RAC 11g and Grid Infrastructure Administrator
@hdeiby
www.oraclefromguatemala.com.gt
Arquitectura de Oracle Database 12c
Container Database (CDB)
Pluggable Database (PDB)
Arquitectura de Oracle Database 12c
Arquitectura de Oracle Database 12c
¿En dónde se crean los usuarios?
¿En dónde se crean los privilegios?
¿En dónde se crean los roles?
Una vez creados, ¿Cómo funcionan?
Arquitectura de Oracle Database 12c
Metadatos de Oracle…
… mezclados con los metadatos del usuario.
Arquitectura de Oracle Database 12c
Cada PDB tiene su propio diccionario de Datos
Arquitectura de Oracle Database 12c
CDB y PDB
Común y Local
Oracle Database 12c: Común y Local
Común
Usuarios Comunes
Roles Comunes
Privilegios asignados comúnmente
Local
Usuarios Locales
Roles Locales
Privilegios asignados localmente
Nota: Roles comunes pueden contener privilegios locales y comunes
Oracle Database 12c: Común y Local
Privilegio cedido comúnmente
Privilegio cedido localmente
Privilegio cedido localmente
Oracle Database 12c: Común y Local
Oracle Database 12c: Común y Local
Usuarios Comunes
Roles Comunes
C##<nombre>
c##<nombre>
CONTAINER=ALL
Común
Privilegios asignados comúnmente
_common_user_prefix
Local
CONTAINER=ALL
http://www.oraclefromguatemala.com.gt/?p=388
Usuarios Locales
Roles Locales
Privilegios asignados comúnmente
CONTAINER=CURRENT
Oracle Database 12c: Común y Local
Usuario y Roles
COMMON | LOCAL
PDB | CDB$ROOT
CONTAINER=ALL | CURRENT | NULL
Oracle Database 12c: Común y Local
Creación y Eliminación de Usuarios y Roles
Toda operación de tipo común debe realizarse en el CDB$ROOT,
utilizando la cláusula CONTAINER=ALL y con un usuario Común
Toda operación de tipo local debe realizarse en la PDB y
utilizando la cláusula CONTAINER=CURRENT
Sin clausula CONTAINER
Si la operación se realiza en:
• PDB: será operación LOCAL
• CDB$ROOT: será operación COMUN
Bug Drop User - 1619287.1 http://www.oraclefromguatemala.com.gt/?p=384
Oracle Database 12c: Común y Local
Escenarios - Creación y Eliminación de Usuarios
Bug Drop User - 1619287.1 http://www.oraclefromguatemala.com.gt/?p=384
Arquitectura de Oracle Database 12c
Manejo de Privilegios
Toda operación de tipo común debe realizarse en el CDB$ROOT,
utilizando la cláusula CONTAINER=ALL y con un usuario común
Toda operación de tipo local debe realizarse en la PDB y
utilizando la cláusula CONTAINER=CURRENT
Sin clausula CONTAINER
Si la operación se realiza en:
• PDB: será operación LOCAL
• CDB$ROOT: será operación LOCAL
Oracle Database 12c: Común y Local
Usuario y Role
COMMON | LOCAL
PDB | CDB$ROOT
CONTAINER=ALL | CURRENT | NULL
http://www.youtube.com/watch?v=rm6GjQZZQKs
Oracle Database 12c: Común y Local
Usuario y Role
COMMON | LOCAL
PDB | CDB$ROOT
CONTAINER=ALL | CURRENT | NULL
http://www.youtube.com/watch?v=8GPIFucptAc
Oracle Database 12c: Común y Local
Privilegio cedido con
COMMON | LOCAL
PDB | CDB$ROOT
CONTAINER=ALL | CURRENT | NULL
http://www.youtube.com/watch?v=C5RFy7NAeEs
Conclusiones
Con usuarios y Roles: La clausula CONTAINER es opcional,
domina el contenedor donde se realice la operación.
Operaciones en una PDB son realizadas como normalmente se
hacían en <12
¿Es una operación común?
Si ->CDB$ROOT
No->PDB
Trabajando usuarios/roles el contenedor tiene mucha importancia
y la clausula CONTAINER no.
Trabajando con privilegios, la clausula CONTAINER tiene mucha
importancia.
Deiby Gómez
@hdeiby
www.oraclefromguatemala.com.gt
Descargar