ROLES

ROLES


  • Como crear un usuario en sql server....


BM Cloud Application Performance Management

En Microsoft SQL Server, debe crear un usuario en el que se ejecuta el agente y otorgar permisos al usuario para supervisar Microsoft SQL Server. El proceso de otorgar permisos es el mismo para Microsoft SQL Server 2005, o posterior.

Antes de empezar

Instale el agente de Microsoft SQL Server. Para crear un usuario y otorgarle permisos, debe ser administrador de base de datos con el rol de autorización sysdamin.

Acerca de esta tarea

Utilice el procedimiento siguiente para determinar si un usuario de SQL Server existente tiene permisos suficientes para supervisar Microsoft SQL Server:
Utilice el procedimiento siguiente para otorgar permisos:
  • Otorgar los permisos necesarios para la recopilación de datos
  • Otorgar permiso a la clave de registro Perflib para recopilar datos para conjuntos de datos nuevos.

Comprobación de los permisos de un usuario de SQL Server existente

Puede ejecutar la herramienta de programa de utilidad koqVerifyPerminssions.exe para comprobar si un usuario de SQL Server existente tiene permisos suficientes relacionados con bases de datos de SQL Server.

Acerca de esta tarea

La herramienta de programa de utilidad koqVerifyPerminssions.exe devuelve el mensaje PASS si el usuario tiene el rol sysadmin o los permisos necesarios mínimos. El resultado de la comprobación detallada se registra en koqVerifyPermissions_log.
A continuación se enumeran los permisos mínimos:
  • Los permisos para el servidor debe incluir Ver estado de servidor, Ver cualquier base de datos y Ver cualquier definición.
    Estos permisos de nivel de servidor son obligatorios.
  • Para todas las bases de datos del sistema y las bases de datos definidas por el usuario para la supervisión, la pertenencia de rol de base de datos debe incluir public y db_owner.
    El permiso db_owner se requiere para recopilar datos para los siguientes conjuntos de datos:
    • Conjunto de datos de detalles de servidor
    • Conjunto de datos de detalles de base de datos
    • Conjunto de datos de duplicación de base de datos
    • Conjunto de datos de resumen de servidor
    • Conjunto de datos de resumen de trabajos
  • Para la base de datos msdb, la pertenencia de rol de base de datos debe incluir db_datareader, SQLAgentReaderRole ySQLAgentUserRole. Estos permisos son necesarios para el conjunto de datos Detalles de trabajo.

Procedimiento

  1. Inicie el indicador de mandatos y vaya al siguiente directorio del programa de utilidad.
    • Para agentes de 64 bits, inicio_agente\TMAITM6_x64
    • Para agentes de 32 bits, inicio_agente \TMAITM6
    donde inicio_agente es el directorio de instalación del agente.
  2. Ejecute koqVerifyPerminssions.exe proporcionando los parámetros:
    koqVerifyPermissions.exe -S nombre_instancia -U nombre_usuario -P contraseñaCopiar
    Donde:
    • nombre_instancia es el nombre de instancia de SQL Server.
    • nombre_usuario es el nombre de usuario verificado por la herramienta de programa de utilidad.
    • contraseña es la contraseña del usuario. Este parámetro es necesario si se proporciona nombre_usuario.
    NotaSi no se proporciona nombre_usuario y contraseña, se utiliza el usuario predeterminado que inicia sesión en el sistema. Ejemplo: NT AUTHORITY\SYSTEM.

Resultados

El resultado de la comprobación detallada está disponible en koqVerifyPermissions_log en el directorio siguiente:
  • Para agentes de 64 bits, inicio_agente\TMAITM6_x64\logs
  • Para agentes de 32 bits, inicio_agente \TMAITM6\logs
Donde inicio_agente es el directorio de instalación del agente.

Creación de un ID de usuario de SQL Server con autenticación de Windows

Cree un usuario con la autenticación de Windows y asígnele los roles y permisos necesarios.

Procedimiento

