Compatibilidad con PowerShell para Power Apps
Con los cmdlets de PowerShell para creadores y administradores de aplicaciones, puede automatizar muchas de las tareas de supervisión y administración que solo son posibles hoy en día de forma manual en Power Apps.
Cmdlets
Cmdlets son funciones escritas en el lenguaje de script de PowerShell que ejecutan comandos en el entorno de Windows 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 estos 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. Los cmdlets que empiezan con la palabra "Admin" están diseñados para ser usados por una cuenta de usuario administrativa.
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.
Nota
En relación con compatibilidad de nivel 2 de Dynamics 365 Government Community Cloud (GCC):
El extremo predeterminado es "prod". Si un usuario desea ejecutar un script de PowerShell dirigido a un entorno GCC, el parámetro -Endpoint debe cambiarse a "usgov" para GCC Moderate, "usgovhigh" para GCC High, o "dod" para GCC DOD.
Add-PowerAppsAccount -Endpoint "usgov"
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
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 que se describen en este documento usan .NET Framework. Esto lo hace incompatible con PowerShell 6.0 y versiones posteriores, que usa .NET Core.
Instalación de módulos
Para ejecutar los cmdlets de PowerShell para creadores de la aplicación, haga lo siguiente:
Ejecute PowerShell como administrador.
Importe los componentes necesarios mediante los siguientes comandos:
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 siguiente 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
Si se le solicita aceptar el cambio al valor InstallationPolicy del repositorio, acepte [A] Sí a todos los módulos. Para ello, escriba "A" y presione Entrar para cada módulo.
Antes de acceder a cualquiera de los comandos, tiene la opción de proporcionar sus credenciales usando el comando siguiente. Estas credenciales se actualizan hasta unas 8 horas antes de que deba iniciar sesión de nuevo para continuar usando los cmdlets.
# This call opens prompt to collect credentials (Azure Active Directory account and password) used by the commands Add-PowerAppsAccount
# Here is how you can pass in credentials (avoiding opening a prompt) $pass = ConvertTo-SecureString "password" -AsPlainText -Force Add-PowerAppsAccount -Username user@contoso.com -Password $pass
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, puede verificar la versión del módulo de los módulos de Power Platform usando específicamente Get-Module y el parámetro "-Name"
Get-Module -Name "Microsoft.PowerApps.Administration.PowerShell"
Get-Module -Name "Microsoft.PowerApps.PowerShell"
Y 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
Requisito previo
Los usuarios con una licencia de Power Apps válida pueden realizar operaciones en estos cmdlets, pero solo tienen acceso a los recursos (por ejemplo, las aplicaciones y los flujos). que se hayan creado o se han compartido con ellos.
Lista de cmdlet - Cmdlets de fabricante
Nota
Hemos actualizado algunos de los nombres de función de cmdlets en la última versión para agregar prefijos adecuados para evitar colisiones. Consulte la tabla siguiente para una visión general de lo que ha cambiado.
Objetivo | Cmdlet |
---|---|
Agregar una aplicación de lienzo a una solución Microsoft Dataverse | Set-PowerAppAsSolutionAware |
Leer y actualizar entornos | Get-AdminPowerAppEnvironment(antes Get-PowerAppsEnvironment) Get-FlowEnvironment Restore-PowerAppEnvironment(antes Restore-AppVersion) |
Leer, actualizar, y eliminar una aplicación de lienzo | Get-AdminPowerApp(antes Get-App) Remove-AdminPowerApp(antes Remove-App) Publish-AdminPowerApp (antes Publish-App) |
Leer, actualizar, y eliminar permisos de aplicación de lienzo | Get-AdminPowerAppRoleAssignment(antes Get-AppRoleAssignment) Remove-AdminPowerAppRoleAssignment(antes Remove-AppRoleAssignment) |
Leer, actualizar, y eliminar un flujo | Get-AdminFlow Enable-AdminFlow Disable-AdminFlow Remove-AdminFlow |
Leer, actualizar, y eliminar permisos de flujo | Get-AdminFlowOwnerRole Set-AdminFlowOwnerRole Remove-AdminFlowOwnerRole |
Lea y responder a aprobaciones de flujo | Get-AdminFlowApprovalRequest Remove-AdminFlowApprovals |
Leer y eliminar conexiones | Get-AdminPowerAppConnection(antes Get-Connection) Remove-AdminPowerAppConnection(antes Remove-Connection) |
Leer, actualizar, y eliminar permisos de conexión | Get-AdminPowerAppConnectionRoleAssignment(antes Get-ConnectionRoleAssignment) Set-AdminPowerAppConnectionRoleAssignment(antes Set-ConnectionRoleAssignment) Remove-AdminPowerAppConnectionRoleAssignment(antes Remove-ConnectionRoleAssignment) |
Leer y eliminar conectores | Get-AdminPowerAppConnector(antes Get-Connector) Remove-AdminPowerAppConnector(antes Remove-Connector) |
Agregar, leer, actualizar y eliminar permisos de conector personalizado | Get-AdminPowerAppConnectorRoleAssignment(antes Get-ConnectorRoleAssignment) Get-PowerAppConnectorRoleAssignment(antes Set-ConnectorRoleAssignment) Remove-PowerAppConnectorRoleAssignment(antes Remove-ConnectorRoleAssignment) |
Leer, agregar y eliminar patrones de URL de directivas | Get-PowerAppPolicyUrlPatterns New-PowerAppPolicyUrlPatterns Remove-PowerAppPolicyUrlPatterns |
Leer, registrar y quitar aplicaciones de administración | Get-PowerAppManagementApp Get-PowerAppManagementApps New-PowerAppManagementApp Remove-PowerAppManagementApp |
Leer, crear, actualizar e importar claves de protección | Get-PowerAppRetrieveAvailableTenantProtectionKeys Get-PowerAppGenerateProtectionKey Get-PowerAppRetrieveTenantProtectionKey New-PowerAppImportProtectionKey Set-PowerAppTenantProtectionKey |
Cmdlets de Power Apps para administradores
Para obtener más información sobre cmdlets de Power Apps para administradores, vaya a Introducción a PowerShell para administradores de Power Platform
Recomendaciones
Use Get-Help 'nombre_cmdlet' para obtener una lista de ejemplos.
Para recorrer las opciones posibles para etiquetas de entrada, seleccione la tecla TAB después de escribir del carácter de guión (-), después del nombre de 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
- Power Apps Comandos
- Power Automate comandos
- Comandos de conexión API
- Comandos de directiva de prevención de pérdida de datos (DLP)
- Cmdlets de exención de recursos de DLP
- Bloquear comandos de licencias de prueba
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).
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'
Devuelve una lista de 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.
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 canalización (representada como el carácter ‘|’ entre dos cmdlets) toma la salida del primer cmdlet y la pasa como el valor de entrada del segundo, asumiendo que la función se ha programado para admitir la característica de canalización.
Nota: una aplicación ya debe ser una aplicación caracterizada antes de que cambie a prominente.
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.
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 } }
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 básica de uso sobre el usuario de entrada mediante 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 Azure Active Directory. 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
Los resultados del cmdlet Get-AdminPowerAppLicenses solo incluyen licencias para los usuarios que han accedido a los servicios e Power Platform (por ejemplo, el centro de administración de Power Apps, Power Automate o Power Platform). Usuarios que han tenido licencias asignadas en Azure AD (típicamente a través del centro de administración de Microsoft 365) pero nunca he accedido a los servicios de Power Platform no tendrán sus licencias incluidas en la salida .csv generada. Además, dado que los servicios de licencia de Power Platform licencias almacenan en caché las licencias, las actualizaciones realizadas a las asignaciones de licencias en Azure AD puede tardar hasta siete días en reflejarse en el resultado de los usuarios que no han accedido 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 una PowerApp al usuario actual, y reemplaza el 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'
Esto muestra todas las aplicaciones de lienzo que se eliminaron recientemente y que aún pueden recuperarse.
Recuperar una aplicación de lienzo eliminada
Get-AdminRecoverDeletedPowerApp -AppName 'AppName' -EnvironmentName 'EnvironmentName'
Esto recupera una aplicación de lienzo que se puede descubrir 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 es el entorno 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
Esto 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'
Esto 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 Azure AD) 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 incluye en el mensaje de error que se muestra 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 los entornos/ es el EnvironmentName y el GUID después de los flujos/ es el FlowName - 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 los entornos/ es el EnvironmentName y el GUID después de los flujos/ es el FlowName - El AppName para la aplicación de lienzo se puede encontrar en la página de detalles de la aplicación de lienzo.
- El AppName de la aplicación basada en modelo se puede encontrar en el explorador de soluciones.
- Para ver ejemplos, escriba: "get-help Add-AdminFlowPowerAppContext -examples".
- Para obtener más 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
Use estos comandos para ver y modificar los datos relacionados con Power Automate.
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 Azure Active Directory del usuario, que se encuentra en Azure Portal, en Azure Active Directory>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
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 muestra los conectores personalizados que están en una solución. Es una limitación conocida.
Comandos de directiva de prevención de pérdida de datos (DLP)
Estos cmdlets controlan las directivas DLP en el inquilino.
Crear una directiva DLP
New-DlpPolicy
Crea una nueva directiva de DLP para el inquilino del administrador que inició sesión.
Recuperar una lista de objetos DLP
Get-DlpPolicy
Obtiene objetos de directiva para el inquilino del administrador que inició sesión.
Nota
- Al ver una directiva de DLP con PowerShell, el nombre de los conectores reflejará los nombres de los conectores cuando se creó la directiva de DLP o cuando se movieron por última vez los conectores específicos dentro de la directiva. En otras palabras, los cambios en los nombres para mostrar de los conectores no se reflejarán.
- Al ver una directiva de DLP con PowerShell, no se devolverán los conectores nuevos que están en el grupo predeterminado y nunca 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 hacer esto, cada uno de los conectores será visible con su nombre correcto.
Actualizar una directiva de DLP
Set-DlpPolicy
Actualiza detalles de la directiva, como el nombre para mostrar de la directiva.
Quitar una directiva
Remove-DlpPolicy
Elimina una directiva DLP.
Cmdlets de exención de recursos de DLP
Estos cmdlets le permiten aplicar una exención o anularla para un recurso específico de una política de DLP.
Recuperar la lista de recursos exentos existente para una directiva DLP
Get-PowerAppDlpPolicyExemptResources -TenantId -PolicyName
Crear una nueva lista de recursos exentos para una directiva DLP
New-PowerAppDlpPolicyExemptResources -TenantId -PolicyName -NewDlpPolicyExemptResources
Actualizar la lista de recursos exentos para una directiva DLP
Set-PowerAppDlpPolicyExemptResources -TenantId -PolicyName -UpdatedExemptResources
Quitar la lista de recursos exentos para una directiva DLP
Remove-PowerAppDlpPolicyExemptResources -TenantId -PolicyName
Para eximir un recurso de una directiva DLP, necesita la siguiente información:
- Id. de inquilino (GUID)
- Id. de directiva DLP (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
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 b1c07da8-2ae2-47e7-91b8-d3418892f507 -PolicyName 65da474a-70aa-4a59-9ae1-65a2bebbf98a -NewDlpPolicyExemptResources $exemptResources
15.
16. exemptResources
17. ---------------
18. {@{id=/providers/Microsoft.ProcessSimple/environments/Default-b1c07da8-2ae2-47e7-91b8-d3418892f507/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 DLP en los siguientes escenarios:
# | Escenario | Experiencia |
---|---|---|
1 | El usuario inicia una aplicación que no es compatible con DLP pero está exenta de DLP. | El lanzamiento de la aplicación continúa con o sin aplicación de DLP. |
2 | El creador guarda una aplicación que no es compatible con DLP pero está exenta de DLP | Con o sin exención de DLP, el cumplimiento de DLP no bloquea la operación de guardado de la aplicación. La advertencia de incumplimiento de DLP se muestra independientemente de la exención de DLP. |
3 | El creador guarda un flujo que no es compatible con DLP pero está exenta de DLP | Con o sin exención de DLP, el cumplimiento de DLP no bloquea la operación de guardado del flujo. La advertencia de incumplimiento de DLP no aparece. |
Comandos de contenido del mensaje de error de gobernanza
Los siguientes cmdlets se pueden utilizar para guiar a los usuarios finales al material de referencia de gobierno de su organización, incluido un vínculo a la documentación de gobierno y un contacto de gobierno, cuando los controles de gobierno lo soliciten. Por ejemplo, cuando se configura el contenido del mensaje de error de gobernanza, aparece en Mensajes de cumplimiento de la política de prevención de pérdida 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. La presencia de cada valor en el mensaje de error de gobernanza se controla mediante el campo "habilitado".
El contenido de este mensaje de error de gobernanza aparece en las siguientes experiencias.
# | Experiencia | Disponibilidad |
---|---|---|
1 | El usuario inicia una aplicación creada usando Power Apps que no es compatible con DLP | Disponible en general |
2 | Maker comparte una aplicación de lienzo Power Apps pero no tiene privilegio de compartir | Generalmente disponible |
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 | El creador guarda una aplicación creada usando Power Apps que no es compatible con DLP | Disponible en general |
5 | El creador guarda un flujo Power Automate que no cumple con DLP | 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"
}
}
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 "Suscripción ad-hoc" o "Viral" son licencias de prueba en las que los usuarios pueden registrarse a través de https://signup.microsoft.com o los administradores pueden asignar a los usuarios a través de Azure Active Directory (Azure AD) o el portal de administración de Microsoft 365.
De forma predeterminada, todos los tipos de planes de consentimiento están permitidos en un inquilino. Un caso de uso común para estos cmdlets es si un administrador de Power Platform quiere bloquear a los usuarios dentro de su inquilino de la capacidad de asignarse licencias de prueba, pero conservar la capacidad de asignar licencias de prueba en nombre de los usuarios. Esto se puede lograr mediante el comando Remove-AllowedConsentPlans -Types "Internal", y deshabilitando la configuración AllowAdHocSubscriptions en Azure AD.
Es importante saber que al usar Remove-allowedConsentPlans, todos los planes existentes del tipo especificado se eliminan de todos los usuarios del inquilino y no se pueden recuperar. Además, bloquea toda asignación subsiguiente adicional de planes de ese tipo. Si, en un momento posterior, el administrador de Power Platform desea volver a habilitar planes de ese tipo que puedan usar Add-allowedConsentPlans. Si desean ver el estado actual de los planes de consentimiento permitidos, pueden usar Get-allowConsentPlans.
Si tiene preguntas
Si tiene comentarios, sugerencias o preguntas, envíelas a Administración del panel de la comunidad de Power Apps.
Vea también
Empezar a usar el módulo de administración de Power Apps
Microsoft.PowerApps.Administration.PowerShell
Vista previa: información general de programabilidad y extensibilidad