Freigeben über


PowerShell-Unterstützung für Power Apps und Power Automate

Mit PowerShell Cmdlets für Power Platform-Ersteller und -Administratoren können Sie viele Überwachungs- und Verwaltungsaufgaben automatisieren. Aufgaben, die heute nur manuell möglich sind, in Power Apps, Power Automate oder im Power Platform Admin Center.

Cmdlets

Cmdlets sind in der PowerShell Skriptsprache geschriebene Funktionen, die Befehle in PowerShell ausführen. Durch das Ausführen dieser Power Apps Cmdlets können Sie mit der Geschäftsanwendungs-Plattform interagieren, ohne auf das Verwaltungsportal in einem Webbrowser zugreifen zu müssen.

Sie können Cmdlets mit anderen PowerShell-Funktionen kombinieren, um komplexe Skripts zu schreiben, die den Workflow optimieren können. Sie können weiterhin Cmdlets verwenden, wenn Sie kein Administrator des Mandanten sind, allerdings ist die Anzahl der Ressourcen, die Sie besitzen limitiert. Administratorbenutzerkonten verwenden Cmdlets, die mit Admin beginnen.

Cmdlets sind im PowerShell-Katalog als zwei separate Module verfügbar:

Informationen zum Power Apps-Admin-Modul, siehe Beginnen Sie mit der Power Apps Admin-Modul und Microsoft.PowerApps.Administration.PowerShell.

Erste Schritte mit PowerShell

Wenn Sie neu bei PowerShell sind und Hilfe beim Suchen und Starten benötigen, gehen Sie zu Erste Schritte mit PowerShell. Wenn Sie Hilfe bei der Verwendung von PowerShell oder den Cmdlets benötigen, gehen Sie zum PowerShell-Hilfesystem.

Voraussetzungen für PowerShell

PowerShell in diesem Artikel erfordert Windows PowerShell Version 5.x. Führen Sie den folgenden Befehl aus, um die auf Ihrem Computer ausgeführte Version von PowerShell zu überprüfen:

$PSVersionTable.PSVersion

Wenn Sie eine veraltete Version haben, gehen Sie zu Aktualisieren der vorhandenen Windows PowerShell.

Wichtig

Die in diesem Dokument beschriebenen Module verwenden .NET Framework, das mit PowerShell 6.0 und höher nicht kompatibel ist. Diese späteren Versionen verwenden .NET Core.

Modulinstallation und Anmeldung

Um PowerShell-Cmldets für App-Entwickler auszuführen:

  1. Führen Sie PowerShell als Administrator aus.

    Screenshot, der zeigt, wie PowerShell als Administrator ausgeführt wird

  2. Importieren Sie die erforderlichen Module.

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

    Wenn Sie keine Administratorrechte auf Ihrem Computer haben, können Sie alternativ den -Scope CurrentUser-PArrameter für die Installation verwenden.

    Install-Module -Name Microsoft.PowerApps.Administration.PowerShell -Scope CurrentUser
    Install-Module -Name Microsoft.PowerApps.PowerShell -AllowClobber -Scope CurrentUser
    
  3. Wenn Sie aufgefordert werden, die Änderung des InstallationPolicy-Wertes des Repositorys zu akzeptieren, akzeptieren Sie [A] Yes für alle Module durch Eingabe von A, und betätigen Sie dann Enter für jedes Modul.

    Screenshot, der zeigt, wo der InstallationPolicy-Wert in PowerShell akzeptiert werden soll

  4. Optional können Sie vor dem Zugriff auf die Befehle Ihre Anmeldeinformationen eingeben. Anmeldeinformationen werden für bis zu 8 Stunden aktualisiert, bevor Sie sich erneut anmelden müssen. Wenn vor der Ausführung eines Befehls keine Anmeldeinformationen angegeben werden, wird eine Eingabeaufforderung für die Anmeldeinformationen angezeigt.

    # 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. Optional kann ein bestimmtes Endpunkt als Ziel verwendet werden. Der Standardwert Endpunkt ist prod. Wenn ein Benutzer ein PowerShell-Skript ausführen möchte, das auf ein Umgebung in einer Nicht-Produktionsregion wie GCC abzielt, kann der -Endpoint Parameter in usgov für GCC Moderate, oder usgovhigh für GCC High, oder dod für GCC DOD geändert werden. Die vollständige Liste der unterstützten Endpunkte lautet: „prod,Vorschauversion,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" 
    

Modulaktualisierungen

Sie können die Version aller Ihrer PowerShell-Module mit Module abrufen überprüfen.

Get-Module