Para crear un usuario, realice los pasos siguientes:
  1. En SQL Server Management Studio, abra Explorador de objetos.
  2. Pulse nombre_instancia-servidor > Seguridad > Inicios de sesión.
  3. Pulse con el botón derecho del ratón Inicios de sesión y seleccione Inicio de sesión nuevo.
  4. En el campo Nombre de inicio de sesión de la página General, escriba el nombre de un usuario de Windows.
  5. Seleccione Autenticación de Windows.
  6. Dependiendo del rol y los permisos que desee asignar a este usuario, complete una de las tareas siguientes:
    Importantede forma predeterminada, al nuevo ID de inicio de usuario se le asigna el rol public.
  7. Pulse Aceptar.

Resultados

Se creará un usuario con el rol public predeterminado y los permisos que le haya asignado, y se visualizará en la lista Inicios de sesión.

Creación de un ID de usuario de SQL Server con autenticación de SQL Server

Cree un usuario con la autenticación de SQL Server y asígnele los roles y permisos necesarios.

Procedimiento

Para crear un usuario, realice los pasos siguientes:
  1. En SQL Server Management Studio, abra Explorador de objetos.
  2. Pulse nombre_instancia-servidor > Seguridad > Inicios de sesión.
  3. Pulse con el botón derecho del ratón Inicios de sesión y seleccione Inicio de sesión nuevo.
  4. En el campo Nombre de inicio de sesión de la página General, escriba el nombre de un usuario nuevo.
  5. Seleccione Autenticación de SQL Server.
  6. En el campo Contraseña, escriba una contraseña para el usuario.
  7. En el campo Confirmar contraseña, vuelva a escribir la contraseña que ha especificado en el campo Contraseña.
  8. Dependiendo del rol y los permisos que desee asignar a este usuario, complete una de las tareas siguientes:
    Importantede forma predeterminada, al nuevo ID de inicio de usuario se le asigna el rol public.
  9. Pulse Aceptar.

Resultados

Se creará un usuario con el rol public predeterminado y los permisos que le haya asignado, y se visualizará en la lista Inicios de sesión.

Otorgar los permisos necesarios para la recopilación de datos

Aparte del rol predeterminado public, puede asignar el rol sysadmin a un usuario u otorgar los permisos mínimos a un usuario de manera que el agente pueda recopilar datos para los conjuntos de datos.

Acerca de esta tarea

Puede otorgar los permisos mediante la interfaz de usuario o la herramienta de programa de utilidad permissions.cmd.

Procedimiento

  • Para otorgar los permisos mínimos al usuario mediante la interfaz de usuario, siga estos pasos:
    1. Abra la página Roles de servidor y compruebe que el recuadro de selección public esté seleccionado.
    2. Abra la página Correlación de usuario y a continuación seleccione los siguientes recuadros de selección para las bases de datos del sistema y las bases de datos definidas por el usuario que desee supervisar:
      • public
      • db_owner
      Para la base de datos msdb, seleccione los siguientes recuadros de selección adicionales:
      • db_datareader
      • SQLAgentReaderRole
      • SQLAgentUserRole
    3. Abra la página Securables y a continuación marque los siguientes recuadros de selección para la instancia de servidor que está supervisando:
      • ver base de datos
      • ver definición
      • ver estado de servidor
  • Para otorgar los permisos mínimos al usuario mediante la herramienta de programa de utilidad permissions.cmd, realice los pasos siguientes:
    1. Inicie el Explorador de Windows y vaya al directorio de la herramienta del programa de utilidad Agent_grant_perm_dir:
      • Para el agente de 64 bits, dir_otorg_perm_agente es inicio_agente\TMAITM6_x64\scripts\KOQ\GrantPermission.
      • Para el agente de 32 bits, dir_otorg_perm_agente es inicio_agente\TMAITM6\scripts\KOQ\GrantPermission.
      • inicio_agente es el directorio de instalación del agente.
      AtenciónDe forma predeterminada, la herramienta del programa de utilidad permissions.cmd otorga db_owner en todas las bases de datos. Para excluir determinadas bases de datos, debe añadir los nombres de base de datos en el archivo dir_otorg_perm_agente\exclude_database.txt. Los nombres de agente deben ir separados por el alias de símbolo @.
      ConsejoPor ejemplo, si desea excluir las bases de datos MyDatabase1 y MyDatabase2, añada la entrada siguiente en el archivo exclude_database.txt:
      MyDatabase1@MyDatabase2Copiar
    2. Efectúe una doble pulsación en permissions.cmd para iniciar la herramienta del programa de utilidad.
    3. Cuando se le solicite, especifique los valores de parámetro que desee:
      Tabla 1. Parámetros
      ParámetrosDescripción
      Nombre de SQL Server o nombre de instancia de SQL ServerEspecifique el nombre de SQL Server de destino o el nombre de instancia de SQL Server de destino para el que desee otorgar permisos al usuario.
      El nombre de inicio de sesión del usuario existente de SQL ServerEspecifique el nombre de usuario cuyos permisos se modificarán.
      Opciones de los permisos:
      1 Otorgar permiso db_owner
      2 Otorgar permisos db_datareader, SQLAgentReaderRole y SQLAgentUserRole
      3 Otorgar todos los permisos necesarios
      Especifique 1 o 2 o 3, según sus requisitos.
      El usuario al que otorgar permisos:
      1 El usuario con la sesión iniciada actualmente en el sistema
      2 Otro usuario
      Especifique 1 o 2.
      Si selecciona 2, cuando se le solicite especifique el nombre de usuario de destino.
      NotaLos usuarios deben tener acceso para otorgar permisos a otros usuarios.

