Acceder a Dataverse

Completado

Los datos siempre deben considerarse un recurso valioso. Por lo tanto, en el diseño de la seguridad, es importante diseñar un modelo de seguridad que garantice el uso y acceso adecuados a ese valioso recurso. Microsoft Dataverse almacena datos para Microsoft Power Platform y proporciona servicios para aplicaciones. Microsoft Power Platform tiene seguridad en capas para controlar el acceso a un entorno de Dataverse, pero después de que un usuario ha obtenido acceso al entorno, el arquitecto de soluciones necesita controlar el acceso dentro de la base de datos. Una característica clave de Dataverse es su rico modelo de seguridad, que se puede adaptar a múltiples escenarios de uso empresarial.

Diagrama de las características de Dataverse.

Autorización

La autorización es la función de especificar derechos de acceso o privilegios para los recursos. El diseño de seguridad implementará la autorización para acceder a datos y funciones. Decidir quién puede obtener acceso y a qué datos y servicios forma parte esencial del diseño de cualquier solución.

Un diseño de seguridad inadecuado puede conducir a un diseño deficiente del sistema y estos factores pueden tener un efecto de gran alcance y pueden resultar costosos para arreglar:

  • Capacidad de administración: dificultad para gestionar el acceso individual.
  • Rendimiento: por ejemplo, el crecimiento de la tabla PrincipalAccessObject (POA) al compartir.
  • Usabilidad: procedimientos engorrosos para conceder acceso.
  • Visibilidad: resulta imposible saber quién tiene acceso al registro con solo mirarlo.

Cada solución tiene requisitos únicos, pero es posible identificar y reutilizar capacidades y patrones comunes.

Patrones comunes

Entre los patrones de uso comunes de muchas aplicaciones empresariales, se incluyen los siguientes:

  • Participación activa: participación periódica y significativa directamente con el cliente/los datos. Dispone de información. Tiene conocimientos existentes sobre el cliente/los datos y la actividad relacionada actual, y realiza acciones personales basadas en una relación directa con las personas involucradas.
  • Implicación secundaria: implicación informada. Se mantiene un conocimiento activo de la actividad pero no se participa o se actúa directamente sobre los datos o con el cliente, por ejemplo proporcionando cobertura por ausencia del personal implicado activamente. Apoya a otras personas que tienen una relación personal con el cliente, por ejemplo brindando asesoramiento o apoyo a las personas involucradas activamente o proporcionando conocimientos especializados a un cliente o un fragmento de datos específico.
  • Interacción transaccional: participación específica orientada a actividades, por ejemplo, recepción y actuación ante una solicitud de actualización de la dirección de un cliente. Sin compromiso personal o continuo, como en un centro de contacto.
  • Supervisión de la gestión: responsabilidad de gestión o gobernanza en un área comercial o geográfica. Ver y dirigir la participación de otros en lugar de una participación específica.
  • Informes: informes comerciales agregados. Los datos se organizan para preservar el anonimato, en lugar de proporcionar acceso directo a clientes/acuerdos.
  • Cumplimiento: supervisa el acceso de solo lectura a todos los registros de un área empresarial.

Al diseñar la seguridad, el arquitecto de soluciones debe comprender cómo trabajan los usuarios. Dicho de otro modo, necesita determinar si los usuarios trabajan por sí mismos, si trabajan como parte de un equipo estático o si trabajan en equipos dinámicos que cambian según ciertas reglas. Estos factores afectarán al diseño de la seguridad. Después de determinar estos factores, el arquitecto de soluciones debe entender cómo el resto del personal proporciona soporte. Por ejemplo, el arquitecto de soluciones debe preguntar si los usuarios han asignado personal de soporte y si el personal de soporte se comparte entre otros usuarios. Además, el arquitecto de soluciones debe preguntar qué pasaría si el personal de soporte no estuviera disponible, qué sucede durante la noche y durante los fines de semana, y cómo se gestiona la supervisión.

Principios de diseño

Al diseñar la seguridad, los arquitectos de soluciones deben seguir ciertos principios:

  • La responsabilidad asignada no siempre necesita un acceso restringido.
  • Trate las excepciones como tales: favorezca los patrones de acceso frecuente.
  • No puede revocar el acceso a un registro en el que haya accedido acceso a un conjunto más amplio de datos que lo contienen.
  • Utilice unidades de negocio para la capacidad de administración y la contención, no para la estructura organizativa coincidente.
  • Utilice el diseño más sencillo que funcione bien y cumpla los requisitos.

