Sunteți pe pagina 1din 15

Nombre del maestro: Roberto Zamudio Portilla

Nombre de la Materia: Taller de Base de Datos

Nombre del Alumno: Jorge Alberto Carrera De la O

Av. Tecnolgico S/N, Col. Los ngeles C.P. 95400, Cosamaloapan, Ver. Tel. (288) 882-31 00, 882-03-33 www.itsco.edu.mx

En MySql para poder manejar usuarios desde el mismo, crearlos, modificar permisos, eliminarlos y manipular todos sus datos se deben contar con permisos de administrador, por lo general es root pero cualquier cuenta con privilegios GRANT es capaz de crear nuevos usuarios.
a) Crear usuarios

Primero nos ubicamos en la BD de MySQL USE mysql; Luego creamos el usuario con todos los privilegios: GRANT permisos ON mi_bd.mi_tabla TO 'usuario'@'mi_host' IDENTIFIED BY 'clave' WITH GRANT OPTION; En Esta lnea tenemos lo siguiente: permisos: permisos del usuario. mi_bd: la base de datos. mi_tabla: la tabla donde tendr acceso el usuario. administrador: nombre del usuario. mi_host: direccin o nombre del host. clave: clave del usuario. GRANT OPTION: esto es para conceder al usuario la herencia, es decir, que el usuario que estamos creando pueda conceder a otros usuarios sus mismos permisos. (Esto solo se utiliza para cuentas de administradores.
Av. Tecnolgico S/N, Col. Los ngeles C.P. 95400, Cosamaloapan, Ver. Tel. (288) 882-31 00, 882-03-33 www.itsco.edu.mx

En caso de tener la base de datos en el equipo local colocamos en la direccin "localhost", si se desea que el usuario tenga acceso a todas las tablas en todas las bases de datos se coloca un ' * ', que significa todo.

GRANT permisos ON *.* TO 'usuario'@'localhost' IDENTIFIED BY 'clave' WITH GRANT OPTION;

Y si queremos que sea en cualquier direccin y no solo en el equipo local (localhost), utilizamos el ' % ', que significa todo para lo que es la direccin del host en MySQL.

GRANT permisos ON *.* TO 'usuario'@'%' IDENTIFIED BY 'clave' WITH GRANT OPTION;


b) Asignar privilegios a usuarios

Los permisos que generalmente se utilizan son los siguientes: SELECT INSERT UPDATE CREATE DROP DELETE

Para crear con algunos privilegios:

GRANT SELECT, INSERT, UPDATE ON *.* TO 'usuario'@'localhost' IDENTIFIED BY 'clave' WITH GRANT OPTION;

Av. Tecnolgico S/N, Col. Los ngeles C.P. 95400, Cosamaloapan, Ver. Tel. (288) 882-31 00, 882-03-33 www.itsco.edu.mx

Para crear un usuario con todos los privilegios seria lo siguiente:

GRANT ALL PRIVILEGES ON *.* TO 'usuario'@'localhost' IDENTIFIED BY 'clave' WITH GRANT OPTION;
C) Eliminar privilegios Para eliminar los privilegios se hace de la siguiente forma con el REVOKE:

REVOKE ALL PRIVILEGES mi_bd.mi_tabla FROM usuario;

Av. Tecnolgico S/N, Col. Los ngeles C.P. 95400, Cosamaloapan, Ver. Tel. (288) 882-31 00, 882-03-33 www.itsco.edu.mx

a) Crear usuarios

Conectado como el usuario SYS, creamos un usuario y su clave as: SQL> CREATE USER ahernandez IDENTIFIED BY ahz DEFAULT TABLESPACE users; Si no se indica un Tablespace por defecto, el usuario toma el que est definido en la BD (generalmente el SYSTEM). Para modificar el Tablespace default de un usuario se hace de la siguiente manera: SQL> ALTER USER jperez DEFAULT TABLESPACE datos; Tambin podemos asignar a los usuarios un Tablespace temporal donde se almacenan operaciones de ordenamiento. Estas incluyen las clusulas ORDER BY, GROUP BY, SELECT DISTINCT, MERGE JOIN, o CREATE INDEX (tambin es utilizado cuando se crean Tablas temporales). SQL> CREATE USER jperez IDENTIFIED BY jpz DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp; Adicionalmente, a cada usuario se puede asignar a un profile o perfil, que tiene dos propsitos principalmente: Limita el uso de recursos, lo que es recomendable, por ejemplo en ambientes de Desarrollo Garantiza y refuerza reglas de Seguridad a nivel de cuentas

