Compartir a través de


Compatibilidad con PowerShell para Power Apps y Power Automate

Con los cmdlets de PowerShell para creadores y administradores de Power Platform, puede automatizar muchas tareas de supervisión y administración. Tareas que hoy solo son posibles de realizar de forma manual en , o en Power AppsCentro de administración Power Automate. Power Platform

Cmdlets

Los cmdlets son funciones escritas en el lenguaje de script PowerShell que ejecutan comandos en PowerShell.... Ejecutar estos cmdlets de Power Apps permite que se interactúe con su plataforma de aplicaciones empresariales sin tener que pasar por el portal de administración en un explorador web.

Puede combinar cmdlets con otras funciones de PowerShell para escribir scripts complejos que pueden optimizar su flujo de trabajo. Puede seguir usando los cmdlets si no es administrador en el inquilino, pero se limita a los recursos de su propiedad. La cuenta de usuario administrativo utiliza cmdlets que comienzan con Admin.

Los cmdlets están disponibles en la galería de PowerShell como dos módulos independientes:

Para obtener información sobre el módulo de administración de Power Apps, consulte Empezar a usar el módulo de administración de Power Apps y Microsoft PowerApps.Administration.PowerShell.

Introducción a PowerShell

Si es nuevo en PowerShell y necesita ayuda para encontrarlo e iniciarlo, vaya a Introducción a PowerShell. Si necesita ayuda con el uso de PowerShell o los cmdlets, vaya a El sistema de ayuda de PowerShell.

Requisitos previos para PowerShell

PowerShell en este artículo requiere la versión 5.x de Windows PowerShell. Para comprobar la versión de PowerShell que se ejecuta en su máquina, ejecute el siguiente comando:

$PSVersionTable.PSVersion

Si tiene una versión obsoleta, vaya a Actualizar la versión de Windows PowerShell existente.

Importante

Los módulos descritos en este documento utilizan .NET Framework, que es incompatible con PowerShell 6.0 y posteriores. Estas versiones posteriores utilizan .NET Core.

Instalación del módulo e inicio de sesión

Para ejecutar cmdlets de PowerShell para creadores de aplicaciones:

  1. Ejecute PowerShell como administrador.

    Captura de pantalla que muestra cómo ejecutar PowerShell como Administrador.

  2. Importe los módulos necesarios.

    Install-Module -Name Microsoft.PowerApps.Administration.PowerShell
    Install-Module -Name Microsoft.PowerApps.PowerShell -AllowClobber
    

    Como alternativa, si no tiene derechos de administrador en su equipo, puede usar el parámetro -Scope CurrentUser para la instalación.

    Install-Module -Name Microsoft.PowerApps.Administration.PowerShell -Scope CurrentUser
    Install-Module -Name Microsoft.PowerApps.PowerShell -AllowClobber -Scope CurrentUser
    
  3. Si se le pide que acepte el cambio del valor InstallationPolicy del repositorio, acepte [A] Yes en todos los módulos escribiendo A y luego presione Enter para cada módulo.

    Captura de pantalla que muestra dónde aceptar el valor de InstallationPolicy en PowerShell.

  4. Opcionalmente, antes de acceder a los comandos, puedes proporcionar tus credenciales. Las credenciales se actualizan hasta unas ocho horas antes de que deba iniciar sesión de nuevo. Si no se proporcionan las credenciales antes de ejecutar un comando, aparece un mensaje solicitando credenciales.

    # Opens a prompt to collect credentials (Microsoft Entra account and password).
    Add-PowerAppsAccount
    
    # Here is how you can pass in credentials (to avoid opening a prompt).
    $pass = ConvertTo-SecureString "password" -AsPlainText -Force
    Add-PowerAppsAccount -Username user@contoso.com -Password $pass
    
  5. Opcionalmente, se puede apuntar a un punto de conexión específico. El punto de conexión predeterminado es prod. Si un usuario desea ejecutar un script PowerShell dirigido a un ambiente en una región que no es de producción, como GCC, el parámetro se puede cambiar a -Endpoint para GCC Moderado, o usgov para usgovhigh , o GCC Highpara GCC DOD. dod La lista completa de puntos finales admitidos es: "prod,versión preliminar,tip1,tip2,usgov,usgovhigh,dod,china".

    # An environment in another region, such as GCC, can be targeted using the -Endpoint parameter.
    Add-PowerAppsAccount -Endpoint "usgov" 
    

Actualizaciones de módulos

Puede verificar la versión de todos sus módulos de PowerShell usando Get-Module.

Get-Module

