4,79/5
(16 opiniones)
|16142 alumnos|Fecha publicación: 01/02/2006
Al crear la base de datos se han creado varios usuarios de administración automáticamente (SYS, SYSTEM, SYSMAN, DBSNMP), y otros muchos usuarios (SCOTT, Anonymous, ...) están creados pero tienen sus cuentas bloqueadas y no pueden conectarse. Las cuentas están bloqueadas por razones de seguridad, ya que un usuario mal intencionado, podría conectarse a la base de datos con las claves por defecto y consultar o modificar la información de la misma.
Desde la página de administración se tiene acceso a las páginas para la gestión de los "Usuarios y privilegios"


Desde un punto de vista práctico vamos a partir del hecho de que para poder operar sobre la base de datos hay que tener un usuario y clave.
La mejor forma de conocer cuales son los usuarios presentes en la base de datos es consultando este apartado directamente desde la consola, y como vemos hay 28 aunque la mayoría tienen sus cuentas bloqueadas y sus claves han caducado.

Desde esta página se pueden "Crear", "Editar" y "Suprimir" usuarios.
GeneralLa mínima información necesaria para crear un usuario es asignarle un nombre y contraseña, el resto de valores opcionales toman valores por defecto, o bien cuentan con listas para ayudar en su selección.

Se pueden editar las características del usuario "Scott" para:
ver el tablespace por defecto que tiene asignado
ejecutar la acción de desbloquear la cuenta
ver los roles y privilegios que tiene asignados. Mediante los privilegios asignados al usuario, el SGBDR controla los objetos de la base de datos a los que puede acceder, el nivel de acceso que tiene sobre los objetos, y la autorización para crear nuevos objetos. Para facilitar la gestión de los privilegios se agrupan en roles que pueden ser asignados en grupo a los usuarios.
...
Privilegios del sistemaLos privilegios del sistema otorgan al usuario la capacidad para crear, modificar y eliminar los objetos de la base de datos.
Como se ve en la siguiente imagen, el usuario Scott tiene asignada la utilización ilimitada de su tablespace.

Los privilegios del sistema se pueden agrupar en:
Privilegios para el manejo de objetos (tablas, índices, disparadores, secuencias, vistas, paquetes, procedimientos, funciones, ..), y que permiten su creación, modificación o borrado.
Privilegios para realizar operaciones sobre el sistema (auditar actividad de la base de datos, generar estadísticas,...)
Si se le retira un privilegio a un usuario esto no tiene efectos en cascada, es decir, se mantendrán los objetos que pudiera haber creado y las concesiones que pudiera haber realizado a otros usuarios.
Como ejercicio has de revisar la lista de privilegios del sistema, que aunque es muy extensa, verás que sus nombres son totalmente descriptivos de su significado.
Privilegios sobre objetosUna vez que se ha creado un objeto en la base de datos, éste puede ser administrado por su creador o por cualquier usuario que tenga el privilegio ANY PRIVILEGE.
Los privilegios sobre los objetos pueden ser concedidos a otros usuarios con el objeto de permitirles accederlos y manipularlos, o conceder los privilegios a otros usuarios.
Los privilegios sobre los objetos suelen ser para insertar, modificar, borrar o consultar. Aunque también son necesarios para poder ejecutar una unidad de programa almacenada en la base de datos o referenciarlos en una clave ajena, EXECUTE y REFERENCE respectivamente.
Por ejemplo, se puede agregar un privilegio al usuario "Scott" relativo un "objeto procedimiento" del usuario SYS (SYS.APS_VALIDATE y SYS.DBMS_FEATURE_PARTITION_SYSTEM) para permitir que los pueda ejecutar "Execute"

Cuando hay muchos usuarios y objetos, la concesión de privilegios se hace pesada y tediosa, para simplificar esta tarea se han desarrollado los roles.
Un rol agrupa bajo un nombre una lista de privilegios, y puede ser asignado directamente a los usuarios.

Desde el nodo de Roles se pueden "Crear", "Editar" y "Suprimir".

Seleccionando por ejemplo el rol CONNECT se pueden ver los privilegios del sistema que agrupa. Como ejercicio compara el rol CONNECT con el rol RESOURCE y observa cuál es la diferencia entre ambos.
Como se puede observar, al crear la base de datos se han creado numerosos roles. Son de destacar tres que se han mantenido por compatibilidad con versiones anteriores y que pueden ser de gran utilidad:
CONNECT, que asigna los privilegios necesarios para poder realizar una conexión a la base de datos y crear objetos sencillos.
RESOURCE, que permite crear todo tipo de objetos.
Todos estos roles están accesibles para ser asignados a los usuarios.
Hay 16 opiniones. Opina sobre este curso.
| Cursos | Valoración | Alumnos | Vídeo | |
|---|---|---|---|---|
|
PHP y MySQL. Aplicaciones Web: programación PHP I (quinta parte) Programación de aplicaciones Web con PHP y MySQL. Ahora estudiaremos el Lenguaje de programación PHP. Aprende ahora las formas de escribir las etiquetas ... [02/12/08] |
|
1.076 | ||
|
Generadores de código Necesitamos construir proyectos en menor tiempo, con calidad y utilizando metodologias actuales, por eso te proponemos una serie de consejos, normas y cualidades de est... [24/01/06] |
|
2.258 | ||
|
SQL SQL (Structured Query Language) es un lenguaje de programación para acceder y manipular bases de datos. SQL surgió de un proyecto de IBM en el que investigaba e... [10/05/04] |
|
34.866 | ||
Publicar en
del.icio.us
digg
meneame