Av. Tecnolgico S/N, Col. Los ngeles C.P. 95400, Cosamaloapan, Ver. Tel. (288) 882-31 00, 882-03-33 www.itsco.edu.mx

Ejemplos, cuando se crea el usuario o asignar un perfil existente: SQL> CREATE USER jperez IDENTIFIED BY jpz DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp PROFILE resource_profile; SQL> ALTER USER jperez PROFILE perfil_desa;

b) Asignar privilegios a usuarios

En Oracle existen dos tipos de privilegios de usuario. 4.1 System: Que permite al usuario hacer ciertas tareas sobre la BD, como por ejemplo crear un Tablespace. Estos permisos son otorgados por el administrador o por alguien que haya recibido el permiso para administrar ese tipo de privilegio. Existen como 100 tipos distintos de privilegios de este tipo. En general los permisos de sistema, permiten ejecutar comandos del tipo DDL (Data definition Language), como CREATE, ALTER y DROP o del tipo DML (Data Manipulation Language). Oracle 10g tiene mas de 170 privilegios de sistema los cuales pueden ser vistos consultando la vista: SYSTEM_PRIVILEGE_MAP Entre todos los privilegios de sistema que existen, hay dos que son los importantes: SYSDBA y SYSOPER. Estos son dados a otros usuarios que sern administradores de base de datos. Para otorgar varios permisos a la vez, se hace de la siguiente manera: SQL> GRANT CREATE USER, ALTER USER, DROP USER TO ahernandez;

Av. Tecnolgico S/N, Col. Los ngeles C.P. 95400, Cosamaloapan, Ver. Tel. (288) 882-31 00, 882-03-33 www.itsco.edu.mx

4.2 Object: Este tipo de permiso le permite al usuario realizar ciertas acciones en objetos de la BD, como una Tabla, Vista, un Procedure o Funcin, etc. Si a un usuario no se le dan estos permisos slo puede acceder a sus propios objetos (vase USER_OBJECTS). Este tipo de permisos los da el owner o dueo del objeto, el administrador o alguien que haya recibido este permiso explcitamente (con Grant Option). Por ejemplo, para otorgar permisos a una tabla Ventas para un usuario particular: SQL> GRANT SELECT,INSERT,UPDATE, ON analista.venta TO jperez; Adicionalmente, podemos restringir los DML a una columna de la tabla mencionada. Si quisiramos que este usuario pueda dar permisos sobre la tabla Factura a otros usuarios, utilizamos la clusula WITH GRANT OPTION. Ejemplo: SQL> GRANT SELECT,INSERT,UPDATE,DELETE ON venta TO mgarcia WITH GRANT OPTION;
C) Eliminar privilegios

Si queremos quitar un privilegio a uno de estos objetos haremos lo mismo que con GRANT pero utilizando la sentencia REVOKE.
SQL > REVOKE ALL ON tabla_usuarios FROM david

Av. Tecnolgico S/N, Col. Los ngeles C.P. 95400, Cosamaloapan, Ver. Tel. (288) 882-31 00, 882-03-33 www.itsco.edu.mx

a) Crear usuarios

Es posible crear LOGIN y USERS en sql server, funcionan en Sql Server 2005 y 2008. La diferencia entre un USUARIO (USER) y LOGIN es que el usuario es solo una asignacin de un nombre de acceso que se le da a determinado LOGIN hacia una base de datos ya que el login es nicamente la combinacin de un Nombre de Usuario y un Password para acceder a la instancia de Sql, por ejemplo: El usuario de la instancia de la base de datos principal puede s er usuario1 con password passusu1, pero este usuario al crearlo solo tiene permisos de acceso sobre la instancia de sql server y no tiene ninguna base de datos asociada (claro a menos de que cree una estando ya en una sesion, en ese caso queda asociada a ese usuario). script crear login: USE [master] GO CREATE LOGIN [usuario1] WITH PASSWORD=Npassusu1 GO y listo el usuario queda creado, ahora lo vamos a asociar a una base de datos que se llama TESTDB USE [TESTDB] GO CREATE USER [usuario1_test] FOR LOGIN [usuario1] GO