Und Sie können alle Ihre PowerShell-Module mit Modul aktualisieren auf den neuesten Stand aktualisieren.

Update-Module

Alternativ können Sie die Power Platform-Modulversion überprüfen, indem Sie Module abrufen und den -Name-Parameter verwenden.

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

Aktualisieren Sie die Power Platform-PowerShell-Module mit Module aktualisieren und dem -Name-Parameter.

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

Power Apps-Cmdlets für App-Ersteller

Voraussetzungen für Power Apps-Cmdlets

Benutzer mit einer gültigen Power Apps-Lizenz können die Vorgänge in diesen Cmdlets ausführen. Sie haben jedoch nur Zugriff auf Ressourcen wie Apps und Flows, die von ihnen erstellt oder mit ihnen geteilt werden.

Cmdlet-Liste – Ersteller-Cmdlets

Anmerkung

Wir haben einige der Cmdlets-Funktionsnamen in der neuesten Version aktualisiert, um geeignete Präfixe hinzuzufügen, um Kollisionen zu verhindern. Eine Übersicht darüber, was sich geändert hat, finden Sie in der folgenden Tabelle.

Purpose Cmdlet
Eine Canvas-App zu einer Microsoft Dataverse-Lösung hinzufügen Set-PowerAppAsSolutionAware
Lesen und Aktualisieren von Umgebungen Get-AdminPowerAppEnvironment (vorher Get-PowerAppsEnvironment)
Get-FlowEnvironment
Restore-PowerAppEnvironment (vorher Restore-AppVersion)
Lesen, Aktualisieren und Löschen einer Canvas-App Get-AdminPowerApp(vorher Get-App)
Remove-AdminPowerApp (vorher Remove-App)
Publish-AdminPowerApp (zuvor Publish-App)
Lesen, Aktualisieren und Löschen von Canvas-App-Berechtigungen Get-AdminPowerAppRoleAssignment (vorher Get-AppRoleAssignment)
Remove-AdminPowerAppRoleAssignment (vorher Remove-AppRoleAssignment)
Lesen, Aktualisieren und Löschen eines Flows Get-AdminFlow
Aktivieren-AdminFlow
Deaktivieren-AdminFlow
Entfernen-AdminFlow
Lesen, Aktualisieren und Löschen von Flow-Berechtigungen Get-AdminFlowOwnerRole
AdminFlowOwnerRole festlegen
Entfernen-AdminFlowOwnerRole
Lesen von und reagieren auf Flow-Genehmigungen Get-AdminFlowApprovalRequest
Entfernen-AdminFlowApprovals
Lesen und Löschen von Verbindungen Get-AdminPowerAppConnection(vorher Get-Connection)
Remove-AdminPowerAppConnection (vorher Remove-Connection)
Lesen, Aktualisieren und Löschen von Verbindungs-Berechtigungen Get-AdminPowerAppConnectionRoleAssignment (vorher Get-ConnectionRoleAssignment)
Set-AdminPowerAppConnectionRoleAssignment (vorher Set-ConnectionRoleAssignment)
Remove-AdminPowerAppConnectionRoleAssignment (vorher Remove-ConnectionRoleAssignment)
Connectors lesen und löschen Get-AdminPowerAppConnector (vorher Get-Connector)
Remove-AdminPowerAppConnector (vorher Remove-Connector)
Berechtigungen für benutzerdefinierte Connectors hinzufügen, lesen, aktualisieren und löschen Get-AdminPowerAppConnectorRoleAssignment (vorher Get-ConnectorRoleAssignment)
Get-PowerAppConnectorRoleAssignment (vorher Set-ConnectorRoleAssignment)
Remove-PowerAppConnectorRoleAssignment (vorher Remove-ConnectorRoleAssignment)
Lesen, Hinzufügen und Entfernen von Richtlinien-URL-Mustern Get-PowerAppPolicyUrlPatterns
Neu-PowerAppPolicyUrlPatterns
Entfernen-PowerAppPolicyUrlPatterns
Management-Apps lesen, registrieren und entfernen Holen Sie sich PowerAppManagementApp
Holen Sie sich PowerAppManagementApps
Neu-PowerAppManagementApp
Entfernen-PowerAppManagementApp
Schutzschlüssel lesen, erstellen, aktualisieren und importieren Get-PowerAppRetrieveAvailableTenantProtectionKeys
Holen Sie sich PowerAppGenerateProtectionKey
Get-PowerAppRetrieveTenantProtectionKey
Neu-PowerAppImportProtectionKey
Festlegen des PowerAppTenantProtectionKey