Y puede actualizar todos sus módulos de PowerShell a la última versión usando Update-Module.

Update-Module

Alternativamente, verifique la versión de los módulos Power Platform , usando Get-Module y el parámetro -Name.

Get-Module -Name "Microsoft.PowerApps.Administration.PowerShell"
Get-Module -Name "Microsoft.PowerApps.PowerShell"

Actualice los módulos de Power Platform PowerShell usando específicamente Update-Module y el parámetro -Name.

Update-Module -Name "Microsoft.PowerApps.Administration.PowerShell"
Update-Module -Name "Microsoft.PowerApps.PowerShell"

Cmdlets de Power Apps para creadores de aplicaciones

Requisitos previos para cmdlets de Power Apps

Los usuarios con una licencia de Power Apps válida pueden realizar las operaciones en estos cmdlets. Sin embargo, solo tienen acceso a recursos, como aplicaciones y flujos, que se crean o comparten con ellos.

Lista de cmdlet - Cmdlets de fabricante

Nota

Hemos actualizado algunos de los nombres de función de los cmdlets en la versión más reciente para agregar prefijos adecuados para evitar colisiones. Para obtener información general sobre lo que ha cambiado, consulte la tabla siguiente.

Objetivo Cmdlet
Agregar una aplicación de lienzo a una solución Microsoft Dataverse Set-PowerAppAsSolutionAware
Leer y actualizar entornos Get-AdminPowerAppEnvironment(anteriormente Get-PowerAppsEnvironment)
Get-FlowEnvironment
Restaurar-PowerAppEnvironment(anteriormente Restaurar-AppVersion)
Leer, actualizar, y eliminar una aplicación de lienzo Get-AdminPowerApp(anteriormente Get-App)
Remove-AdminPowerApp(anteriormente Remove-App)
Publish-AdminPowerApp (antes Publish-App)
Leer, actualizar, y eliminar permisos de aplicación de lienzo Get-AdminPowerAppRoleAssignment(anteriormente Get-AppRoleAssignment)
Eliminar-AdminPowerAppRoleAssignment(anteriormente Eliminar-AppRoleAssignment)
Leer, actualizar, y eliminar un flujo Obtener flujo de administración
Habilitar flujo de administración
Deshabilitar AdminFlow
Eliminar flujo de administración
Leer, actualizar, y eliminar permisos de flujo Obtener rol de propietario de flujo de administración
Establecer rol de propietario de flujo de administración
Eliminar rol de propietario de flujo de administración
Lea y responder a aprobaciones de flujo Solicitud de aprobación de Get-AdminFlow
Eliminar aprobaciones de flujo de administración
Leer y eliminar conexiones Get-AdminPowerAppConnection(anteriormente Get-Connection)
Remove-AdminPowerAppConnection(anteriormente Remove-Connection)
Leer, actualizar, y eliminar permisos de conexión Get-AdminPowerAppConnectionRoleAssignment(anteriormente Get-ConnectionRoleAssignment)
Set-AdminPowerAppConnectionRoleAssignment(anteriormente Set-ConnectionRoleAssignment)
Eliminar-AdminPowerAppConnectionRoleAssignment(anteriormente Eliminar-ConnectionRoleAssignment)
Leer y eliminar conectores Get-AdminPowerAppConnector(anteriormente Get-Connector)
Remove-AdminPowerAppConnector(anteriormente Remove-Connector)
Agregar, leer, actualizar y eliminar permisos de conector personalizado Get-AdminPowerAppConnectorRoleAssignment(anteriormente Get-ConnectorRoleAssignment)
Get-PowerAppConnectorRoleAssignment(anteriormente Set-ConnectorRoleAssignment)
Eliminar-PowerAppConnectorRoleAssignment(anteriormente Eliminar-ConnectorRoleAssignment)
Leer, agregar y eliminar patrones de URL de directivas Obtener patrones de URL de políticas de PowerApp
Nuevos patrones de URL de políticas de PowerApp
Eliminar patrones de URL de políticas de PowerApp
Leer, registrar y quitar aplicaciones de administración Obtener aplicación de gestión de PowerApp
Obtener aplicaciones de administración de PowerApp
Nueva aplicación de gestión de PowerApp
Eliminar PowerAppManagementApp
Leer, crear, actualizar e importar claves de protección Obtener-PowerAppRetrieveAvailableTenantProtectionKeys
Obtener clave de protección de PowerAppGenerate
Obtener clave de protección del inquilino de PowerAppRetrieve
Nueva clave de protección de importación de PowerApp
Establecer clave de protección de inquilinos de PowerApp