Qué hacer a continuación

Configure el agente.

Otorgar permiso a la clave de registro Perflib para recopilar datos para conjuntos de datos nuevos.

Para recopilar datos para unos pocos conjuntos de datos, debe otorgar a los usuarios acceso a la clave de registro Perflib.

Acerca de esta tarea

Debe otorgar este permiso al usuario de Windows con el que se configuran los servicios de agente. Hay muchos conjuntos de datos afectados en ausencia de permisos de Perflib como por ejemplo Detalle de base de datos de MS SQL, Gestor de memoria de MS SQL, Resumen de tipo de recurso de bloqueo de MS SQL, Resumen de trabajo de MS SQL, Resumen de transacciones de servidor de MS SQL, Resumen de servidor MS SQL, etc.

Procedimiento

Para otorgar permiso a la clave de registro Perflib, siga estos pasos:
  1. Para abrir el Editor de registro, pulse Inicio > Ejecutar > Regedit.exe y pulse Intro.
  2. Vaya a la clave de registro HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib.
  3. Pulse con el botón derecho sobre la clave Perflib y pulse Permisos.
  4. Pulse Añadir, especifique el nombre de usuario de Windows con el que se ha instalado y configurado el agente y a continuación pulse Aceptar.
  5. Pulse el usuario que ha añadido.
  6. Otorgue acceso de lectura al usuario marcando el recuadro de selección.
  7. Pulse Aplicar y luego Aceptar.
  • Tipos de usuarios de base de datos...

Usuarios normales. Son usuarios no sofisticados que interactúan con el sistema mediante un programa de aplicación con una interfaz de formularios, donde puede rellenar los campos apropiados del formulario. Estos usarios pueden también simplemente leer informes generados de la base de datos.
Programadores de aplicaciones. Son profesionales informáticos que escriben los programas de aplicación, utilizando herramientas para desarrollar interfaces de usuario, como las herramientas de desarrollo rápido de aplicaciones (DRA), que facilitan crear los formularios e informes sin escribir directamente el programa.
Usuarios sofisticados. Interactúan con el sistema sin programas escritos, usando el lenguaje  de consulta  de base de datos para hacer sus consultas. Los analistas que envían las consultas para explorar los datos en la base de datos entran en esta categoría, usando ellos las herramientas de procesamiento analítico en línea (OLAP, OnLine Analytical Processing), o herramientas de recopilación de datos.
Usuarios especializados. Son usuarios sofisticados que escriben aplicaciones de bases de datos especializadas y adecuadas para el procesamiento de datos tradicional. Entre estas aplicaciones están los sistemas de diseño asistido por computadora, sistemas de base de conocimientos y sistemas expertos,  sistemas que almacenan datos de tipos de datos complejos (como gráficos y de audio) y sistemas de modelado de entorno.
Administradores de la base de datos (ABD). Son las personas que tienen el control central del SGBD. Entre las funciones del ABD se encuentran:
  • Definición del esquema de la base de datos.
  • Definición de la estructura y el método de acceso.
  • Modificación del esquema y la organización física.
  • Concensión de autorización para el acceso a los datos.
  • Mantenimiento rutinario.

  • Creación de roles en sql...