Power Apps-Cmdlets für Administratoren

Weitere Informationen zu Power Apps und Power Automate-Cmdlets für Administratoren finden Sie unter Einstieg in PowerShell für Power Platform-Administratoren.

Tipps

  • Verwenden Sie Get-Help, gefolgt von einem CmdletName, um eine Liste von Beispielen abzurufen.

    Screenshot, der die Verwendung des Befehls „Get-Help“ zeigt

  • Nach der Eingabe des Bindestrichs - können Sie Tab drücken, um durch die Eingabe-Tags zu blättern. Platzieren Sie das Flag nach dem Cmdlet-Namen.

Befehlsbeispiele:

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

Vorgangsbeispiele

Nachfolgend werden einige allgemeine Szenarien angezeigt, die Aufschluss über die Verwendung neuer und vorhandener Power Apps Cmdlets geben.

Umgebungs-Befehle

Verwenden Sie diese Befehle, um Details zu Umgebungen in Ihrem Mandanten abzurufen und diese zu aktualisieren.

Anzeigen einer Liste aller Umgebungen

Get-AdminPowerAppEnvironment

Gibt eine Liste jeder Umgebung in Ihrem Mandanten mit Details zu jeder Umgebung zurück (z. B. Umgebungsname (GUID), Anzeigename, Standort, Entwickler usw.).

Anzeigen von Details zu Ihrer Standardumgebung

Get-AdminPowerAppEnvironment –Default

Gibt die Details nur für die Standardumgebung des Mandanten zurück.

Zeigt Details einer bestimmten Umgebung an

Get-AdminPowerAppEnvironment –EnvironmentName 'EnvironmentName'

Anmerkung

Das Feld EnvironmentName ist ein eindeutiger Bezeichner, der sich vom DisplayName unterscheidet (siehe erstes und zweites Feld in der Ausgabe im folgenden Bild).

Get-AdminEnvironment-Befehl

Power Apps-Befehle

Diese Vorgänge werden zum Lesen und Ändern von Power Apps-Daten in Ihrem Mandanten verwendet.

Anzeigen einer Liste aller Power Apps

Get-AdminPowerApp

Gibt eine Liste aller Power Apps in Ihrem Mandanten mit Details zu jeder Umgebung zurück (z. B. Anwendungsname (GUID), Anzeigename, Creator usw.).

Anzeigen einer Liste aller Power Apps, die dem Anzeigenamen entsprechen

Get-AdminPowerApp 'DisplayName'

Dieser Befehl listet alle Power Apps in Ihrem Mandanten auf, die dem Anzeigenamen entsprechen.

Anmerkung

Verwenden Sie Anführungszeichen um Eingabewerte, die Leerzeichen enthalten. Zum Beispiel "My App Name".

Eine Anwendung empfehlen

Set-AdminPowerAppAsFeatured –AppName 'AppName'

Empfohlene Anwendungen werden gruppiert und in der obersten Liste im mobilen Power Apps-Player verschoben.

Anmerkung

Wie Umgebungen ist das Feld AppName ein eindeutiger Bezeichner, der sich von DisplayName unterscheidet. Wenn Sie Vorgänge basierend auf dem Anzeigenamen ausführen möchten, können Sie mit einigen Funktionen die Pipeline verwenden (siehe nächste Funktion).

Eine Anwendung mit der Pipeline zur herausragenden App machen

Get-AdminPowerApp 'DisplayName' | Set-AdminPowerAppAsHero

Eine herausragende App wird oben in der Liste des mobilen Power Apps-Players angezeigt. Es kann nur eine herausragende App geben.

Der Strich | zwischen zwei Cmdlets übernimmt die Ausgabe des ersten Cmdlets und übergibt sie als Eingabewert des zweiten Cmdlets, wenn die Funktion geschrieben wird, um den Strich aufzunehmen.

Anmerkung

Eine App muss bereits eine empfohlene App sein, bevor sie zu einem Hero geändert wird.

Anzeige der Anzahl der Apps, die jeder Benutzer besitzt

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

Sie können native PowerShell-Funkionen mit Power Apps-Cmdlets kombinieren, um Daten noch weiter zu ändern. Hier verwenden wir die Auswahl-Funktion, um das Besitzer-Attribut (ein Objekt) vom Get-AdminApp-Objekt zu isolieren. Anschließend isolieren wir den Namen des Besitzerobjektes, indem wir diese Ausgabe in eine andere Auswahl-Funktion einfügen. Wenn Sie die zweite Ausgabe der Auswahl-Funktion an die Gruppen-Funktion übergeben, erhalten Sie eine übersichtliche Tabelle mit der Anzahl der Apps jedes Besitzers.

