Use identidades administradas para Azure con su Azure Data Lake Storage

Azure Data Lake Storage proporciona un modelo de seguridad en capas. Este modelo le permite proteger y controlar el nivel de acceso a sus cuentas de almacenamiento que exigen sus aplicaciones y entornos empresariales, según el tipo y el subconjunto de redes o recursos utilizados. Cuando se configuran reglas de red, solo las aplicaciones que solicitan datos a través del conjunto especificado de redes o a través del conjunto especificado de recursos de Azure pueden acceder a una cuenta de almacenamiento. Puede limitar el acceso a la cuenta de almacenamiento a las solicitudes que se originan en direcciones IP especificadas, intervalos IP, subredes en una Azure Virtual Network (VNet) o instancias de recursos de algunos servicios de Azure.

Las identidades administradas para Azure, anteriormente conocidas como Managed Service Identity (MSI), ayudan con la administración de secretos. Los clientes de Microsoft Dataverse que utilizan las capacidades de Azure crean una identidad administrada (como parte de la creación de directivas empresariales) que se puede usar en uno o varios entornos de Dataverse. Esta identidad administrada se aprovisionará en su inquilino la usa Dataverse para acceder a su Azure Data Lake.

Con las identidades administradas, el acceso a su cuenta de almacenamiento está restringido a las solicitudes que se originan en el entorno Dataverse asociado con su inquilino. Cuando Dataverse se conecta al almacenamiento en su nombre, incluye información de contexto adicional para demostrar que la solicitud se origina en un entorno seguro y confiable. Esto permite que el almacenamiento conceda acceso a Dataverse a su cuenta de almacenamiento. Las identidades administradas se utilizan para firmar la información de contexto a fin de establecer la confianza. Esto agrega seguridad de nivel de aplicación además de la seguridad de red e infraestructura proporcionada por Azure para las conexiones entre los servicios de Azure.

Antes de comenzar

  • Azure CLI es necesario en el equipo local. Descargar e instalar
  • Necesita los siguientes módulos de PowerShell. Si no los tiene, abra PowerShell y ejecute estos comandos:
    • Módulo Azure Az para PowerShell: Install-Module -Name Az
    • Módulo de PowerShell de Azure Az.Resources: Install-Module -Name Az.Resources
    • Módulo de PowerShell para administración de Power Platform: Install-Module -Name Microsoft.PowerApps.Administration.PowerShell
  • Clone el repositorio PowerApps-Samples en GitHub en una ubicación donde puede ejecutar comandos de PowerShell: git clone https://github.com/microsoft/PowerApps-Samples.git. Los scripts se organizan en subcarpetas en powershell/managed-identities/Source. Ejecute cada script desde su subcarpeta específica, por ejemplo, Source\Identity.
  • Se recomienda crear un nuevo contenedor de almacenamiento en el mismo grupo de recursos Azure para incorporar esta característica.

Importante

No mueva scripts fuera de sus carpetas. Los scripts se basan en rutas de acceso relativas y archivos compartidos en la estructura del repositorio.

Habilitar la directiva empresarial para la suscripción de Azure seleccionada

Importante

Debe tener acceso al rol de propietario de la suscripción de Azure para completar esta tarea. Obtenga su identificador de suscripción de Azure ID de suscripción en la página de resumen del grupo de recursos de Azure.

  1. Abra Azure CLI con ejecutar como administrador e inicie sesión en la suscripción de Azure mediante el comando: az login Más información: Sign in with Azure CLI
  2. (Opcional) si tiene varias suscripciones de Azure, asegúrese de ejecutar Update-AzConfig -DefaultSubscriptionForLogin { Azure subscription id } para actualizar la suscripción predeterminada.
  3. En PowerShell, cambie a la Source carpeta del repositorio que ha clonado como parte de Antes de empezar.
  4. Para habilitar la directiva de empresa para la suscripción de Azure seleccionada, ejecute el script de PowerShell ./SetupSubscriptionForPowerPlatform.ps1.
    • Proporcione el identificador de suscripción de Azure.

Crear una directiva empresarial

Importante

Debe tener acceso al rol de Propietario del grupo de recursos de Azure para completar esta tarea. Obtenga su ID de suscripción de Azure, Ubicación y nombre del Grupo de recursos, de la página de información general del grupo de recursos de Azure.

  1. En PowerShell, cambie a la Source\Identity subcarpeta y ejecute el script para crear la política empresarial.

    cd <path-to-repo>\powershell\managed-identities\Source\Identity
    .\CreateIdentityEnterprisePolicy.ps1
    
    • Proporcione el identificador de suscripción de Azure.
    • Proporcione el nombre del grupo de recursos Azure.
    • Proporcione el nombre de directiva empresarial preferido.
    • Proporcione la ubicación del grupo de recursos Azure.
  2. Guarde la copia de ResourceId después de la creación de la política.

