Kopīgot, izmantojot


Testēšanas programmas autentifikācijas rokasgrāmata Power Apps (priekšskatījums)

Piezīmes

Priekšskatījuma līdzekļi nav paredzēti komerciālai lietošanai, un to funkcionalitāte var būt ierobežota. Šie līdzekļi ir pieejami pirms oficiālā laidiena, lai klienti varētu priekšlaikus piekļūt līdzeklim un sniegt atsauksmes.

Šajā rokasgrāmatā ir sniegti detalizēti norādījumi par autentifikācijas iestatīšanu testēšanas programmā. Īsu pārskatu par autentifikācijas opcijām skatiet sadaļā Autentifikācija testēšanas programmā.

Darba sākšana ar autentifikāciju

Testēšanas programma atbalsta divas autentifikācijas metodes tīmekļa testiem audekla un modeļa vadītām lietojumprogrammām:

  • StorageState — noklusējuma, vienkārša iestatīšana individuālai izstrādei (tīmekļa audekla un modeļa vadītu programmu testiem)
  • Dataverse - Komandas pieeja testa lietotāju un CI/CD koplietošanai (tīmekļa audekla un modeļa vadītu lietotņu testiem)

Autentifikācija tiek apstrādāta atšķirīgi PowerFx pakalpojumu sniedzējiem un tiešajiem Dataverse testiem. Šie testi iegūst piekļuves marķierus tieši no pieteiktās Azure CLI sesijas, izmantojot az komandas, lai iegūtu resursu piekļuves marķierus. Pirms šāda veida testu veikšanas pārliecinieties, vai esat pieteicies az login --allow-no-subscriptions .

Ātrā iestatīšana: StorageState autentifikācija

StorageState autentifikācija ir vienkāršākais veids, kā sākt darbu. Tā izmanto Windows datu aizsardzības API, lai droši glabātu autentifikācijas marķierus lokālajā datorā.

1. darbība: palaidiet testu ar noklusējuma autentifikāciju

Palaidiet šo PowerShell komandu, aizstājot parametrus, kas sākas ar your.

pac test run `
   --provider canvas `
   --test-plan-file your-test-plan.yaml `
   --tenant your-tenant-id `
   --environment-id your-environment-id

Piezīmes

Pac testa izpildes--user-auth parametrs šajā piemērā netiek izmantots, jo noklusējuma pakalpojumu sniedzējs ir StorageState. Ja vēlaties, varat to iekļaut.

2. darbība: interaktīvās pierakstīšanās pabeigšana

Testa lietotāja konta akreditācijas datu ievadīšana

  1. Pārlūkprogrammas logs tiek atvērts automātiski
  2. Piesakieties ar savu testa lietotāja kontu
  3. Ja tiek prasīts, apstipriniet MFA un piekrišanas uzvednes
  4. Atlasiet "Palikt pieslēgts", kad tiek prasīts

Tagad jūsu autentifikācija ir saglabāta.

  • Test Engine droši glabā jūsu autentifikāciju
  • Turpmākajos testa izpildēs tiek izmantots saglabātais stāvoklis, neprasot pierakstīšanos
  • Tokeni tiek atsvaidzināti automātiski, ja nepieciešams.

Grupas iestatīšana: Dataverse autentifikācija

Dataverse Autentifikācija ir ideāli piemērota komandām un CI/CD cauruļvadiem. Tas droši glabā autentificētus lietotāju stāvokļus Dataverse, kas šifrēti ar X.509 sertifikātiem.

1. darbība: lejupielādējiet un importējiet testa programmas risinājumu

  1. Lejupielādējiet Power Platform risinājumu no https://aka.ms/TestEngineAuth.
  2. Pierakstieties programmatūrā Power Apps.
  3. Atlasiet mērķa vidi.
  4. Dodieties uz Risinājumi un atlasiet Importēt risinājumu.
  5. Izpildiet vedni, lai augšupielādētu un instalētu Test Engine risinājumu.

2. darbība: šifrēšanas sertifikāta izveide

Pašparakstītam sertifikātam (tikai izstrādei) palaidiet šo PowerShell skriptu:

$Params = @{
  DnsName = @("testengine", "testengine")
  CertStoreLocation = "Cert:\CurrentUser\My"
  NotAfter = (Get-Date).AddMonths(6)
  KeyAlgorithm = "RSA"
  KeyLength = 2048
}
New-SelfSignedCertificate @Params

Ražošanai izmantojiet uzņēmuma sertificēšanas iestādes sertifikātu.

3. darbība: testa lietotāja iestatīšana

Lai iestatītu testa lietotāju, veiciet tālāk norādītās darbības.

  1. Atveriet termināli un izrakstieties no visām esošajām sesijām:

    # Clear Power Platform CLI credentials
    pac auth clear
    
    # Clear Azure CLI credentials
    az logout
    
  2. Pieteikties, izmantojot Azure CLI (nepieciešams autentifikācijai Dataverse ):

    az login --allow-no-subscriptions
    
  3. Iestatiet sertifikāta nosaukumu kā PowerShell vides mainīgo ar nosaukumu DataProtectionCertificateName:

    $env:DataProtectionCertificateName = "CN=testengine"
    
  4. Veiciet testu ar Dataverse autentifikāciju:

    pac test run `
       --provider canvas `
       --user-auth Dataverse `
       --auth Certstore `
       --test-plan-file testplan.yaml `
       --tenant your-tenant-id `
       --environment-id your-environment-id
    

    Piezīmes

    Atšķirībā no StorageState, šajā gadījumā jums jāizmanto parametrs --user-auth ar vērtību ir Dataverse.

  5. Pabeidziet interaktīvo pierakstīšanos, kad tiek prasīts.

Pakalpojuma galvenālo iestatīšana (CI/CD)

Automatizētai testēšanai CI/CD konveijeros interaktīvo lietotāju kontu vietā varat izmantot pakalpojuma galvenos.

1. darbība: izveidojiet pieteikuma reģistrāciju ID Microsoft Entra

Veiciet tālāk norādītās darbības, lai izveidotu lietojumprogrammas reģistrāciju ID Microsoft Entra .

  1. Pieteikšanās Microsoft Entra administrēšanas centrā
  2. Naviģēšana uz lietojumprogrammu>reģistrācijām
  3. Atlasiet Jauna reģistrācija
  4. Ievadiet nosaukumu (piemēram, "Test Engine Automation")
  5. Saglabājiet noklusējuma opcijas un atlasiet Reģistrēties
  6. Pēc izveides atzīmējiet lietojumprogrammas (klienta) ID un direktorija (nomnieka) ID

2. darbība: API atļauju konfigurēšana Dataverse

Veiciet tālāk norādītās darbības, lai konfigurētu API atļaujas Dataverse.

  1. Lietojumprogrammas reģistrācijā atveriet sadaļu API atļaujas
  2. Atlasiet Pievienot atļauju
  3. Izvēlieties API, ko izmanto mana organizācija
  4. Meklējiet un atlasiet Dataverse
  5. Atlasiet deleģētās atļaujas
  6. Pārbaudiet user_impersonation
  7. Atlasiet Pievienot atļaujas
  8. Atlasiet Piešķirt administratora piekrišanu

3. darbība: klienta noslēpuma izveide

Veiciet tālāk norādītās darbības, lai izveidotu klienta noslēpumu.

  1. Dodieties uz sadaļu Sertifikāti un noslēpumi
  2. Atlasiet Jauns klienta noslēpums
  3. Pievienojiet aprakstu un izvēlieties derīguma termiņu
  4. Nekavējoties kopējiet slepeno vērtību (to vairs nevarat redzēt)

4. darbība: pievienojiet lietojumprogrammas lietotāju Dataverse

Veiciet tālāk norādītās darbības, lai pievienotu lietojumprogrammas lietotāju Dataverse.

  1. Administrēšanas centra Power Platform atvēršana
  2. Atlasiet savu vidi
  3. Dodieties uz Iestatījumi>Lietotāji + atļaujas>Lietojumprogrammas lietotāji
  4. Select + Jauns lietotnes lietotājs
  5. Meklējiet un atlasiet savu lietojumprogrammu
  6. Piešķiriet atbilstošas struktūrvienības un drošības lomas (iekļaujiet lomu "Testēšanas programmas lietotājs")
  7. Izmaiņu saglabāšana