Get-AdminPowerApp-Befehl

Anzeigen der Anzahl der Apps in jeder Umgebung

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

Get-AdminPowerApp-Umgebung

Herunterladen der Power Apps-Benutzerdetails

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

Der vorherige Befehl speichert die Power Apps-Benutzerdetails (grundlegende Nutzungsinformationen zum Eingabebenutzer über den Benutzerprinzipalnamen) in der angegebenen Textdatei. Es wird eine neue Datei erstellt, wenn keine Datei mit diesem Namen vorhanden ist, und die Textdatei wird überschrieben, wenn sie bereits vorhanden ist.

Liste der zugewiesenen Benutzerlizenzen exportieren

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

Exportiert alle zugewiesenen Benutzerlizenzen (Power Apps und Power Automate) in Ihrem Mandanten in einer tabellarischen Ansicht in eine .csv-Datei. Die exportierte Datei enthält sowohl Self-Service-, Anmeldepläne und Pläne für interne Tests als auch Pläne, die von Microsoft Entra ID bezogen werden. Die internen Testversionspläne sind für Administratoren im Microsoft 365 Admin Center nicht sichtbar.

Der Export kann für Mandanten mit einer großen Anzahl von Microsoft Power Platform-Benutzern eine Weile dauern.

Anmerkung

Die Ausgabe des Cmdlets Get-AdminPowerAppLicenses enthält nur Lizenzen für Benutzer, die auf Power Platform-Dienste zugegriffen haben (z. B. Power Apps, Power Automate oder Power Platform Admin Center). Benutzer, denen Lizenzen in der Microsoft Entra-ID zugewiesen wurden (in der Regel über das Microsoft 365 Admin Center), aber niemals auf Power Platform-Dienste zugegriffen haben, verfügen nicht über ihre Lizenzen in der generierten .csv Ausgabe. Da die Power Platform-Lizenzierungsdienste die Lizenzen zwischenspeichern, können Aktualisierungen, die an Lizenzzuweisungen in microsoft Entra ID vorgenommen wurden, bis zu sieben Tage dauern, bis die Ausgabe für Benutzer widergibt, die kürzlich nicht auf den Dienst zugreifen.

Festlegen des angemeldeten Benutzers als Besitzer einer Canvas-App

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

Ändert die Besitzerrolle eines Power App zum aktuellen Benutzer und ersetzt den ursprünglichen Besitzer durch den Rollentyp „kann anzeigen“.

Anmerkung

Die AppName- und EnvironmentName-Felder sind die eindeutigen Bezeichner (GUIDs), nicht die Anzeigenamen.

Anzeigen einer Liste der gelöschten Canvas-Apps in einer Umgebung

Get-AdminDeletedPowerAppsList -EnvironmentName 'EnvironmentName'

Dieser Befehl zeigt alle Canvas Apps an, die kürzlich gelöscht wurden und möglicherweise noch wiederhergestellt werden können.

Wiederherstellen einer gelöschten Canvas App

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

Dieser Befehl stellt eine Canvas-App wieder her, die über das Get-AdminDeletedPowerAppsList-Cmdlet auffindbar ist. Jede Canvas-App, die nicht in Get-AdminDeletedPowerAppsList angezeigt wird, kann nicht wiederhergestellt werden.

SharePoint angepasste Umgebung für Formulare benennen

Mit den folgenden Cmdlets können Sie angeben und überprüfen, in welcher Umgebung SharePoint angepasste Formulare gespeichert werden, anstatt in der Standardumgebung. Wenn sich die vorgesehene Umgebung für SharePoint angepasste Formulare ändert, ist dies die Umgebung, in der neu erstellte angepasste Formulare gespeichert werden. Vorhandene angepasste Formulare werden nicht automatisch in andere Umgebungen migriert, wenn diese Cmdlets verwendet werden. Die Möglichkeit für einen Benutzer, ein angepasstes Formular in einer bestimmten Umgebung zu erstellen, erfordert, dass dieser Benutzer die Rolle Environment Maker hat. Benutzern kann im Power Platform Admin-Center die Rolle Environment Maker zugewiesen werden.

Jede Umgebung, die nicht die Standardumgebung ist, kann gelöscht werden. Wenn die vorgesehene SharePoint-Umgebung für angepasste Formulare gelöscht wird, werden die angepassten Formulare mit ihr gelöscht.

Get-AdminPowerAppSharepointFormEnvironment  

