Del via


Angive en kørselsejer på en forbindelse til et skrivebordsflow (forhåndsversion)

[Denne artikel er til dokumentationen til den foreløbige udgivelse. Der kan forekomme ændringer.]

Når en forbindelse deles, kan modtageren køre scripts, hente script-id'er og CloudConnector-id'er, hvilket potentielt kan udføre uautoriserede handlinger på vegne af forbindelsesejeren. Det skyldes, at deling af forbindelser til skrivebordsflow ikke var tilgængelig.

For at aktivere ALM (Application Lifecycle Management) med en pipeline, der ejes af en tjenesteprincipal, inkluderes rollen "kørselsejer" i forbindelsen til skrivebordsflowet. Denne nye rolle adskiller forbindelsesejeren fra kørselsejeren. Det er kun muligt at dele en forbindelse til et skrivebordsflow med en tjenesteprincipal (også kaldet pipeline-SPN), hvis kørselsejeren er en anden tjenesteprincipal (også kaldet kørselsejerens SPN).

Vigtige oplysninger

  • Dette er en forhåndsversion af funktionen.
  • Forhåndsversionsfunktionerne er ikke beregnet til produktionsformål og kan have begrænset funktionalitet. Disse funktioner er tilgængelige før en officiel udgivelse, så kunderne kan få tidlig adgang og give feedback.
  • Denne funktion udrulles gradvist til flere områder og er muligvis ikke tilgængelig i dit område.
  • En kørselsejer af et skrivebordsflow er den bruger, hvis tilladelser kontrolleres under kørslen af flowet.
  • Forbindelser, der oprettes ved hjælp af Power Automate-portalen, bruger forbindelsens opretter (den bruger, der opretter forbindelsen) som kørselsejer.

For at køre et flow skal en bruger have:

  • Rollen "Miljøopretter" som minimum (defineret i Power Automate Administration).
  • Adgang til Dataverse-tabeller, der bruges af flowet, herunder:
    • Maskinen eller maskingruppen (eller hostet maskingruppe, hvis relevant)
    • Scriptet til skrivebordsflow
    • Eventuelle legitimationsoplysninger for forbindelsen
    • Enhver afhængighed i scriptet til skrivebordsflow (f.eks. cloud connector, legitimationsoplysninger osv.)
    • Arbejdskøer (hvis de bruges af flowet)

Brugere kan nu eksplicit vælge en Microsoft Entra-identitet som kørselsejer.

Det er kun forbindelser med en eksplicit valgt kørselsejer, der kan deles med andre brugere. I dette tilfælde er modtagere af deling af forbindelse til skrivebordsflow begrænset til tjenesteprincipalbrugere.

Begrænsninger

Begrænsninger for kørselsejerens identitet

  • Den eksplicitte kørselsejer skal være af typen Tjenesteprincipal.
  • Tjenesteprincipalen skal være registreret i samme lejer som forbindelsesopretteren.
  • Forbindelser med en eksplicit kørselsejer understøtter kun certifikatbaseret godkendelse.

Produktbegrænsninger

  • Forbindelser med en eksplicit kørselsejer kan ikke bruges til at køre et skrivebordsflow med ikke-integrerede cloudflows.
  • "Opret en forbindelse med overvågede kørsler"-forbindelser understøttes ikke.

Bemærk

Nogle skrivebordsflowfunktioner understøttes ikke, før de bliver generelt tilgængelige:

Begrænsninger for forbindelse

  • En eksplicit kørselsejeridentitet kan opdateres på en forbindelse, men den kan ikke fjernes. Du skal oprette en ny forbindelse uden kørselsejeridentiteten, hvis du vil fjerne kørselsejeridentiteten på forbindelsen.

Forudsætning

Sørg for, at en tjenesteprincipalbruger allerede er konfigureret i Microsoft Entra med certifikatbaseret godkendelse.

Sådan indstiller du den tjenesteprincipalidentitet, der bruges som kørselsejer

Vigtige oplysninger

I denne artikel skal du erstatte alle kantede parenteser [...] i URL-adresser og input/output-data med værdier, der er specifikke for dit scenarie.