5. darbība: CI/CD konveijera konfigurēšana

Pievienojiet konveijim šos mainīgos.

AZURE_CLIENT_ID: (your application ID)
AZURE_CLIENT_SECRET: (your client secret)
AZURE_TENANT_ID: (your tenant ID)
DataProtectionCertificateValue: (base64 encoded certificate)
ENVIRONMENT_URL: (your Dataverse environment URL)

Droši Azure DevOps glabājiet tos mainīgo grupās ar atbilstošām atļaujām.

PowerFx un tiešā Dataverse testa autentifikācija

PowerFx pakalpojumu sniedzēju testiem un tiešajiem Dataverse testiem autentifikācija darbojas citādi nekā tīmekļa testos.

Kā darbojas PowerFx/Dataverse autentifikācija

  1. Testēšanas programma izmanto Azure CLI, lai iegūtu resursiem specifisku piekļuves marķieru
  2. Marķieris tiek izmantots, lai autentificētos tieši, izmantojot Dataverse API
  3. Nav iesaistīta pārlūkprogramma vai tīmekļa autentifikācija

PowerFx/Dataverse autentifikācijas iestatīšana

  1. Pārliecinieties, vai Azure CLI ir instalēta un atjaunināta:

    winget install -e --id Microsoft.AzureCLI
    # Or update it if already installed
    az upgrade
    
  2. Piesakieties ar Azure CLI:

    # The --allow-no-subscriptions flag is important as you may not have Azure subscriptions
    az login --allow-no-subscriptions
    
  3. Palaidiet testu ar PowerFx pakalpojumu sniedzēju:

    pac test run `
       --provider powerfx `
       --test-plan-file testplan.yaml `
       --tenant your-tenant-id `
       --environment-id your-environment-id `
       --domain "https://your-environment.crm.dynamics.com"
    

Autentifikācijas problēmu novēršana

Šajā sadaļā ir sniegta informācija par autentifikācijas problēmu novēršanu ar testēšanas programmu.

Bieži sastopamās problēmas ar StorageState

  • Problēma: autentifikācijas uzvedne tiek parādīta katrā palaišanā.

    • Risinājums: pārbaudiet, vai pieteikšanās laikā esat atlasījis Palikt pieteicies .
  • Problēma: Cannot access secure storage kļūda.

    • Risinājums: pārliecinieties, vai jums ir atbilstoša piekļuve lietotāja profila mapei.

Bieži sastopamās problēmas ar Dataverse autentifikāciju

  • Problēma: Certificate not found kļūda.

    • Risinājums: pārbaudiet, vai sertifikāta nosaukums precīzi atbilst sertifikātu krātuvē esošajam nosaukumam.
  • Problēma: Unable to connect to Dataverse kļūda.

    • Risinājums: pārbaudiet, vai Azure CLI ir pieteicies az login --allow-no-subscriptions.
  • Problēma: Access denied kļūda ar pakalpojuma galveno.

    • Risinājums: pārbaudiet, vai programmai ir pareizas atļaujas Dataverse un atbilstošas drošības lomas.

Bieži sastopamās problēmas ar PowerFx/Dataverse autentifikāciju

  • problēma: Unable to obtain access token kļūda

    • Risinājums: pārbaudiet, vai esat pieteicies Azure CLI, izmantojot az account get-access-token
  • problēma: Access denied uz Dataverse

    • Risinājums: pārliecinieties, ka pieteikušajam lietotājam ir atbilstošas atļaujas vidē Dataverse
  • Problēma: marķiera derīguma termiņš ilgstoši testa izpildes laikā

    • Risinājums: izmantojiet pakalpojuma galveno ar ilgāku marķieru derīguma termiņu vai apstrādājiet atkārtotu autentifikāciju testa darbībās

Autentifikācijas drošības arhitektūra
Testa audekla lietojumprogrammas
Testējiet modeļu vadītas lietojumprogrammas
Testa Dataverse paplašinājumi