Cmdlets de Power Apps para administradores

Para obtener más información sobre Power Apps y cmdlets de Power Automate para administradores, consulte Introducción a PowerShell para administradores de Power Platform.

Recomendaciones

  • Use Get-Help seguido de CmdletName para obtener una lista de ejemplos.

    Captura de pantalla que muestra el uso del comando Get-Help.

  • Después de escribir guión -, puede presionar Tab para recorrer las etiquetas de entrada. Coloque esta marca después del nombre del cmdlet.

Comandos de ejemplo:

Get-Help Get-AdminPowerAppEnvironment
Get-Help Get-AdminPowerAppEnvironment -Examples
Get-Help Get-AdminPowerAppEnvironment -Detailed

Ejemplos de operaciones

A continuación encontrará algunos escenarios comunes que muestran cómo usar cmdlets Power Apps nuevos o existentes.

Comandos de entornos

Use estos comandos para obtener detalles y actualizar entornos en su inquilino.

Mostrar una lista de todos los entornos.

Get-AdminPowerAppEnvironment

Devuelve una lista de cada entorno en el inquilino, con detalles de cada uno (por ejemplo, el nombre del entorno (guid), nombre para mostrar, ubicación, creador, etc.).

Mostrar detalles del entorno predeterminado

Get-AdminPowerAppEnvironment –Default

Devuelve los detalles únicamente para el entorno predeterminado del inquilino.

Muestra detalles de entorno específico

Get-AdminPowerAppEnvironment –EnvironmentName 'EnvironmentName'

Nota

El campo EnvironmentName es un identificador único, que es diferente de DisplayName (consulte los primeros y segundos campos en la salida en la imagen siguiente).

Comando Get-AdminEnvironment.

Comandos Power Apps

Estas operaciones se usan para leer y modificar datos de Power Apps del inquilino.

Mostrar una lista de todos los Power Apps

Get-AdminPowerApp

Devuelve una lista de todas las Power Apps en el inquilino, con detalles de cada uno (por ejemplo, nombre de la aplicación (guid), nombre para mostrar, ubicación, creador y más).

Mostrar una lista de todos los Power Apps que coinciden el nombre para mostrar de entrada

Get-AdminPowerApp 'DisplayName'

Este comando muestra todos los Power Apps en el inquilino que coincidan con el nombre para mostrar.

Nota

Escriba entre comillas los valores de entradas que contengan espacios. Por ejemplo, utilice "Nombre de mi aplicación".

Caracterizar una aplicación

Set-AdminPowerAppAsFeatured –AppName 'AppName'

Las aplicaciones caracterizadas se agrupan y se extraen a la parte superior de la lista en el reproductor móvil de Power Apps.

Nota

Como los entornos, el campo AppName es un identificador único, que es diferente de DisplayName. Si desea realizar operaciones en función del nombre para mostrar, algunas funciones le permitirán usar la canalización (consulte la función siguiente).

Convertir una aplicación en una aplicación prominente mediante la canalización

Get-AdminPowerApp 'DisplayName' | Set-AdminPowerAppAsHero

Una aplicación prominente aparece en la parte superior de la lista del reproductor móvil de Power Apps. Solo puede haber una aplicación prominente.

La barra vertical | entre dos cmdlets toma la salida del primer cmdlet y la pasa como el valor de entrada del segundo, si la función se escrito para admitir la característica de la barra vertical.

Nota

Una aplicación ya debe ser una aplicación destacada antes de cambiar a un héroe.

Mostrar el número de aplicaciones que cada usuario posee

Get-AdminPowerApp | Select –ExpandProperty Owner | Select –ExpandProperty displayname | Group

Puede combinar las funciones de PowerShell nativas con los cmdlets Power Apps para manipular los datos incluso más. Aquí usamos la función Select para aislar el atributo Propietario (un objeto) del objeto Get-AdminApp. A continuación aislamos el nombre de objeto de propietario canalizando esa salida a otra función Select. Por último, al pasar la segunda salida de la función Select a la función Group se devuelve una tabla interesante que incluye un recuento del número de aplicaciones de cada propietario.

Comando Get-AdminPowerApp.

Mostrar el número de aplicaciones en cada entorno

Get-AdminPowerApp | Select -ExpandProperty EnvironmentName | Group | %{ New-Object -TypeName PSObject -Property @{ DisplayName = (Get-AdminPowerAppEnvironment -EnvironmentName $_.Name | Select -ExpandProperty displayName); Count = $_.Count } }

Get-AdminPowerApp entorno.