Registrere tjenesteprincipalens identitet som bruger af miljøprogram

  1. Tilføj tjenesteprincipalbrugeren som programbruger i dit miljø. Få mere at vide i Administrere programbruger.

  2. Føj rollen "Miljøopretter" til applikationsbrugeren. Få mere at vide i Administrere roller for en programbruger

Dele Dataverse-tabeller

Kørselsejeren skal have adgang til alle de Dataverse-tabeller, der bruges af flowet under udførelsen.

Table Link
Maskine Dele en maskine
Maskingruppe Dele en maskingruppe
Komponenter for hostet maskingruppe Dele komponenter for hostet maskingruppe
Script til skrivebordsflow Dele et skrivebordsflow
Legitimationsoplysninger Dele legitimationsoplysninger
Arbejdskø Dele en arbejdskø

Oprette forbindelse til en kørselsejer

Anmode om adgangstoken

Først skal du anmode om adgangstoken for at kommunikere med Power Platform-API'en. Få mere at vide i Anmode om et adgangstoken.

Sende en anmodning om at oprette en forbindelse til kørselsejer

Hvis du vil oprette en forbindelse, skal du sende en HTTP PUT-anmodning til Power Apps API'en om at oprette forbindelsen ved hjælp af det adgangstoken, du har fået tidligere.

PUT https://[ENVIRONMENT_ID_URL].environment.api.powerplatform.com/connectivity/connectors/shared_uiflow/connections/[CONNECTION_ID]?api-version=1
Content-Type: application/json
Host: [ENVIRONMENT_ID_URL].environment.api.powerplatform.com
Accept: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJu...
Pladsholder Beskrivelse Eksempel
ENVIRONMENT_ID_URL Miljø-id'et, hvor alle separatorer er fjernet, og de sidste to tegn er adskilt af et punktum. 00aa00aa-bb11-cc22-dd33-44ee44ee44ee -> 00aa00aabb11cc22dd3344ee44ee44ee
CONNECTION_ID Det forbindelses-id, der bruges til at oprette forbindelsen. Det skal være et gyldigt GUID. Du kan bruge PowerShell-kommandoen New-Guid til at oprette et GUID. aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb

Indholdet ændres afhængigt af den type maskinlegitimationsoplysninger, der bruges.

Hvis du bruger legitimationsoplysninger, skal de deles med tjenesteprincipalidentiteten, før du opretter forbindelsen. Få mere at vide i Dele legitimationsoplysninger

Pladsholdere, der er defineret for anmodningens indhold:

Pladsholder Beskrivelse Eksempel
ENVIRONMENT_ID Miljø-id'et 00aa00aa-bb11-cc22-dd33-44ee44ee44ee
DISPLAY_NAME Forbindelsens viste navn i Power Automate-portalen InvoiceAppConnection
CREDENTIAL_ID Legitimations-id'et. Få mere at vide i Hente legitimationsoplysnings-id bbbbbbbb-1111-2222-3333-cccccccccccc
MACHINE_ACCOUNT Brugernavnet på den konto, der bruges til at åbne en Windows-session. For en lokal konto skal du bruge <MACHINENAME\\User> eller <local\\User>. For en Microsoft Entra ID-konto skal du bruge <DOMAIN\\User> eller <username@domain.com>. Bemærk, at omvendte skråstreger skal skrives dobbelt som f.eks. CONTOSO\\accountName. CONTOSO\\accountName
MACHINE_PASSWORD Adgangskode til konto
ENVIRONMENT_VARIABLE_USERNAME Navnet på den miljøvariabel, der indeholder computerkontonavnet. Få mere at vide i Hente navnet på en miljøvariabel new_ContosoLogin
ENVIRONMENT_VARIABLE_PASSWORD Navnet på den miljøvariabel, der indeholder adgangskoden til kontoen. Få mere at vide i Hente navnet på en miljøvariabel new_ContosoPassword
GROUP_ID Det gruppe-id, du vil oprette forbindelsen til. Få mere at vide i Hente gruppe-id'et for maskinen eller gruppen dd4cac14-0b49-475d-b274-3ad41a4e82a7
APP_ID programmet-id'et (eller klient-id'et) for din tjenesteprincipalidentitet, der bruges som kørselsejer. 00001111-aaaa-2222-bbbb-3333cccc4444
PFX Den base64-kodede streng i PFX-certifikatfilen (Personal Information Exchange) fra tjenesteprincipalen. Få mere at vide i Hente base64-kodningen af dit certifikat MIIKdQIBA...ICB9A=
PASSWORD Adgangskoden til tjenesteprincipalcertifikatet. Kan være tom hvis null