Nota

Las siguientes son las entradas válidas de ubicación admitidas para la creación de directivas. Seleccione la ubicación que mejor se adecúe a usted.

Ubicaciones disponibles para la política empresarial

Estados Unidos EUAP

United States

Sudáfrica

Reino Unido

Australia

Corea del Sur

Japón

India

Francia

Europa

Asia

Noruega

Alemania

Suiza

Canadá

Brasil

EAU

Singapur

Otorgue acceso de lector a la directiva empresarial a través de Azure

Los administradores de Dynamics 365 y de Power Platform pueden acceder al Power Platform admin center para vincular entornos a la política empresarial. Para acceder a las directivas empresariales, se requiere ser miembro administrador de Azure Key Vault para conceder el rol Reader al administrador de Dynamics 365 o Power Platform. Una vez asignado el rol de Reader, los administradores de Dynamics 365 o Power Platform podrán ver las directivas empresariales en el Centro de administración de Power Platform.

Solo los administradores de Dynamics 365 y Power Platform a los que se concedió el rol lector a la política empresarial pueden "agregar un entorno" a la política. Es posible que otros administradores de Dynamics 365 y PowerPlatform puedan ver la directiva empresarial, pero obtendrán un error al intentar agregar entorno.

Importante

Debes tener permisos, como Microsoft.Authorization/roleAssignments/write o Propietario, para completar esta tarea.

  1. Inicie sesión en el portal Azure.
  2. Obtenga el ObjectID del usuario administrador de Dynamics 365 Power Platform.
    1. Vaya a la zona Usuarios.
    2. Abra el usuario administrador de Dynamics 365 o Power Platform.
    3. En la página de descripción general del usuario, copie el ObjectID.
  3. Obtener el ID de políticas empresariales:
    1. Vaya al Azure Resource Graph Explorer.
    2. Ejecute esta consulta: resources | where type == 'microsoft.powerplatform/enterprisepolicies'Run query from Azure Resource Graph Explorer
    3. Desplácese a la derecha de la página de resultados y seleccione el vínculo Ver detalles.
    4. En la página Detalles, copie el id.
  4. Abra Azure CLI y ejecute el comando siguiente, reemplazando el por el ObjectID y el por el identificador de directiva de empresa.
    • New-AzRoleAssignment -ObjectId <objId> -RoleDefinitionName Reader -Scope <EP Resource Id>

Conectar la directiva empresarial al entorno Dataverse

Importante

Debe tener el rol de administrador de Power Platform o administrador de Dynamics 365 para completar esta tarea. Debe tener el rol Lector de la directiva de empresa para completar esta tarea.

  1. Obtener el ID del entorno Dataverse.
    1. Inicie sesión en el Centro de administración de Power Platform.
    2. Seleccione Administrar>Entornos y abra su entorno.
    3. En la sección Detalles, copie el ID del entorno.
  2. En la Source\Identity subcarpeta, ejecute este script de PowerShell: ./NewIdentity.ps1
    • Proporcione el ID del entorno Dataverse.
    • Proporcione el ResourceId.
      StatusCode = 202 indica que el enlace se creó correctamente.
  3. Inicie sesión en el Centro de administración de Power Platform.
  4. Seleccione Administrar>Entornos, y luego abra el entorno que especificó anteriormente.
  5. En el área Operaciones recientes, seleccione Historial completo para validar la conexión de la nueva identidad.

Configuración del acceso de red a la Azure Data Lake Storage Gen2

Importante

Debe tener un rol Azure Data Lake Storage Gen2 Owner para completar esta tarea.

  1. Vaya al portal Azure.

  2. Abra la cuenta de almacenamiento conectada al perfil de Azure Synapse Link para Dataverse.

  3. En el panel de navegación izquierdo, seleccione Redes. Después, en la pestaña Firewalls y redes virtuales seleccione la configuración siguiente:

    1. Habilitado desde redes virtuales y direcciones IP seleccionadas.
    2. En Resource instances, seleccione Allow Azure services en la lista de servicios de confianza para acceder a esta cuenta de almacenamiento
  4. Haga clic en Guardar.

Configuración del acceso de red al área de trabajo de Azure Synapse

Importante

