Compartir a través de


Lección 2: Crear atributos para la seguridad en el nivel de fila

Un método habitual de definir la seguridad en el nivel de fila es usar la información de inicio de sesión del usuario para determinar qué filas se mostrarán. En esta lección, creará un atributo dentro de la entidad Employee que filtre los datos según la información de inicio de sesión del usuario. Creará un filtro y, a continuación, lo editará como una fórmula para que pueda usar la función GetUserID.

Nota

Esta lección empieza con el supuesto de que Business Intelligence Development Studio está abierto en el equipo y que el modelo de informe aparece en la ventana.

Para crear un atributo filtrado que se edita como fórmula

  1. En la vista de árbol, seleccione la entidad Employee.

    En la vista de lista aparecen los atributos de Employee.

  2. Haga clic con el botón secundario en Employee, elija Nuevo y, a continuación, haga clic en Filtro.

    Se abre el cuadro de diálogo Filtrar datos.

  3. En la lista Campos, haga doble clic en Id de inicio de sesión 2.

    Se agrega al filtro una condición de filtro que usa el campo Id de inicio de sesión 2 que ha creado en la lección 1.

  4. En el filtro, haga clic con el botón secundario en Id de inicio de sesión 2 y seleccione Editar como fórmula.

    Se abre el cuadro de diálogo Definir fórmula, que muestra la fórmula Id. de inicio de sesión 2=Empty.

  5. En el cuadro Fórmula, seleccione la palabra Empty.

  6. Seleccione la ficha Funciones y, a continuación, expanda el nodo Información.

  7. Haga doble clic en la función GetUserID.

    Empty se reemplaza con GetUserID().

  8. Haga clic en Aceptar.

    Se cierra el cuadro de diálogo Definir fórmula y la cláusula del filtro muestra Id. de inicio de sesión 2=GetUserID.

  9. Haga clic en Aceptar de nuevo.

    Se cierra el cuadro de diálogo Filtrar datos y en la vista de lista aparece el atributo NewFilter. A continuación, cambiará el nombre del atributo.

Para cambiar el nombre del atributo

  1. En la vista de lista, haga clic con el botón secundario en el atributo NewFilter y seleccione Cambiar nombre.

  2. Escriba UserIDFilter.

    A continuación, asignará las propiedades que requiere el atributo.

Para modificar las propiedades del atributo

  1. En la vista de lista, seleccione el atributo UserIDFilter.

  2. En la ventana Propiedades, busque la propiedad IsFilter.

  3. Compruebe que el valor de IsFilter es True.

  4. Busque la propiedad Hidden.

  5. Haga clic en la flecha hacia abajo de Hidden y, a continuación, seleccione True.

    El cambio de la propiedad Hidden a True impide que los usuarios del modelo vean este atributo cuando crean informes utilizando el modelo. Puesto que usa el atributo como un filtro para asignar la seguridad, los usuarios no necesitan ver este atributo al crear sus propios informes.

  6. En la vista de lista, seleccione el atributo Id de inicio de sesión 2.

  7. En la ventana Propiedades, busque la propiedad que admite valores NULL.

    Puesto que el atributo Id de inicio de sesión 2 tiene la propiedad Nullable establecida en True, el atributo UserIDFilter también debe tener la propiedad Nullable establecida en True. No obstante, no es una propiedad requerida para utilizarla como filtro de seguridad.

  8. Haga clic en la flecha hacia abajo de Nullable y, a continuación, seleccione True.

Para asignar un atributo a la colección de filtros de seguridad

  1. En la vista de árbol, seleccione la entidad Employee.

  2. En la ventana Propiedades, busque la propiedad SecurityFilters.

  3. Seleccione la propiedad SecurityFilters y, a continuación, haga clic en el botón de puntos suspensivos ().

    Se abre el cuadro de diálogo Editor de la colección de referencias de atributo .

  4. Haga clic en Agregar.

  5. Se abre el cuadro de diálogo Atributos de filtro de seguridad.

  6. En la lista Entidades, compruebe que está seleccionada la entidad Employee.

  7. En la lista Campos, seleccione el atributo UserIDFilter.

  8. Haga clic en Aceptar y, a continuación, vuelva a hacer clic en Aceptar.

    A continuación, guardará los cambios en el modelo y volverá a implementar el modelo en el servidor de informes.

Para guardar e implementar el modelo de informe

  1. En el menú Archivo, haga clic en Guardar todo.

  2. En el Explorador de soluciones, haga clic con el botón secundario en el proyecto Adventure Works Model y seleccione Implementar.

    El modelo se implementa en el servidor de informes.

    Nota importanteImportante

    Para comprobar que el modelo se ha implementado correctamente, puede ver la ficha Lista de errores. Si se produce un error, tendrá que resolver el problema antes de continuar.

Pasos siguientes

Ahora ha creado un atributo y se lo ha asignado a la colección SecurityFilters. Luego, necesita habilitar la seguridad de los elementos del modelo en SQL Server Management Studio. Vea Lección 3: Habilitar la seguridad en el nivel de fila en el Administrador de informes.