Forbindelse uden legitimationsoplysninger

{
    "properties":
    {
        "environment":
        {
            "id": "/providers/Microsoft.PowerApps/environments/[ENVIRONMENT_ID]",
            "name":"[ENVIRONMENT_ID]"
        },
        "displayName": "[DISPLAY_NAME]",
        "connectionParametersSet":
        {
            "name":"azureRelayRunOwner",
            "values":
            {
                "username":{"value":"[MACHINE_ACCOUNT]"},
                "password":{"value":"[MACHINE_PASSWORD]"},
                "targetId":{"value":"[GROUP_ID]"},
                "tokenRunOwnerCert:clientId":{"value":"[APP_ID]"},
                "tokenRunOwnerCert:clientCertificateSecret":
                {
                    "value":
                    {
                        "pfx":"[PFX]",
                        "password":"[PASSWORD]"
                    }
                }
            }
        }
    }
}

Forbindelse med Azure Key Vault adgangskode-baseret godkendelseslegitimationsoplysninger

{
    "properties":
    {
        "environment":
        {
            "id": "/providers/Microsoft.PowerApps/environments/[ENVIRONMENT_ID]",
            "name":"[ENVIRONMENT_ID]"
        },
        "displayName": "[DISPLAY_NAME]",
        "credentialId": "[CREDENTIAL_ID]",
        "connectionParametersSet":
        {
            "name":"azureRelayRunOwner",
            "values":
            {
                "username":{"value":"@environmentVariables(\"[ENVIRONMENT_VARIABLE_USERNAME]\")"},
                "password":{"value":"@environmentVariables(\"[ENVIRONMENT_VARIABLE_PASSWORD]\")"},
                "targetId":{"value":"[GROUP_ID]"},
                "tokenRunOwnerCert:clientId":{"value":"[APP_ID]"},
                "tokenRunOwnerCert:clientCertificateSecret":
                {
                    "value":
                    {
                        "pfx":"[PFX]",
                        "password":"[PASSWORD]"
                    }
                }
            }
        }
    }
}

Forbindelse med Azure Key Vault-certifikatbaserede godkendelseslegitimationsoplysninger

{
    "properties":
    {
        "environment":
        {
            "id": "/providers/Microsoft.PowerApps/environments/[ENVIRONMENT_ID]",
            "name":"[ENVIRONMENT_ID]"
        },
        "displayName": "[DISPLAY_NAME]",
        "credentialId": "[CREDENTIAL_ID]",
        "connectionParametersSet":
        {
            "name":"azureRelayRunOwner",
            "values":
            {
                "username":{"value":"@environmentVariables(\"[ENVIRONMENT_VARIABLE_USERNAME]\")"},
                "password":{"value":"none"},
                "targetId":{"value":"[GROUP_ID]"},
                "tokenRunOwnerCert:clientId":{"value":"[APP_ID]"},
                "tokenRunOwnerCert:clientCertificateSecret":
                {
                    "value":
                    {
                        "pfx":"[PFX]",
                        "password":"[PASSWORD]"
                    }
                }
            }
        }
    }
}

Forbindelse med legitimationsoplysninger til Cyber Ark-godkendelse

{
    "properties":
    {
        "environment":
        {
            "id": "/providers/Microsoft.PowerApps/environments/[ENVIRONMENT_ID]",
            "name":"[ENVIRONMENT_ID]"
        },
        "displayName": "[DISPLAY_NAME]",
        "credentialId": "[CREDENTIAL_ID]",
        "connectionParametersSet":
        {
            "name":"azureRelayRunOwner",
            "values":
            {
                "username":{"value":"@environmentVariables(\"[ENVIRONMENT_VARIABLE_USERNAME]\")"},
                "password":{"value":"none"},
                "targetId":{"value":"[GROUP_ID]"},
                "tokenRunOwnerCert:clientId":{"value":"[APP_ID]"},
                "tokenRunOwnerCert:clientCertificateSecret":
                {
                    "value":
                    {
                        "pfx":"[PFX]",
                        "password":"[PASSWORD]"
                    }
                }
            }
        }
    }
}