SE APLICA A: síSQL Server (a partir de 2008) síAzure SQL Database síAzure SQL Data Warehouse síAlmacenamiento de datos paralelos
Crea un rol de base de datos nuevo en la base de datos actual.

Sintaxis

CREATE ROLE role_name [ AUTHORIZATION owner_name ]  

Argumentos

role_name
Es el nombre del rol que se va a crear.
AUTHORIZATION owner_name
Es el usuario o el rol de base de datos que será propietario del nuevo rol. Si no se especifica un usuario, el rol será propiedad del usuario que ejecute CREATE ROLE.

Notas

Los roles son elementos protegibles de nivel de base de datos. Después de crear un rol, configure los permisos de nivel de base de datos del rol con GRANT, DENY y REVOKE. Para agregar miembros a un rol de base de datos, use ALTER ROLE (Transact-SQL). Para más información, vea Roles de nivel de base de datos.
Los roles de base de datos se pueden ver en las vistas de catálogos sys.database_role_members y sys.database_principals.
Para más información acerca de cómo diseñar un sistema de permisos, consulte Getting Started with Database Engine Permissions.
 Precaución
El comportamiento de los esquemas cambió en SQL Server 2005. En consecuencia, el código que supone que los esquemas son equivalentes a los usuarios de base de datos puede dejar de devolver resultados correctos. Las antiguas vistas de catálogo, incluida sysobjects, no se deben usar en una base de datos en la que se haya utilizado alguna vez cualquiera de las siguientes instrucciones DDL: CREATE SCHEMA, ALTER SCHEMA, DROP SCHEMA, CREATE USER, ALTER USER, DROP USER, CREATE ROLE, ALTER ROLE, DROP ROLE, CREATE APPROLE, ALTER APPROLE, DROP APPROLE, ALTER AUTHORIZATION. En esas bases de datos, debe usar las nuevas vistas de catálogo. En las nuevas vistas de catálogo se tiene en cuenta la separación de entidades de seguridad y esquemas que se estableció en SQL Server 2005. Para obtener más información sobre las vistas de catálogo, vea Vistas de catálogo (Transact-SQL).

Permisos

Requiere el permiso CREATE ROLE en la base de datos o la pertenencia al rol fijo de base de datos db_securityadmin. Cuando usa la opción AUTHORIZATION, también se necesitan los siguientes permisos:
  • Asignar la propiedad de un rol a otro usuario requiere el permiso IMPERSONATE para ese usuario.
  • Asignar la propiedad de un rol a otro rol requiere la pertenencia al rol receptor o el permiso ALTER para ese rol.
  • Asignar la propiedad de un rol a un rol de aplicación requiere el permiso ALTER para el rol de aplicación.

Ejemplos

En todos estos ejemplos se usa la base de datos AdventureWorks.

A. Crear un rol de base de datos propiedad de un usuario de la base de datos

En el siguiente ejemplo se crea el rol de base de datos buyers que es propiedad del usuario BenMiller.
CREATE ROLE buyers AUTHORIZATION BenMiller;  
GO  

B. Crear un rol de base de datos que es propiedad de un rol fijo de base de datos

En el siguiente ejemplo se crea el rol de base de datos auditors que es propiedad del rol fijo de base de datos db_securityadmin.
CREATE ROLE auditors AUTHORIZATION db_securityadmin;  
GO  

Comentarios

Entradas más populares de este blog

Roles de un Administrador de base de datos

COMMIT Y ROLLBACK

Alertas