Dieser Befehl gibt den EnvironmentName für die Umgebung zurück, die derzeit für neu erstellte angepasste SharePoint-Formulare vorgesehen ist. Wenn nie eine Umgebung bestimmt wurde, wird die Standardumgebung zurückgegeben.

Set-AdminPowerAppSharepointFormEnvironment –EnvironmentName 'EnvironmentName' 

Dieser Befehl bezeichnet die Umgebung, in der neu erstellte angepasste SharePoint-Formulare gespeichert werden, anstelle der Standardumgebung. Vorhandene angepasste Formulare werden nicht automatisch in die neu bestimmte Umgebung migriert. Für SharePoint angepasste Formulare dürfen nur Produktionsumgebungen bestimmt werden.

Reset-AdminPowerAppSharepointFormEnvironment  

Hiermit wird die Standardumgebung als die vorgesehene Umgebung zum Speichern von SharePoint angepassten Formularen zurückgesetzt.

Die Mandanteneinstellung für die Möglichkeit, Apps für Alle freizugeben, anzeigen

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

Diese Einstellung steuert, ob Benutzer mit der Sicherheitsrolle „Umgebungserstellung“ Canvas-Apps für Alle Benutzer in einer Organisation freigeben können. Wenn die Einstellung auf true gesetzt ist, können nur Benutzer mit einer Administratorrolle (Dynamics 365-Administrator, Power Platform-Dienstadministrator, Microsoft Entra-Mandantenadministrator) Apps für Alle Benutzer in einer Organisation freigeben.

Entwickler mit Freigabeberechtigung können unabhängig von diesem Mandanteneinstellungswert Sicherheitsgruppen beliebiger Größe freigeben. Dieses Steuerelement bestimmt nur, ob die Kurzform Alle bei der Freigabe verwendet werden kann.

Die Mandanteneinstellung für die Möglichkeit, Apps für Alle freizugeben, ändern

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

Den Inhalt der Governance-Fehlermeldung Ihrer Organisation anzeigen

Wenn Sie festlegen, dass der Inhalt der Governance-Fehlermeldung in Fehlermeldungen angezeigt werden soll, wird der Inhalt in die Fehlermeldung aufgenommen, die angezeigt wird, wenn Entwickler feststellen, dass sie nicht berechtigt sind, Apps für Alle freizugeben. Siehe PowerShell-Befehle für den Inhalt von Governance-Fehlermeldungen.

Kontextbezogene Flows einer App zuordnen

Ordnen Sie Flows im Kontext einer App der App zu, um eine Abhängigkeit zwischen der App und Flows zu erstellen. Weitere Informationen zu Kontextflüssen finden Sie unter Welche Power Automate Fähigkeiten sind in Power Apps Lizenzen enthalten?

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

EnvironmentName und FlowName sind in der Flow-URL zu finden:

  • Für einen Nicht-Lösungsflow sieht die URL wie folgt aus:

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

    Die GUID nach environments/ ist der EnvironmentName und die GUID nach flows/ ist der FlowName.

  • Für einen Lösungsflow sieht die URL wie folgt aus:

    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
    

    Die GUID nach environments/ ist der EnvironmentName und die GUID nach flows/ ist der FlowName.

  • Den AppName für eine Canvas-App finden Sie auf der Detailseite der Canvas-App.

    Screenshot der zeigt, dass der AppName für eine Canvas-App auf der Detailseite der Canvas-App zu finden ist

  • Der AppName für eine modellgesteuerte App finden Sie im Projektmappen-Explorer.

    Screenshot der zeig, dass der AppName für eine modellgesteuerte App im Projektmappen-Explorer zu finden ist

  • Um die Beispiele anzuzeigen, geben Sie Folgendes ein: get-help Add-AdminFlowPowerAppContext -examples.

  • Um weitere Informationen zu erhalten, geben Sie Folgendes ein: get-help Add-AdminFlowPowerAppContext -detailed.

  • Um technische Informationen zu erhalten, geben Sie Folgendes ein: get-help Add-AdminFlowPowerAppContext -full.

Kontextbezogene Flows einer App entfernen

Entfernen Sie die Abhängigkeit zwischen Flows und einer App mit diesem PowerShell-Befehl. Der „Remove-AdminFlowPowerAppContext“ entfernt App-Kontext aus dem spezifischen Flow.

    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".

Power Automate-Befehle

Verwenden Sie diese wichtigen Befehle, um die Verwaltung im Zusammenhang mit Power Automate durchzuführen.

Eine umfassende Liste der Power Automate- und Power Apps-Cmdlets für Administratoren finden Sie unter Einstieg in PowerShell für Power Platform-Administratoren.