Nota

Ocasionalmente, la estructura organizativa está en consonancia con la estructura de seguridad necesaria, pero esto es poco común. Al diseñar la seguridad, no se limite a utilizar la estructura organizativa de manera predeterminada.

Características de seguridad

Dataverse proporciona muchas características de seguridad para acceder a los datos:

  • Propiedad de la tabla
  • Usuarios
  • Equipos
  • Unidades de negocio
  • Roles de seguridad
  • Uso compartido
  • Grupos de seguridad de Microsoft Entra ID
  • Seguridad de nivel de columna
  • Seguridad jerárquica
  • Auditoría

Diagrama de características de seguridad de las unidades de negocio de Dataverse.

Los arquitectos de soluciones deben comprender cada una de estas características y cómo se combinan para crear el modelo de seguridad para su solución. Esta unidad no entra en detalles sobre cada una de estas características de seguridad, pero explica cómo se pueden utilizar juntas para crear un modelo de seguridad para su solución.

Propiedad de la tabla

Las tablas de Dataverse puede ser propiedad del Usuario/Equipo o de la Organización. Las tablas que son propiedad del usuario/equipo tienen un campo de propietario y a cada fila de la tabla se le puede asignar un propietario. El propietario de una fila se utiliza con las otras características de seguridad para determinar quién tiene acceso a la fila, es decir, el acceso a las filas es detallado y se puede dividir horizontalmente. Alternativamente, el acceso a filas individuales de las tablas que son propiedad de la Organización no se puede restringir, y los usuarios tendrán acceso a todos los registros o a ninguno.

Nota

No se puede cambiar el tipo de propiedad una vez que se crea una tabla. En caso de duda, especifique el tipo de propiedad de Usuario/Equipo al crear tablas.

Equipos

Los equipos son colecciones de usuarios que permiten que los usuarios accedan a los datos. Los equipos son una manera potente de conceder permisos a los usuarios de forma amplia sin administrar pormenorizadamente el acceso de usuarios individuales. Los usuarios pueden ser miembros de varios equipos.

Los tres tipos de equipos son:

  • Propietario: los equipos propietarios pueden poseer filas, a las que los miembros del equipo tienen acceso directo.
  • Acceso: los equipos de acceso son un método para que los usuarios compartan fácilmente una fila con otro desde dentro de un formulario.
  • Grupo de Microsoft Entra ID: parecido a los equipos propietarios, pero la pertenencia al equipo se controla en Microsoft Entra ID.

Roles de seguridad

Los roles de seguridad son fundamentales para la seguridad de los datos en Dataverse. No se conceden privilegios específicos a los usuarios, sino que se crean roles de seguridad. Dataverse utiliza la seguridad basada en roles para agrupar una recopilación de privilegios.

Los roles de seguridad se pueden asignar a usuarios o a equipos. Los equipos y los usuarios pueden tener roles de seguridad que brinden privilegios acumulados.

Importante

Todas las concesiones de privilegios son acumulables y prevalece el acceso mayor. Si concedió un amplio acceso de lectura en el nivel de la organización a todos los registros de contactos, no puede retroceder y ocultar solo un registro.

Unidades de negocio

Las unidades de negocio contienen usuarios y equipos, y actúan como límites de seguridad. Las unidades de negocio son el método principal para controlar el acceso a los subconjuntos de datos dentro de una tabla, es decir, la partición horizontal de datos. Con las unidades de negocio, puede segmentar a los usuarios y sus datos.

Cada base de datos de Dataverse tiene una sola unidad de negocio raíz. Puede crear unidades de negocio secundarias para representar grupos de usuarios en una jerarquía estricta.

Diagrama que muestra una jerarquía de unidades de negocio.

Nota

Las unidades de negocio tienen un equipo predeterminado que contiene todos los usuarios de cada unidad de negocio. No se puede agregar o eliminar manualmente usuarios de los equipos predeterminados, así que se pueden convertir en bloqueadores para algunos escenarios a medida que la solución evoluciona.

Importante

La combinación de roles de seguridad y unidades de negocio es la base del modelo de seguridad para Dataverse.