Av. Tecnolgico S/N, Col. Los ngeles C.P. 95400, Cosamaloapan, Ver. Tel. (288) 882-31 00, 882-03-33 www.itsco.edu.mx

De esta forma se crea el usuario en la base de datos TESTDB para el LOGINusuario1, aunque es importante sealar que aunque se le dio el nombre de usuario distinto al LOGIN, este puede ser el mismo.

b) Asignar privilegios a usuarios

Funciones de servidor Las funciones de servidor se definen a nivel de servidor y existen fuera de los usuarios Bases de datos. Slo hay fijados funciones de servidor, por lo que no se puede agregar, eliminar o modificar la funcin del servidor. Slo se pueden aadir usuarios como miembro de un servidor Roles. Hay siete funciones fijas de servidor:
sysadmin serveradmin setupadmin securityadmin processadmin dbcreator diskadmin

Los miembros de la funcin fija de servidor sysadmin pueden realizar cualquier actividad en SQL Server 7.0 y completo control sobre todas las funciones de base de datos. Los miembros de la funcin del servidor serveradmin pueden cambiar del servidor configuracin, parmetros y cerrar el servidor. Los miembros de la funcin del servidor setupadmin puede administrar servidores vinculados (aadir o quitar servidores vinculados), administrar la replicacin, gestionar
Av. Tecnolgico S/N, Col. Los ngeles C.P. 95400, Cosamaloapan, Ver. Tel. (288) 882-31 00, 882-03-33 www.itsco.edu.mx

almacenado extendido procedimientos, y ejecutar algunos procedimientos almacenados del sistema, tales como sp_serveroption. Los miembros de la funcin de servidor securityadmin pueden crear y gestionar un servidor inicios de sesin y de auditora, y leer los registros de errores. Los miembros de la funcin processadmin servidor puede gestionar los procesos que se ejecuta en SQL Server. Los miembros de la funcin de servidor dbcreator pueden crear, modificar y cambiar el tamao de bases de datos. Los miembros de la funcin del servidor diskadmin pueden administrar archivos de disco.
C) Eliminar privilegios

Para agregar un inicio de sesin como miembro de una funcin de servidor fija, puede utilizar sp_addsrvrolemember sistema de procedimiento almacenado. Esta es la sintaxis: sp_addsrvrolemember [@loginame =] 'login', [@rolename =] 'role'
Donde:
@loginame - es un inicio de sesin de SQL Server o una cuenta de usuario de Windows NT. @rolename - es el nombre de la funcin fija de servidor.

Para quitar un inicio de sesin de SQL Server o un usuario de Windows NT o grupo de un fijo funcin de servidor, puede utilizar el procedimiento almacenado del sistema sp_dropsrvrolemember

Av. Tecnolgico S/N, Col. Los ngeles C.P. 95400, Cosamaloapan, Ver. Tel. (288) 882-31 00, 882-03-33 www.itsco.edu.mx

Esta es la sintaxis: sp_dropsrvrolemember [@loginame =] 'login', [@rolename =] 'role' Donde:


@loginame - es el nombre del usuario a quitar. @rolename - es el nombre de la funcin fija de servidor.

Av. Tecnolgico S/N, Col. Los ngeles C.P. 95400, Cosamaloapan, Ver. Tel. (288) 882-31 00, 882-03-33 www.itsco.edu.mx

a) Crear usuarios

CREAR USUARIO nombre de usuario [ CON [ SYSID uid ] [ PASSWORD 'palabra clave' ] ] [ CREARDB | NOCREARDB ] [ CREARUSUARIO | NOCREARUSUARIO ] [ EN EL GRUPO nombre de grupo [, ...] ] [ VALIDO HASTA 'abstime' ]

nombre de usuario
El nombre del usuario.

uid
La ordenSYSID puede ser usada para escoger el identificador de usuario PostgreSQL del usuario que se esta creando. No es nada necesario que corresponda a los identificadores de usuarios de UNIX , pero algunas personas eligen mantener los nmeros iguales. Si no se especifica, se usar por defecto el nmero ms alto asignado ms uno.