Descargar detalles de usuario de Power Apps

Get-AdminPowerAppsUserDetails -OutputFilePath '.\adminUserDetails.txt' –UserPrincipalName 'admin@bappartners.onmicrosoft.com'

El comando anterior almacena los detalles del usuario de Power Apps (información de uso básica sobre el usuario de entrada a través de su nombre principal de usuario) en el archivo de texto especificado. Crea un nuevo archivo si no hay ningún archivo existente con ese nombre, y sobrescribe el archivo de texto si ya existe.

Exportar una lista de licencias de usuario asignadas

Get-AdminPowerAppLicenses -OutputFilePath '<licenses.csv>'

Exporta todas las licencias de usuario asignadas (Power Apps y Power Automate) en su inquilino en un archivo .csv de vista tabular. El archivo exportado contiene planes de prueba internos de registro de autoservicio y planes con origen en Microsoft Entra ID. Los planes de prueba internos no son visibles para los administradores en el centro de administración de Microsoft 365.

La exportación puede tardar bastante tiempo para los inquilinos con un gran número de usuarios de Microsoft Power Platform.

Nota

La salida del cmdlet de Get-AdminPowerAppLicenses solo incluye licencias para los usuarios que accedieron a los servicios de Power Platform (por ejemplo, Power Apps, Power Automate o centro de administración de Power Platform). Los usuarios que tenían licencias asignadas en el identificador de Entra de Microsoft (normalmente a través del Centro de administración de Microsoft 365) pero que nunca han accedido a los servicios de Power Platform no tienen sus licencias incluidas en la salida de .csv generada. Además, dado que los servicios de licencias de Power Platform almacenan en caché las licencias, las actualizaciones realizadas en las asignaciones de licencias de Microsoft Entra ID pueden tardar hasta siete días en reflejarse en la salida de los usuarios que no accedieron al servicio recientemente.

Establecer el usuario conectado como propietario de una aplicación de lienzo

Set-AdminPowerAppOwner –AppName 'AppName' -AppOwner $Global:currentSession.userId –EnvironmentName 'EnvironmentName'

Cambia el rol de propietario de un Power App al usuario actual y reemplaza al propietario original como un tipo de rol "puede ver".

Nota

Los campos AppName y EnvironmentName son los identificadores únicos (guids), no los nombres para mostrar.

Mostrar una lista de aplicaciones de lienzo eliminadas en un entorno

Get-AdminDeletedPowerAppsList -EnvironmentName 'EnvironmentName'

Este comando muestra todas las aplicaciones de lienzo que se eliminaron recientemente, ya que aún pueden recuperarse.

Recuperar una aplicación de lienzo eliminada

Get-AdminRecoverDeletedPowerApp -AppName 'AppName' -EnvironmentName 'EnvironmentName'

Este comando recupera una aplicación de lienzo reconocible a través del cmdlet Get-AdminDeletedPowerAppsList. Cualquier aplicación de lienzo que no se muestre en Get-AdminDeletedPowerAppsList no es recuperable.

Entorno de formulario personalizado de SharePoint designado

Los siguientes cmdlets se pueden usar para especificar y verificar en qué entorno se guardan los formularios personalizados de SharePoint, en lugar de en el entorno predeterminado. Cuando el entorno designado para los formularios personalizados de SharePoint cambia, este entorno es donde se guardan los formularios personalizados recién creados. Los formularios personalizados existentes no se migran automáticamente a diferentes entornos cuando se utilizan estos cmdlets. La capacidad de un usuario para crear un formulario personalizado en un entorno designado requiere que el usuario tenga el rol de Creador del entorno. A los usuarios se les puede otorgar el rol de Creador del entorno en el centro de administración Power Platform.

Se puede eliminar cualquier entorno que no sea el predeterminado. Si el designado formulario personalizado de SharePoint designado se elimina, los formularios personalizados también se eliminarán.

Get-AdminPowerAppSharepointFormEnvironment  

Este comando devuelve el EnvironmentName para el entorno actualmente designado para formularios personalizados de SharePoint recién creados. Si nunca se ha designado un entorno, se devuelve al entorno predeterminado.

Set-AdminPowerAppSharepointFormEnvironment –EnvironmentName 'EnvironmentName' 

Este comando designa el entorno en el que se guardan los formularios personalizados de SharePoint recién creados, en lugar del entorno predeterminado. Los formularios personalizados existentes no se migran automáticamente al entorno recién designado. Solo se pueden designar entornos de producción para formularios personalizados de SharePoint.

Reset-AdminPowerAppSharepointFormEnvironment  