Anzeigen aller Flows

Get-AdminFlow

Gibt eine Liste aller Flows in einem Mandanten zurück.

Anzeigen von Rollendetails zu Flow-Besitzern

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

Gibt die Besitzerdetails des angegebenen Flows zurück.

Anmerkung

Wie Environments und PowerApps ist FlowName der eindeutige Bezeichner (GUID), der sich vom Anzeigenamen des Flow unterscheidet.

Anzeigen von Flow-Benutzerdetails

Get-AdminFlowUserDetails –UserId $Global:currentSession.userId

Gibt die Benutzerdetails zur Flow-Nutzung zurück. In diesem Beispiel wird die Benutzer-ID des aktuell angemeldeten Benutzers der PowerShell-Sitzung als Eingabe verwendet.

Entfernen von Flow-Benutzerdetails

Remove-AdminFlowUserDetails –UserId 'UserId'

Löscht die Details zu einem Flow-Benutzer vollständig aus der Microsoft-Datenbank. Alle Flows, die dem eingegebenen Benutzer gehören, müssen gelöscht werden, bevor die Flow-Benutzerdetails gelöscht werden können.

Anmerkung

Das UserId-Feld ist die Objekt-ID des Microsoft Entra-Benutzerdatensatzes, der sich im Azure-Portal unter Microsoft Entra ID>Benutzer>Profil>Objekt-ID befindet. Sie müssen ein Administrator sein, um von hier aus auf diese Daten zugreifen zu können.

Exportieren aller Flows in eine CSV-Datei

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

Exportiert alle Flows in Ihrem Mandanten in eine CSV-Datei mit tabellarischer Ansicht.

Hinzufügen von Cloud-Flows in Dataverse-Lösungen

Add-AdminFlowsToSolution -EnvironmentName <String>

Migriert alle Nicht-Lösungsflows in der Umgebung.

Parametervariationen können verwendet werden, um nur bestimmte Flows zu migrieren, sie einer bestimmten Lösung hinzuzufügen oder nur eine bestimmte Anzahl von Flows gleichzeitig zu migrieren.

Weitere technische Details finden Sie unter Add-AdminFlowsToSolution.

Auflisten von HTTP-Aktionsflüssen

Get-AdminFlowWithHttpAction -EnvironmentName <String>

Listet Flüsse mit HTTP-Aktionen auf.

Anzeigename FlowName EnvironmentName
Rechnungs-HTTP abrufen Flow-1 Umgebung-1
Rechnung aus App bezahlen Flow-2 Umgebung-2
Konto abstimmen Ablauf-3 Umgebung-3

API-Verbindungsbefehle

Anzeigen und Verwalten von API-Verbindungen in Ihrem Mandanten.

Anzeigen aller nativen Verbindungen in Ihrer Standardumgebung

Get-AdminPowerAppEnvironment -Default | Get-AdminPowerAppConnection

Zeigt eine Liste aller API-Verbindungen an, die Sie in der Standardumgebung haben. Native Verbindungen finden Sie unter der Registerkarte Dataverse>Verbindungen in Power Apps.

Anzeigen aller benutzerdefinierten Connectors im Mandanten

Get-AdminPowerAppConnector

Gibt eine Liste aller benutzerdefinierten Connector-Details im Mandanten zurück.

Anmerkung

Get-AdminPowerAppConnector listet keine benutzerdefinierten Konnektoren auf, die in einer Lösung enthalten sind. Dies ist eine bekannte Einschränkung.

Datenrichtlinienbefehle

Diese Cmdlets steuern die Datenrichtlinien für Ihren Mandanten.

Erstellen einer Datenrichtlinie

New-DlpPolicy

Erstellt eine neue Datenrichtlinie für den Mandanten des angemeldeten Administrators.

Abrufen einer Liste von Datenrichtlinienobjekten

Get-DlpPolicy

Ruft Richtlinien-Objekte für den Mandanten des angemeldeten Admins ab.

Anmerkung

  • Wenn Sie eine Datenrichtlinie mit PowerShell anzeigen, stammen der Anzeigename von Connectors, wann die Datenrichtlinie erstellt wurde oder wann die Connectors zuletzt innerhalb der Richtlinie verschoben wurden. Neue Änderungen an den Anzeigenamen von Connectors werden nicht wiedergegeben.
  • Wenn Sie eine Datenrichtlinie mit PowerShell anzeigen, werden keine neuen Connectors in der Standardgruppe zurückgegeben, die nicht verschoben wurden.