palabra clave
Av. Tecnolgico S/N, Col. Los ngeles C.P. 95400, Cosamaloapan, Ver. Tel. (288) 882-31 00, 882-03-33 www.itsco.edu.mx

Pide la palabra clave del usuario. Si no va a usar autentificacin por palabra clave puede omitir esta opcin, de otra manera el usuario no ser capza de conectar con el servidor de autentifacin de palabras clave. Mire en pg_hba.conf(5) o la Guia del administrador para ms detalles de como usar mecanismos de autentificacin.

CREATEDB, NOCREATEDB
Estas rdenes definen la capacidad de un usuario para crear bases de datos. Si se especifica CREATEDB, el usuario definido tendr permiso para crear sus propias bases de datos. Usando NOCREATEDB se denegar a un usuario la capacidad de crear bases de datos. Si se omite esta orden, NOCREATEDB se usa por defecto.

CREATEUSER, NOCREATEUSER
Estas ordenes determinan si a un usuario se le permitir crear nuevos usuarios. Esta opcin harn del usuario un superusuario que podr pasar por encima de todas las restriciones de acceso. Si se omite esta orden se coger la orden de NOCREATEUSER como valor por defecto del usuario.

nombre de grupo
El nombre de un grupo dentro del cual se coloca al usuario como un nuevo miembro.

abstime
La orden VALIDO HASTA pone un valor absoluto a la fecha en la que la palabra clave del usuario pierde su validez. Si se omite esta orden el login valdr para siempre.

Resultados
CREAR USUARIO
Mensaje devuelto si el comando se completa satisfactoriamente.

Av. Tecnolgico S/N, Col. Los ngeles C.P. 95400, Cosamaloapan, Ver. Tel. (288) 882-31 00, 882-03-33 www.itsco.edu.mx

CREAR USUARIO aadir un nuevo usuario a un ejemplo de PostgreSQL. Vease la Guia del Administrador para ms informacin sobre el manejo de usuarios y la autentificacin. Debe ser un superusuario de bases de datos para usar este comando.

Crear un usuario sin palabra clave:


CREAR USUARIO jonathan

Crear un usuario con palabra clave:


CREAR USUARIO david CON PALABRA CLAVE 'jw8s0F4'

Crear un usuario con una palabra clave, cuya cuenta es vlida hasta el final del 2001. Notese que un segundo dentro del ao 2002 la cuenta no es valida:
CREAR USUARIO miriam CON PALABRA CLAVE 'jw8s0F4' VALIDA HASTA '1 En 2002'

crear una cuenta con la que el usuario pueda crear bases de datos:
CREAR USUARIO manuel CON PALABRA CLAVE 'jw8s0F4' CREARDB

b) Asignar privilegios a usuarios

PosgreSQL permite crear provilegios por tabla en la base de datos de manera que un usuario en particular pueda crear consultas SELECT pero no pueda ejecutar el resto UPDATE, DELETE, INSERT.. el problema de esto es que pasa si tienes una BD con muchas
Av. Tecnolgico S/N, Col. Los ngeles C.P. 95400, Cosamaloapan, Ver. Tel. (288) 882-31 00, 882-03-33 www.itsco.edu.mx

tablas, tendrias q generar la sentencia grant por cada tabla GRANT SELECT ON TABLE public.table to u_read; para solucionar esto dejo aqui una consulta que genera todas las sentencias GRANT para cada tabla dentro de la BD

select 'GRANT SELECT ON TABLE '||schemaname||'.'||tablename||' TO u_read;' from pg_tables where schemaname in ('public') order by schemaname, tablename;

C) Eliminar privilegios

Revocar privilegio para introducir al pblico en las pelculas de la tabla:


REVOKE INSERT ON films FROM PUBLIC;

Revocar todos los privilegios de usuario manuel el tipo de vista: REVOKE ALL PRIVILEGES ON kinds FROM manuel;

Tenga en cuenta que esto significa en realidad "revocar todos los privilegios que concede". Revocar la pertenencia a los administradores de funciones del usuario joe: REVOKE admins FROM joe;

Av. Tecnolgico S/N, Col. Los ngeles C.P. 95400, Cosamaloapan, Ver. Tel. (288) 882-31 00, 882-03-33 www.itsco.edu.mx

S-ar putea să vă placă și