Svar på oprettelse af forbindelse

Når anmodningen er fuldført, kan du se den nyoprettede forbindelse i Power Automate-portalen. Du kan også bruge forbindelsen til kørsler af skrivebordsflows, hvis alle nødvendige tilladelser er angivet. Få mere at vide i Dele Dataverse-tabeller.

Svarformat:

{
  "name": "[CONNECTION_ID]",
  "id": "/providers/Microsoft.PowerApps/apis/shared_uiflow/connections/[CONNECTION_ID]",
  "type": "Microsoft.PowerApps/apis/connections",
  "properties": {
    "statuses": [
      {
        "status": "[CONNECTION_STATUS]"
      }
    ],
  }
}  

Svaret indeholder:

  • CONNECTION_ID: Id for din nye forbindelse
  • CONNECTION_STATUS: Oprettelsesstatus

Vigtige oplysninger

Kontrollér, at den modtagne forbindelsesstatus er Connected. Du kan modtage et gyldigt svar (201 oprettet) med en ugyldig forbindelsesstatus. Hvis der opstod en fejl under oprettelse af forbindelsen, vises fejldetaljerne i svaret.

Fejlsvar:

{
  "error": {
    "code": "ApiHubsRequestFailed",
    "message": "Aggregated detailed message",
    "details": [
      {
        "code": "ErrorCode",
        "message": "Error message",
        "details": [
          {
            "code": "Response Code",
            "message": "Error message"
          }
        ]
      }
    ]
  }
}

Opdatere en forbindelse med en kørselsejer

Du kan opdatere en eksisterende forbindelse med nye parametre (vist navn, legitimationsoplysninger, kørselsejeridentitet) ved hjælp af den samme PUT-anmodning som for anmodningen Opret forbindelse. Behold det samme forbindelses-id som den eksisterende forbindelse i anmodningens URL-adresse.

Vigtige oplysninger

Det er ikke tilladt at fjerne en kørselsejer på en eksisterende identitet. Hvis du vil blokere brugen af en tjenesteprincipal, kan du deaktivere den i Dataverse-organisationen. Få mere at vide i Deaktivere en programbruger

Slette en forbindelse med en kørselsejer

Du kan slette forbindelsen ved hjælp af knappen Slet på siden Forbindelse på Power Automate-portalen.

Tillæg

Få gruppe-id'et for maskinen eller gruppen

Hvis du vil kunne oprette forbindelsen, skal du hente det gruppe-id, der er knyttet til maskinen eller maskingruppen.

  • Hvis det er en gruppe, skal du gå til Overvåg>Maskiner>Maskingrupper og vælge gruppen. Du kan hente gruppe-id fra denne URL-adresse.
  • Hvis det er en maskine, skal du gå til Data>Tabeller>Alle>Flowmaskingruppe. Søg efter din maskine på listen, og få vist kolonnen Flowmaskingruppe. Det er det gruppe-id, der er knyttet til computeren.

Hent base64-kodningen til dit tjenesteprincipalcertifikat

Du kan bruge PowerShell til at hente base64-kodningen til dit tjenesteprincipalcertifikat:

$filePath = "C:\path\to\your\certificate.pfx"
$bytes = [System.IO.File]::ReadAllBytes($filePath)
$base64String = [System.Convert]::ToBase64String($bytes)
$base64String

Hent legitimations-id'et

Sådan henter du legitimationsoplysnings-id'et

  1. Gå til Data>Tabeller>Alle>Legitimationsoplysninger.
  2. Søg efter dine legitimationsoplysninger på listen, og få vist kolonnen Legitimationsoplysninger. Det er det legitimations-id, der er knyttet til dine legitimationsoplysninger.

Hente et navn på en miljøvariabel

Sådan henter du et navn på en miljøvariabel:

  1. Vælg dine legitimationsoplysninger på siden Legitimationsoplysninger, og vælg knappen Vis afhængigheder
  2. Vælg Se i løsning.
  3. På løsningssiden skal du søge efter de miljøvariabler, der bruges af dine legitimationsoplysninger, og se på kolonnen Navn. Kolonneværdien er navnet på din miljøvariabel.