Esto restablece el entorno predeterminado como el entorno designado para guardar los formularios personalizados de SharePoint.

Mostrar configuración de inquilino para la capacidad de compartir aplicaciones con Todos

$settings = Get-TenantSettings 
$settings.PowerPlatform.PowerApps.disableShareWithEveryone 

Esta configuración controla si los usuarios con Environment Maker rol de seguridad pueden compartir aplicaciones de lienzo con Todos en una organización. Cuando la configuración se establece en verdadero, solo los usuarios con un rol de administrador (administrador de Dynamics 365, Administrador de servicios Power Platform, administrador de inquilinos de Microsoft Entra) puede compartir aplicaciones con Todos en una organización.

Independientemente de esta configuración de inquilino, los creadores de valor con el privilegio de compartir pueden compartir aplicaciones con grupos de seguridad de cualquier tamaño. Este control solo determina si se puede usar la abreviatura Todos al compartir.

Cambiar configuración de inquilino para la capacidad de compartir aplicaciones con Todos

$settings = Get-TenantSettings 
$settings.powerPlatform.powerApps.disableShareWithEveryone = $True 
Set-TenantSettings -RequestBody $settings

Destaque el contenido del mensaje de error de gobernanza de su organización

Si especifica que el contenido del mensaje de error de gobernanza aparezca en los mensajes de error, se incluirá el contenido del mensaje de error cuando los fabricantes observan que no tienen permiso para compartir aplicaciones con Todos. Consute Comandos de contenido del mensaje de error de gobernanza de PowerShell.

Asociar flujos de contexto a una aplicación

Asocie flujos en el contexto de una aplicación a la aplicación para crear una dependencia entre la aplicación y los flujos. Para obtener más información sobre los flujos de contexto, consulte Qué capacidades de Power Automate están incluidas en las licencias de Power Apps?

   Add-AdminFlowPowerAppContext -EnvironmentName <String> -FlowName <String> -AppName <String> [-ApiVersion <String>] [<CommonParameters>]

EnvironmentName y FlowName se pueden encontrar en la URL del flujo:

  • Para un flujo sin solución, la URL se ve así:

    https://preview.flow.microsoft.com/manage/environments/839eace6-59ab-4243-97ec-a5b8fcc104e7/flows/6df8ec2d-3a2b-49ef-8e91-942b8be3202t/details
    

    El GUID después de environments/ es el nombre del entorno y el GUID después de flows/ es el nombre del flujo

  • Para un flujo con solución, la URL se ve así:

    https://us.flow.microsoft.com/manage/environments/66495a1d-e34e-e330-9baf-0be559e6900b/solutions/fd140aaf-4df4-11dd-bd17-0019b9312238/flows/53d829c4-a5db-4f9f-8ed8-4fb49da69ee1/details
    

    El GUID después de environments/ es el nombre del entorno y el GUID después de flows/ es el nombre del flujo

  • El AppName de una aplicación de lienzo se puede encontrar en la página de detalles de la aplicación de lienzo.

    Captura de pantalla que muestra que el AppName de una aplicación de lienzo se puede encontrar en la página de detalles de la aplicación de lienzo.

  • El AppName para una aplicación basada en modelo se puede encontrar en el explorador de soluciones.

    Captura que muestra el AppName para una aplicación basada en modelo se puede encontrar en el explorador de soluciones.

  • Para ver los ejemplos, escriba: get-help Add-AdminFlowPowerAppContext -examples.

  • Para obtener información, escriba: get-help Add-AdminFlowPowerAppContext -detailed.

  • Para obtener información técnica, escriba: get-help Add-AdminFlowPowerAppContext -full.

Eliminar flujos de contexto de una aplicación

Elimine la dependencia entre los flujos y una aplicación con este comando de PowerShell. Remove-AdminFlowPowerAppContext elimina el contexto de la aplicación del flujo específico.

    Remove-AdminFlowPowerAppContext -EnvironmentName <String> -FlowName <String> -AppName <String> [-ApiVersion <String>] [<CommonParameters>]

    - To see the examples, type: "get-help Remove-AdminFlowPowerAppContext -examples".
    - For more information, type: "get-help Remove-AdminFlowPowerAppContext -detailed".
    - For technical information, type: "get-help Remove-AdminFlowPowerAppContext -full".

Comandos Power Automate

Utilice estos comandos importantes para realizar la administración relacionada con Power Automate.

Para obtener una lista completa de cmdlets de Power Automate y Power Apps para administradores, consulte Introducción a PowerShell para administradores de Power Platform.