Las unidades de negocio proporcionan una forma eficaz de gestionar varios usuarios y el acceso a los registros. Las unidades de negocio no son visibles para los usuarios en las aplicaciones: solo para los administradores. No debe solo reflejar el organigrama de una organización, sino que también debe diseñar la jerarquía de la unidad de negocio para cumplir con los requisitos de seguridad. A veces, este enfoque puede significar la creación de unidades de negocio para satisfacer un requisito de seguridad. Por ejemplo, se puede crear una unidad de negocio que controle las unidades de negocio de Ventas y Marketing para permitir que algunos usuarios accedan a esas unidades y evitar el acceso a la unidad de negocio Operaciones.

Compartir filas

Las filas individuales se pueden compartir con usuarios y equipos. Esta característica permite a los usuarios acceder a registros que estén restringidos por el modelo de seguridad generado por las unidades de negocio. Compartir permite acceder a filas fuera de la estricta jerarquía de las unidades de negocio.

Roles de seguridad y equipos

Los roles de seguridad también se pueden asociar con equipos. A continuación, los usuarios se pueden asociar con el equipo y, por lo tanto, todos los usuarios que están asociados con este se beneficiarán del rol. Los usuarios tendrán acceso a las filas que sean propiedad del equipo y, en función de otras características de seguridad, podrían acceder a las filas que pertenezcan a otros usuarios del equipo.

Las opciones sobre el rol de seguridad que controlan cómo el rol de seguridad opera con un equipo son:

  • Valor predeterminado: solo privilegios del equipo
  • Nivel de acceso directo de usuario (básico) y privilegios del equipo

Captura de pantalla de detalles de roles de seguridad y equipos

El uso de la opción de acceso directo de usuario trata los privilegios como si estuvieran asignados directamente al usuario. Al usar esta opción, puede evitar tener que asignar roles de seguridad a los usuarios, y, en su lugar, usar los equipos y los roles de seguridad asignados a los equipos.

Nota

Los equipos propietarios pertenecen a las unidades de negocio. Un usuario solo puede pertenecer a una unidad de negocio cada vez, pero un usuario se puede agregar a un equipo en otra unidad de negocio. Esta característica permite a los usuarios acceder a datos en una unidad de negocio que no esté en su jerarquía.

Seguridad de nivel de columna

Los privilegios que proporcionan los roles de seguridad operan en el nivel de fila. Si un usuario tiene privilegios de actualización en una fila, puede actualizar todas las columnas de esa fila. Ocasionalmente, el control de acceso en el nivel de fila no es adecuado. Por ejemplo, las columnas que contienen información de identificación personal. Dataverse tiene una función de seguridad en el nivel de columna para permitir un control más detallado de la seguridad en ese nivel.

La seguridad en el nivel de columna funciona por separado de los roles de seguridad. Los perfiles de seguridad de columna definen el privilegio de lectura/escritura en las columnas y estos perfiles se asignan a usuarios y equipos.

Nota

Si un usuario no tiene privilegios para leer una columna segura, todavía podrá ver la columna en el formulario pero no podrá ver su contenido, es decir, el valor de los datos. Cuando usa código para acceder al campo protegido, el valor es nulo si el usuario no tiene privilegios de lectura.

Seguridad jerárquica

Un problema del uso de unidades de negocio es su estricta jerarquía. El acceso a los datos solo puede seguir la jerarquía de las unidades de negocio. En el diagrama de unidades de negocio, un usuario de Ventas puede tener acceso a las unidades de negocio Norte, Central y Sur. Por el contrario, un usuario de la unidad de negocio Operaciones no puede acceder a los datos que pertenecen a Ventas sin tener acceso a todos los datos de la organización.

Diagrama de seguridad jerárquica de una organización.

En la seguridad jerárquica, el usuario de la posición superior puede leer y escribir todos los datos de sus subordinados. Además, puede leer los datos de los usuarios inferiores en la jerarquía.

La seguridad jerárquica es un modelo de seguridad alternativo diseñado para escenarios en los que un usuario que requiere supervisión administrativa no se encuentra en la misma parte de la jerarquía de la unidad de negocio. La seguridad jerárquica es útil en situaciones en las que los administradores se encuentran en diferentes países o regiones o departamentos de sus subordinados directos.

La seguridad jerárquica tiene dos opciones:

  • Jerarquía del administrador: esta opción utiliza la jerarquía de usuarios en la tabla de usuarios del sistema. La restricción es que un gerente en la misma unidad de negocio o en la cadena directa de unidades de negocio anteriores no puede leer y escribir datos de usuarios en diferentes departamentos.
  • Jerarquía posicional: esta opción utiliza la tabla de posiciones. Esta opción es más flexible e ignora la estructura de la unidad de negocio. La jerarquía posicional también permite que haya más de una persona en un puesto.