Eine Problemumgehung für diese beiden bekannten Probleme besteht darin, den betroffenen Konnektor in eine andere Gruppe innerhalb der Richtlinie zu verschieben und ihn dann wieder in die richtige Gruppe zu verschieben. Danach ist jeder der Verbinder mit dem richtigen Namen sichtbar.

Aktualisieren einer Datenrichtlinie

Set-DlpPolicy

Aktualisiert Details der Richtlinie, wie z. B. den Anzeigenamen der Richtlinie.

Entfernen einer Richtlinie

Remove-DlpPolicy

Löscht eine Datenrichtlinie.

Cmdlets für Datenressourcenausnahme

Mit diesen Cmdlets können Sie eine bestimmte Ressource aus einer Richtlinie ausnehmen oder aufheben.

Abrufen vorhandener ausgenommener Ressourcenliste für eine Datenrichtlinie

Get-PowerAppDlpPolicyExemptResources -TenantId -PolicyName 

Erstellen einer neuen Ausnahmeressourcenliste für eine Datenrichtlinie

New-PowerAppDlpPolicyExemptResources -TenantId -PolicyName -NewDlpPolicyExemptResources 

Aktualisieren der Liste der ausgenommenen Ressourcen für eine Datenrichtlinie

Set-PowerAppDlpPolicyExemptResources -TenantId -PolicyName -UpdatedExemptResources 

Entfernen der Liste der ausgenommenen Ressourcen für eine Datenrichtlinie

Remove-PowerAppDlpPolicyExemptResources -TenantId -PolicyName 

Um eine Ressource von einer Datenrichtlinie auszunehmen, benötigen Sie die folgenden Informationen:

  • Mandanten-ID (GUID)
  • Datenrichtlinien-ID (GUID)
  • Ressourcen-ID (endet mit einer GUID)
  • Ressourcentyp

Sie können die ID und den Typ einer Ressource mithilfe der PowerShell-Cmdlets „Get-PowerApp“ für Apps und „Get-Flow“ für Flows abrufen.

Beispiel für ein Entfernungsskript

Um den Flow mit der ID f239652e-dd38-4826-a1de-90a2aea584d9 und die App mit der ID 06002625-7154-4417-996e-21d7a60ad624 auszuschließen, können wir die folgenden Cmdlets ausführen:

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.. 

Datenrichtlinienausnahme in den folgenden Szenarien

# Szenario Erfahrung
1 Der Benutzer startet eine App, die nicht datenrichtlinienkonform ist, aber Datenrichtlinien ausgenommen. Der Start der App wird mit oder ohne Erzwingung von Datenrichtlinien fortgesetzt.
2 Maker speichert eine App, die nicht datenrichtlinienkonform ist, aber Datenrichtlinie ausgenommen Mit oder ohne Datenrichtlinienausnahme blockiert die Datenrichtliniencompliance den App-Speichervorgang nicht. Die Warnung zur Nichtkompatibilität der Datenrichtlinie wird unabhängig von der Datenrichtlinienausnahme angezeigt.
3 Maker speichert einen Fluss, der nicht datenrichtlinienkonform ist, aber Datenrichtlinien ausgenommen Mit oder ohne Datenrichtlinienausnahme blockiert die Datenrichtliniencompliance den Ablaufspeichervorgang nicht. Die Warnung zur Nichtkompatibilität der Datenrichtlinie wird nicht angezeigt.

Inhaltsbefehle für Governance-Fehlermeldungen

Die folgenden Cmdlets können Ihre Endbenutzer zum Governance-Referenzmaterial Ihrer Organisation führen. Der Befehl enthält einen Link zur Governance-Dokumentation und einen Governance-Kontakt für den Fall, dass sie durch Governance-Kontrollen dazu aufgefordert werden. Wenn beispielsweise Governancefehlermeldungen festgelegt werden, wird sie in Power Apps-Datenrichtlinien-Erzwingungsmeldungen angezeigt.

Inhalt von Governance-Fehlermeldungen festlegen

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

Die URL der Governance-Fehlermeldung und die E-Mail-Adresse können unabhängig voneinander oder zusammen angezeigt werden. Sie können die Governance-Fehlermeldung mit dem enabled-Feld aktivieren oder deaktivieren.

Szenarien für Governance-Fehlermeldungen