Mostrar todos los flujos

Get-AdminFlow

Devuelve una lista de todos los flujos en el inquilino.

Mostrar detalles del rol del propietario del flujo

Get-AdminFlowOwnerRole –EnvironmentName 'EnvironmentName' –FlowName 'FlowName'

Devuelve los detalles del propietario del flujo especificado.

Nota

Como Entornos y PowerApps, FlowName es el identificador único (guid), que es diferente del nombre para mostrar del flujo.

Mostrar detalles del usuario del flujo

Get-AdminFlowUserDetails –UserId $Global:currentSession.userId

Devuelve los detalles de usuario relacionados con el uso del flujo. En este ejemplo, usamos como entrada el id. de usuario del usuario que inició la sesión de PowerShell.

Quitar detalles del usuario del flujo

Remove-AdminFlowUserDetails –UserId 'UserId'

Elimina completamente los detalles sobre un usuario del flujo de la base de datos de Microsoft. Todos los flujos que posee el usuario de entrada deben eliminarse para poder purgar los detalles de usuario del flujo.

Nota

El campo UserId es el identificador de objeto del registro de Microsoft Entra del usuario, que se encuentra en Azure Portal, en Microsoft Entra ID>Usuarios>Perfil>ID de objeto. Debe ser un administrador para acceder a estos datos desde aquí.

Exportar todos los flujos a un archivo CSV

Get-AdminFlow | Export-Csv -Path '.\FlowExport.csv'

Exporta todos los flujos del inquilino en un archivo .csv de vista tabular

Agregar flujos en soluciones de Dataverse

Add-AdminFlowsToSolution -EnvironmentName <String>

Migra todos los flujos que no son de solución en el entorno.

Las variaciones de parámetros se pueden utilizar para migrar solo flujos específicos, agregarlos a una solución específica o migrar solo una cantidad determinada de flujos a la vez.

Para obtener detalles técnicos, consulte Add-AdminFlowsToSolution.

Enumerar flujos de acción HTTP

Get-AdminFlowWithHttpAction -EnvironmentName <String>

Enumera los flujos con acciones HTTP.

DisplayName (Nombre para mostrar) FlowName EnvironmentName
Obtener HTTP de factura flow-1 environment-1
Pago de factura desde la aplicación flow-2 environment-2
Conciliación de la cuenta flow-3 environment-3

Comandos de conexión API

Vea y administrar las conexiones API de su inquilino.

Mostrar todas las conexiones nativas en el entorno predeterminado

Get-AdminPowerAppEnvironment -Default | Get-AdminPowerAppConnection

Muestra una lista de todas las conexiones API que tiene en el entorno predeterminado. Las conexiones nativas se encuentran en la pestaña Dataverse>Conexiones de Power Apps.

Mostrar todos conectores personalizados en el inquilino

Get-AdminPowerAppConnector

Devuelve una lista de todos los detalles de conectores personalizados en el inquilino.

Nota

Get-AdminPowerAppConnector No enumera los conectores personalizados que están en una solución. Es una limitación conocida.

Comandos de directiva de datos

Estos cmdlets controlan las directivas de datos en el inquilino.

Creación de una directiva de datos

New-DlpPolicy

Crea una nueva directiva de datos para el inquilino del administrador que ha iniciado sesión.

Recuperar una lista de objetos de directiva de datos

Get-DlpPolicy

Obtiene objetos de directiva para el inquilino del administrador que inició sesión.

Nota

  • Al ver una directiva de datos mediante PowerShell, el nombre para mostrar de los conectores procede de cuándo se creó la directiva de datos o cuándo se movieron por última vez los conectores dentro de la directiva. Los nuevos cambios en los nombres para mostrar de los conectores no se reflejan.
  • Al ver una directiva de datos mediante PowerShell, no se devuelven nuevos conectores del grupo predeterminado que no se han movido.

Para estos dos problemas conocidos, una solución consiste en mover el conector afectado a otro grupo dentro de la directiva y luego volver a moverlo al grupo correcto. Después de hacerlo, cada uno de los conectores es visible con su nombre correcto.

Actualización de una directiva de datos

Set-DlpPolicy

Actualiza detalles de la directiva, como el nombre para mostrar de la directiva.

Quitar una directiva

Remove-DlpPolicy

Elimina una directiva de datos.

Cmdlets de exención de recursos de datos

Estos cmdlets permiten excluir o anular el uso de un recurso específico de una directiva.

Recuperación de una lista de recursos exentos existente para una directiva de datos

Get-PowerAppDlpPolicyExemptResources -TenantId -PolicyName 