Solo se puede utilizar uno de los tipos jerárquicos al mismo tiempo.

Auditoría

Auditoría captura todos los cambios de datos. La auditoría puede ayudar a supervisar quién ha realizado qué cambios y, además, puede ayudar a analizar cómo utilizan realmente los usuarios el sistema. La funcionalidad de auditoría de Dataverse no incluye lecturas de datos o acciones, como la exportación a Microsoft Excel.

Otra auditoría disponible es el registro de actividad, que se encuentra en el Centro de seguridad y cumplimiento de Microsoft 365. El registro de actividad incluye lecturas de datos y otras operaciones. El registro de actividad debe estar habilitado y ayuda a alcanzar los objetivos de cumplimiento.

Gestionar la seguridad en varios entornos

Los roles de seguridad y los perfiles de seguridad de columna pueden empaquetarse en soluciones y transportarse a otros entornos. Las plantillas de Equipo de acceso forman parte de los metadatos de la tabla y se incluyen con la tabla cuando se agregan a la solución. Otras características de seguridad, como las unidades de negocio y los equipos, no se pueden empaquetar en soluciones y el arquitecto de soluciones debe planificar que se completen en los entornos.

Estrategias para definir roles de seguridad

Las tres estrategias básicas para crear roles de seguridad son:

  • Específica de la posición
  • Básica + puesto
  • Básica + capacidad

La estrategia específica de la posición consiste en crear un único rol de seguridad que contenga todos los privilegios que el puesto de trabajo exige. Los roles listos para usar son específicos de la posición y tienen nombres de roles laborales, por ejemplo, Comercial. Puede seguir este modelo de rol para roles de trabajo específicos, pero podría terminar con muchos roles de seguridad parecidos y que debe mantener. Por ejemplo, agregar una nueva tabla personalizada significará cambiar muchos roles, si no todos.

Un modelo más moderno es utilizar un modelo de seguridad por capas. En este modelo, se copia un rol listo para usar, como Comercial o Usuario básico, y después se cambian los niveles de acceso a los niveles comunes o mínimos que todos los usuarios requieren. Puede llamar a este rol Básico. A continuación, se crean nuevos roles y se establecen los niveles de acceso para los pocos privilegios que cada grupo de usuarios necesite además del rol básico. Estos roles mínimos contienen los otros privilegios que son necesarios para el puesto o la capacidad que se requiera.

En el siguiente diagrama, la función básica se denomina Todo el personal y se asignará a todos los usuarios. A todos los usuarios de Ventas también se les asignará el rol denominado Ventas, un rol de puesto, y a algunos usuarios de ventas se les asignará el rol Móvil, un rol de capacidad que tiene el privilegio Móvil, y a un administrador se le asignará los roles Ventas y Administrador.

Diagrama de roles de seguridad por capas de una organización.

A pesar de que podría no resultar obvio, los roles de seguridad están vinculados a las unidades de negocio. Los roles que se crean en la unidad de negocio raíz los heredan todas las unidades de negocio secundarias. Puede crear un rol de seguridad para una unidad de negocio específica si desea limitar ese rol a los usuarios de esa unidad de negocio. Sin embargo, tenga en cuenta que los roles de seguridad de las soluciones siempre se agregan a la unidad de negocio raíz cuando se importa la solución.

Equipos de grupo de Microsoft Entra ID

Un equipo de grupo de Microsoft Entra ID se parece a un equipo propietario en que puede ser propietario de registros y asignar roles de seguridad al equipo. La diferencia es que la pertenencia al equipo de Dataverse se deriva dinámicamente de la pertenencia del grupo de Microsoft Entra ID asociado. La pertenencia del grupo de Microsoft Entra ID se puede asignar manualmente o se puede derivar de la asignación basada en reglas según los atributos del usuario de Microsoft Entra ID.

Combinar los equipos de grupo de Microsoft Entra ID con la asignación de roles de seguridad a los equipos con la opción de usuario directo puede simplificar significativamente la administración para agregar nuevos usuarios.

Los grupos de seguridad y los grupos de Office 365 se pueden utilizar para los equipos de grupo de Microsoft Entra ID.