Funciones de seguridad (Analysis Services - Datos multidimensionales)

Las funciones se usan en Microsoft SQL Server Analysis Services para administrar la seguridad de los objetos y datos de Analysis Services.En términos simples, una función asocia los identificadores de seguridad (SID) de usuarios y grupos de Microsoft Windows que tienen derechos y permisos de acceso específicos a los objetos administrados por una instancia de Analysis Services. En Analysis Services se incluyen dos tipos de funciones:

  • La función del servidor, que es una función fija que proporciona acceso de administrador a una instancia de Analysis Services.

  • Las funciones de base de datos, que son funciones definidas por los administradores para controlar el acceso a los objetos y datos de los usuarios que no son administradores.

La seguridad en Microsoft SQL Server Analysis Services seguridad se administra mediante funciones y permisos. Las funciones son grupos de usuarios. Los usuarios, también denominados miembros, se pueden agregar o quitar de las funciones. Los permisos de los objetos se especifican mediante las funciones y todos los miembros de una función pueden usar los objetos para los que ésta dispone de permiso. Todos los miembros de una función disponen de los mismos permisos en los objetos. Los permisos son específicos de los objetos. Cada objeto cuenta con una colección de permisos que incluye los permisos concedidos en ese objeto; en un objeto se pueden conceder diferentes conjuntos de permisos. Cada permiso, de la colección de permisos del objeto, tiene una función única asignada.

Objetos de función y miembro de función

Una función es un objeto que contiene una colección de usuarios (miembros). La definición de función establece la pertenencia de los usuarios en Analysis Services. Dado que los permisos se asignan por función, un usuario debe ser miembro de una función para tener acceso a un objeto.

Un objeto Role se compone del nombre, el identificador y los miembros de los parámetros. Los miembros son una colección de cadenas. Cada miembro contiene el nombre de usuario con el formato "dominio\nombre de usuario". El nombre es una cadena que contiene el nombre de la función. El identificador es una cadena que contiene el identificador único de la función.

Función del servidor

La función del servidor de Analysis Services define el acceso administrativo de los usuarios y grupos de Windows a una instancia de Analysis Services. Los miembros de esta función tienen acceso a todas las bases de datos y objetos de Analysis Services en una instancia de Analysis Services y pueden realizar las siguientes tareas:

  • Realizar funciones administrativas de nivel de servidor utilizando SQL Server Management Studio o Business Intelligence Development Studio, incluida la creación de bases de datos y la configuración de propiedades de nivel de servidor.

  • Realizar funciones administrativas mediante programación con Objetos de administración de Análisis (AMO).

  • Mantener las funciones de base de datos de Analysis Services.

  • Iniciar trazas (distintas de eventos de procesamiento, que puede realizar una función de base de datos con acceso de proceso).

Cada instancia de Analysis Services tiene una función de servidor que define qué usuarios pueden administrar la instancia. El nombre e Id. de esta función es Administradores y, a diferencia de las funciones de base de datos, no puede eliminarse la función del servidor ni pueden agregarse ni quitarse permisos. En otras palabras, un usuario puede o no ser un administrador para una instancia de Analysis Services, según esté incluido en la función del servidor de la instancia de Analysis Services. Temas relacionados:Conceder acceso administrativo, Establecer propiedades de configuración del servidor.

Funciones de base de datos

Una función de base de datos de Analysis Services define el acceso de usuario a los objetos y datos de una base de datos de Analysis Services. Una función de base de datos se crea como objeto independiente en una base de datos de Analysis Services y sólo se aplica a la base de datos en la que se crea la función. El administrador incluye los usuarios y grupos de Windows en la función y también define los permisos de la función.

Los permisos de una función pueden permitir a los miembros obtener acceso y administrar la base de datos, además de los objetos y los datos de la misma. Cada permiso tiene uno o más derechos de acceso asociados, que a su vez proporcionan al permiso más control sobre el acceso a un objeto específico de la base de datos. Temas relacionados:Permisos y derechos de acceso (Analysis Services - Datos multidimensionales), Conceder acceso a los usuarios.

Objetos de permiso

Los permisos se asocian a un objeto (cubo, dimensión, otros) para una función determinada. Los permisos especifican qué operaciones puede realizar el miembro de dicha función en el objeto.

La clase Permission es una clase abstracta. Por consiguiente, debe usar las clases derivadas para definir los permisos en los objetos correspondientes. Para cada objeto se define una clase derivada de permiso.

En la lista se muestran las posibles acciones habilitadas por permisos:

Acción

Valores

Explicación

Procesar

{true, false}

Valor predeterminado = false

Si es true, los miembros pueden procesar el objeto y cualquier objeto contenido en él.

Los permisos de proceso no se aplican a los modelos de minería de datos. Los permisos de MiningModel siempre se heredan de MiningStructure.

Leer definición

{None, Basic, Allowed}

Valor predeterminado = None

Especifica si los miembros pueden leer la definición de datos (ASSL) asociada al objeto.

Si el valor es Allowed, los miembros pueden leer el ASSL asociado al objeto.

Los objetos incluidos en el objeto heredan Basic y Allowed. Allowed invalida a Basic y None.

Allowed se requiere para usar DISCOVER_XML_METADATA en un objeto. Basic se requiere para crear objetos vinculados y cubos locales.

Leer

{None, Allowed}

Valor predeterminado =None (excepto en permisos de dimensión, donde el valor predeterminado =Allowed)

Especifica si los miembros disponen de acceso de lectura a los conjuntos de filas de esquemas y contenido de datos.

Allowed proporciona acceso de lectura a una base de datos, lo que permite detectar una base de datos.

Allowed en un cubo proporciona acceso de lectura a conjuntos de filas de esquema y acceso al contenido del cubo (a menos que se restrinja mediante CellPermission y CubeDimensionPermission).

Allowed en una dimensión concede permiso de lectura en todos los atributos de la dimensión (a menos que se restrinja mediante CubeDimensionPermission). El permiso de lectura sólo se usa para la herencia estática a CubeDimensionPermission. None en una dimensión oculta la dimensión y sólo da acceso al miembro predeterminado para los atributos agregables; se produce un error si la dimensión contiene un atributo no agregable.

Allowed en MiningModelPermission concede permisos para ver los objetos en conjuntos de filas de esquema y para realizar combinaciones de predicciones.

Nota:   se requiere Allowed para leer o escribir en cualquier objeto de la base de datos.

Escribir

{None, Allowed}

Valor predeterminado = None

Especifica si los miembros tienen acceso de escritura a los datos del objeto primario.

El acceso se aplica a las subclases Dimension, Cube y MiningModel. No se aplica a las subclases MiningStructure de base de datos, que generan un error de validación.

Allowed en Dimension concede permiso de escritura en todos los atributos de la dimensión.

Allowed en Cube concede permiso de escritura en las celdas del cubo de particiones definidas con el tipo de reescritura.

Allowed en MiningModel concede permiso para modificar el contenido del modelo.

Allowed en MiningStructure no tiene ningún significado concreto en Analysis Services.

NotaNota
La escritura no se puede establecer en Allowed a menos que la lectura también esté establecida en Allowed.

Administrar

NotaNota
Sólo en permisos de base de datos

{true, false}

Valor predeterminado = false

Especifica si los miembros pueden administrar una base de datos.

true permite el acceso de los miembros a todos los objetos en una base de datos.

Un miembro puede tener permisos para administrar una base de datos concreta, pero no otras.