# Szenario Verfügbarkeit
1 Der Benutzer startet eine App, die mit Power Apps erstellt wurde, die keine Datenrichtlinie konform ist. Allgemein verfügbar
2 Der Entwickler teilt eine Power Apps-Canvas-App, hat aber kein Freigaberecht Allgemein verfügbar
3 Der Entwickler teilt eine Power Apps-Canvas-App mithilfe der Option Alle, ist dazu aber nicht berechtigt Allgemein verfügbar
4 Maker speichert eine App, die mit Power Apps erstellt wurde, die keine Datenrichtlinie konform ist. Allgemein verfügbar
5 Maker speichert einen Power Automate-Fluss, der nicht datenrichtlinienkonform ist Allgemein verfügbar
6 Der Benutzer startet eine App ohne Sicherheitsgruppenmitgliedschaft in der Sicherheitsgruppe, die der Dataverse-Umgebung zugeordnet ist Allgemein verfügbar

Inhalt von Governance-Fehlermeldungen anzeigen

Get-PowerAppDlpErrorSettings -TenantId 'TenantId' 

Inhalt von Governance-Fehlermeldungen aktualisieren

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

Erzwingen von Datenrichtlinien für Verstöße gegen Verbindungen – Umgebung

Mit diesen Cmdlets können Sie Datenrichtlinien erzwingen, um Verbindungen auf Umgebungs- oder Mandantenebene zu verletzen.

Erzwingen von Datenrichtlinien für Verstöße gegen Verbindungen

Sie können Datenrichtlinien für Verbindungen in einer Umgebung erzwingen. Durch das Erzwingen von vorhandenen Verbindungen, die gegen Datenrichtlinien verstoßen, werden alle zuvor deaktivierten Verbindungen aktiviert, die nicht mehr gegen Datenrichtlinien verstoßen.

Start-DLPEnforcementOnConnectionsInEnvironment -EnvironmentName [Environment ID]
Beispielskript für die Durchsetzung auf Umgebungsebene
Start-DLPEnforcementOnConnectionsInEnvironment -EnvironmentName c4a07cd6-cb14-e987-b5a2-a1dd61346963 

Erzwingen von Datenrichtlinien für Verstöße gegen Verbindungen – Mandant

Sie können Datenrichtlinien für Verbindungen im Mandanten erzwingen. Durch das Erzwingen von vorhandenen Verbindungen, die gegen Datenrichtlinien verstoßen, werden alle zuvor deaktivierten Verbindungen aktiviert, die nicht mehr gegen Datenrichtlinien verstoßen.

Start-DLPEnforcementOnConnectionsInTenant

Befehle zum Blockieren von Testlizenzen

Befehle:

Remove-AllowedConsentPlans
Add-AllowedConsentPlans
Get-AllowedConsentPlans

Mit den Cmdlets für zulässige Einwilligungspläne können Sie einem Mandanten Zugriff auf einen bestimmten Typ von Einwilligungsplan genehmigen oder verweigern. „Interne“ Zustimmungspläne sind entweder Testlizenzen oder Entwicklerpläne, für die sich Benutzer selbst über Power Apps/Power Automate Portale/Power Automate für Desktop. „Ad-hoc-Abonnement“- oder „virale” Zustimmungspläne sind Testlizenzen, für die sich Benutzer selbst über https://signup.microsoft.com anmelden können. Administratoren können Benutzer über Microsoft Entra ID oder das Microsoft 365-Administratorportal zuweisen.

Standardmäßig sind alle Arten von Zustimmungsplänen in einem Mandanten zulässig. Ein Power Platform-Administrator möchte jedoch möglicherweise verhindern, dass Benutzer selbst Testlizenzen zuweisen, aber die Möglichkeit behalten, Testlizenzen im Auftrag von Benutzern zuzuweisen. Diese Regel kann mithilfe des Remove-AllowedConsentPlans -Types "Internal" Befehls erreicht werden und die Einstellung Update-MgPolicyAuthorizationPolicy -AllowedToSignUpEmailBasedSubscriptions in Microsoft Entra ID nicht zulassen.

Wichtig

Bei Verwendung Remove-AllowedConsentPlanswerden alle vorhandenen Pläne des angegebenen Typs von allen Benutzern im Mandanten entfernt und können nicht wiederhergestellt werden. Dieser Befehl blockiert alle zukünftigen Zuweisungen dieser Art. Wenn der Power Platform-Administrator Pläne dieses Typs wieder aktivieren möchte, kann er hierfür Add-AllowedConsentPlans verwenden. Wenn er den aktuellen Status der genehmigten Zustimmungspläne anzeigen möchten, kann er Get-AllowedConsentPlans verwenden.

Wenn Sie Fragen haben

Wenn Sie Kommentare, Vorschläge oder Fragen haben, posten Sie sie im Community board "Verwalten von Power Apps".