Crear una nueva lista de recursos exentos para una directiva de datos

New-PowerAppDlpPolicyExemptResources -TenantId -PolicyName -NewDlpPolicyExemptResources 

Actualización de la lista de recursos exentos para una directiva de datos

Set-PowerAppDlpPolicyExemptResources -TenantId -PolicyName -UpdatedExemptResources 

Quitar la lista de recursos exentos de una directiva de datos

Remove-PowerAppDlpPolicyExemptResources -TenantId -PolicyName 

Para excluir un recurso de una directiva de datos, necesita la siguiente información:

  • Id. de inquilino (GUID)
  • Identificador de directiva de datos (GUID)
  • Id. de recurso (termina con un GUID)
  • Tipo de recurso

Puede recuperar el identificador y el tipo de recurso mediante los cmdlets de PowerShell Get-PowerApp para aplicaciones y Get-Flow para flujos.

Ejemplo de script de eliminación

Para eximir el flujo con identificador f239652e-dd38-4826-a1de-90a2aea584d9 y la aplicación con identificador 06002625-7154-4417-996e-21d7a60ad624 se pueden ejecutar los siguientes cmdlets:

1. PS D:\> $flow = Get-Flow -FlowName f239652e-dd38-4826-a1de-90a2aea584d9 
2. PS D:\> $app = Get-PowerApp -AppName 06002625-7154-4417-996e-21d7a60ad624 
3. PS D:\> $exemptFlow = [pscustomobject]@{ 
4. >>             id = $flow.Internal.id 
5. >>             type = $flow.Internal.type 
6. >>         } 
7. PS D:\> $exemptApp = [pscustomobject]@{ 
8. >>             id = $app.Internal.id 
9. >>             type = $app.Internal.type 
10. >>         } 
11. PS D:\> $exemptResources = [pscustomobject]@{ 
12. >>             exemptResources = @($exemptFlow, $exemptApp) 
13. >>         } 
14. PS D:\> New-PowerAppDlpPolicyExemptResources -TenantId aaaabbbb-0000-cccc-1111-dddd2222eeee -PolicyName bbbbcccc-1111-dddd-2222-eeee3333ffff -NewDlpPolicyExemptResources $exemptResources 
15. 
16. exemptResources 
17. --------------- 
18. {@{id=/providers/Microsoft.ProcessSimple/environments/Default-aaaabbbb-0000-cccc-1111-dddd2222eeee/flows/f239652e-dd38-4826-a1de-90a2aea584d9; type=Microsoft.ProcessSimple/environments/flows}, @{id=/providers/Microsoft.PowerApps/apps/06002625-7154-4417-996e-21d7a60ad.. 

Experiencia de exención de directiva de datos en los siguientes escenarios

# Escenario Experiencia
1 El usuario inicia una aplicación que no es compatible con la directiva de datos, sino que está exenta de la directiva de datos. El inicio de la aplicación continúa con o sin aplicación de directivas de datos.
2 Maker guarda una aplicación que no es compatible con la directiva de datos, sino que está exenta de la directiva de datos. Con o sin exención de directiva de datos, el cumplimiento de la directiva de datos no bloquea la operación de guardado de la aplicación. La advertencia de incumplimiento de la directiva de datos se muestra independientemente de la exención de directiva de datos.
3 Maker guarda un flujo que no es compatible con la directiva de datos, sino que está exento de la directiva de datos. Con o sin exención de directiva de datos, el cumplimiento de la directiva de datos no bloquea la operación de guardado del flujo. No aparece la advertencia de incumplimiento de la directiva de datos.

Comandos de contenido del mensaje de error de gobernanza

Los siguientes cmdlets pueden llevar a los usuarios finales al material de referencia de gobernanza de su organización. El comando incluye un vínculo a la documentación de gobernanza y un contacto de gobernanza para cuando los controles de gobernanza lo soliciten. Por ejemplo, cuando se establece el contenido del mensaje de error de gobernanza, aparece en los mensajes de cumplimiento en tiempo de ejecución de la directiva de datos de Power Apps.

Establecer contenido del mensaje de error de gobernanza

New-PowerAppDlpErrorSettings -TenantId 'TenantId' -ErrorSettings @{  
  ErrorMessageDetails = @{ 
    enabled = $True  
    url = "https://contoso.org/governanceMaterial" 
  } 
  ContactDetails= @{  
    enabled = $True 
    email = "admin@contoso.com" 
  } 
} 

La URL y el correo electrónico del mensaje de error de gobernanza se pueden mostrar de forma independiente o conjunta. Puede habilitar o deshabilitar el mensaje de error de gobernanza con el campo enabled.

Escenarios de contenido del mensaje de error de gobernanza

# Escenario Disponibilidad
1 El usuario inicia una aplicación creada con Power Apps que no es compatible con la directiva de datos. Disponible en general
2 Maker comparte una aplicación de lienzo Power Apps pero no tiene privilegio de compartir Disponible en general
3 Maker comparte una aplicación de lienzo Power Apps con Todos pero no tiene el privilegio de compartir con Todos Disponible en general
4 Maker guarda una aplicación creada con Power Apps que no es compatible con la directiva de datos. Disponible en general
5 Maker guarda un flujo de Power Automate que no es compatible con la directiva de datos. Disponible en general
6 El usuario inicia una aplicación sin pertenecer a un grupo de seguridad en el grupo de seguridad asociado al entorno de Dataverse Disponible en general

Mostrar contenido del mensaje de error de gobernanza

Get-PowerAppDlpErrorSettings -TenantId 'TenantId' 

Actualizar el contenido del mensaje de error de gobernanza

Set-PowerAppDlpErrorSettings -TenantId 'TenantId' -ErrorSettings @{  
  ErrorMessageDetails = @{ 
    enabled = $True  
    url = "https://contoso.org/governanceMaterial" 
  } 
  ContactDetails= @{  
    enabled = $True 
    email = "admin@contoso.com" 
  } 
} 

Aplicación de la directiva de datos para infringir conexiones: entorno

Estos cmdlets permiten aplicar la directiva de datos para infringir las conexiones en el nivel de entorno o inquilino.

Aplicación de directivas de datos para infringir conexiones

Puede aplicar directivas de datos en conexiones en un entorno. La aplicación de deshabilita las conexiones existentes que infringen las directivas de datos y habilita las conexiones deshabilitadas anteriormente que ya no infringen las directivas de datos.

Start-DLPEnforcementOnConnectionsInEnvironment -EnvironmentName [Environment ID]
Ejemplo de script de aplicación del entorno
Start-DLPEnforcementOnConnectionsInEnvironment -EnvironmentName c4a07cd6-cb14-e987-b5a2-a1dd61346963 

Aplicación de directivas de datos para infringir conexiones: inquilino

Puede aplicar directivas de datos en las conexiones del inquilino. La aplicación de deshabilita las conexiones existentes que infringen las directivas de datos y habilita las conexiones deshabilitadas anteriormente que ya no infringen las directivas de datos.

Start-DLPEnforcementOnConnectionsInTenant

Bloquear comandos de licencias de prueba

Comandos:

Remove-AllowedConsentPlans
Add-AllowedConsentPlans
Get-AllowedConsentPlans

Los cmdlets de planes de consentimiento permitidos se pueden usar para agregar o eliminar el acceso a un tipo particular de plan de consentimiento de un inquilino. Los planes de consentimiento "internos" son licencias de prueba o planes de desarrollador en los que los usuarios pueden registrarse a través de Power Apps/portales de Power Automate/Power Automate para escritorio. Los planes de consentimiento de "suscripción ad hoc" o "virales" son licencias de prueba o planes de desarrollador en los que los usuarios pueden registrarse en https://signup.microsoft.com. Los administradores pueden asignar usuarios a través de Microsoft Entra ID o el portal de administración de Microsoft 365.

De forma predeterminada, se permiten todos los tipos de planes de consentimiento en un inquilino. Sin embargo, es posible que un administrador de Power Platform quiera impedir que los usuarios asignen licencias de prueba, pero conserven la capacidad de asignar licencias de prueba en nombre de los usuarios. Esta regla se puede realizar mediante el Remove-AllowedConsentPlans -Types "Internal" comando y no permitir la configuración Update-MgPolicyAuthorizationPolicy -AllowedToSignUpEmailBasedSubscriptions en el id. de Microsoft Entra.

Importante

Cuando se usa Remove-AllowedConsentPlans, todos los planes existentes del tipo especificado se quitan de todos los usuarios del inquilino y no se pueden recuperar. Este comando bloquea todas las asignaciones futuras de ese tipo. Si el administrador de Power Platform desea volver a habilitar planes de ese tipo, pueden usar Add-AllowedConsentPlans. Si desean ver el estado actual de los planes de consentimiento permitidos, pueden usar Get-AllowedConsentPlans.

Si tiene preguntas

Si tiene comentarios, sugerencias o preguntas, publiquelos en el panel de la comunidad de Administración de Power Apps.