Debe tener un rol Azure Synapse administrator para completar esta tarea.

  1. Vaya al portal Azure.
  2. Abra el área de trabajo de Azure Synapse conectada al perfil de Azure Synapse Link para Dataverse.
  3. En el panel de navegación izquierdo, seleccione Redes.
  4. Seleccione Permitir que los servicios y recursos de Azure accedan a este espacio de trabajo.
  5. Si hay reglas de firewall de IP creadas que abarquen todo el rango de IP, elimínelas para restringir el acceso a la red pública. Configuración de red del área de trabajo de Azure Synapse
  6. Agregue una regla de firewall de IP nueva basada en la dirección IP del cliente.
  7. Seleccione Guardar cuando haya terminado. Más información: Azure Synapse Analytics reglas de firewall IP

Importante

Para usar Dataverse, debe tener el rol de seguridad de administrador del sistema. Además, las tablas que desee exportar mediante Azure Synapse Link deben tener habilitada la propiedad Control de cambios. Más información: Opciones avanzadas

Azure Data Lake Storage Gen2: debe tener una cuenta de Azure Data Lake Storage Gen2 y acceso al rol de Owner y Storage Blob Data Contributor. Su cuenta de almacenamiento debe habilitar el espacio de nombres jerárquico para la configuración inicial y la sincronización delta. Se requiere permitir el acceso a la clave de la cuenta de almacenamiento solo para la configuración inicial.

Área de trabajo de Synapse: debe tener un área de trabajo de Synapse y acceso al rol de Synapse Administrator dentro del Synapse Studio. El área de trabajo de Synapse debe estar en la misma región que la cuenta de Azure Data Lake Storage Gen2. La cuenta de almacenamiento debe agregarse como un servicio vinculado dentro del Synapse Studio. Para crear un área de trabajo de Synapse, vaya a Crear un área de trabajo de Synapse.

Al crear el vínculo, Azure Synapse Link para Dataverse obtiene detalles sobre la política empresarial vinculada actualmente en el entorno de Dataverse y después guarda en caché la URL del secreto de cliente de identidad para conectarse a Azure.

  1. Inicie sesión en Power Apps y seleccione su entorno.
  2. En el panel de navegación izquierdo, seleccione Azure Synapse Link y, a continuación, seleccione + Nuevo vínculo. Si el elemento no se encuentra en el panel lateral, seleccione …Más y, a continuación, el elemento que desee.
  3. Rellene los campos correspondientes, de acuerdo con la configuración prevista. Seleccione Suscripción, Grupo de recursos y Cuenta de almacenamiento. Para conectar Dataverse al área de trabajo de Synapse, seleccione la opción Conectar al área de trabajo de Azure Synapse. Para la conversión de datos de Delta Lake, seleccione un grupo de Spark.
  4. Seleccione Seleccionar directiva empresarial con Managed Service Identity y después seleccione Siguiente.
  5. Agregue las tablas que desea exportar y luego seleccione Guardar.

Nota

Para que el comando Use la identidad administrada esté disponible en Power Apps, debe finalizar la configuración anterior para conectar la directiva de empresa al entorno de Dataverse. Más información: Conectar la política empresarial al entorno de Dataverse

  1. Vaya a un perfil de Synapse Link existente desde Power Apps (make.powerapps.com).
  2. Seleccione Usar identidad administrada y luego confirme. Usar el comando de identidad controlada en Power Apps

Solución de problemas

Si recibe errores 403 durante la creación del enlace:

  • Las identidades administradas tardan más tiempo en otorgar permisos transitorios durante la sincronización inicial. Espere algo de tiempo y vuelva a intentar la operación más tarde.
  • Asegúrese de que el almacenamiento vinculado no tenga el contenedor Dataverse existente (dataverse-environmentName-organizationUniqueName) del mismo entorno.
  • Puede identificar la directiva empresarial vinculada y policyArmId mediante la ejecución del script de PowerShell ./GetIdentityEnterprisePolicyforEnvironment.ps1 de la subcarpeta Source\Identity, con el Id. de suscripción de Azure y el nombre del Grupo de recursos.
  • Puede desvincular la directiva empresarial ejecutando el script de PowerShell ./RevertIdentity.ps1 desde la subcarpeta Source\Identity, con el ID de entorno de Dataverse y policyArmId.
  • Puede quitar la directiva empresarial ejecutando el script de PowerShell .\RemoveIdentityEnterprisePolicy.ps1 desde la subcarpeta Source\Identity con policyArmId.

Limitación conocida

Solo una directiva empresarial puede conectarse al entorno de Dataverse simultáneamente. Si necesita crear varios vínculos de Azure Synapse Link con identidad administrada habilitada, asegúrese de que todos los recursos de Azure vinculados están en el mismo grupo de recursos.

Consulte también

¿Qué es Azure Synapse Link para Dataverse?