Nota
L'accés a aquesta pàgina requereix autorització. Pots provar d'iniciar sessió o canviar de directori.
L'accés a aquesta pàgina requereix autorització. Pots provar de canviar directoris.
Nota
Les característiques de visualització prèvia no estan dissenyades per a un entorn de producció i poden tenir una funcionalitat restringida. Aquestes característiques estan disponibles abans d’un llançament oficial de producte per tal que els clients el puguin utilitzar abans i enviar-nos els seus comentaris.
Aquesta guia proporciona instruccions pas a pas per configurar l'autenticació al Test Engine. Per obtenir una visió general ràpida de les opcions d'autenticació, vegeu Autenticació al motor de proves.
Introducció a l'autenticació
El motor de proves admet dos mètodes d'autenticació per a proves basades en web per a aplicacions basades en llenç i basades en models:
- StorageState : configuració fàcil per defecte per al desenvolupament individual (per a proves de llenç basades en web i aplicacions basades en models)
- Dataverse - Enfocament basat en equips per compartir usuaris de prova i CI/CD (per a proves de llenç basades en web i aplicacions basades en models)
L'autenticació es gestiona de manera diferent per al proveïdor de PowerFx i les proves directes Dataverse . Aquestes proves obtenen testimonis d'accés directament de la sessió az de la CLI de l'Azure que ha iniciat la sessió mitjançant ordres per obtenir testimonis d'accés al recurs. Assegureu-vos que heu iniciat la sessió abans az login --allow-no-subscriptions d'executar aquest tipus de proves.
Configuració ràpida: autenticació StorageState
L'autenticació StorageState és la manera més senzilla de començar. Utilitza l'API de protecció de dades de Windows per emmagatzemar de manera segura els testimonis d'autenticació a la màquina local.
Pas 1: executeu la prova amb l'autenticació predeterminada
Executeu la següent ordre del PowerShell substituint els paràmetres que comencen per your.
pac test run `
--provider canvas `
--test-plan-file your-test-plan.yaml `
--tenant your-tenant-id `
--environment-id your-environment-id
Nota
El paràmetre d'execució--user-auth de la prova pac no s'utilitza en aquest exemple perquè el proveïdor predeterminat sí que ho és StorageState. Pots incloure'l si ho desitges.
Pas 2: completa l'inici de sessió interactiu
Introduïu les credencials del compte d'usuari de prova
- S'obre automàticament una finestra del navegador
- Inicia sessió amb el teu compte d'usuari de prova
- Si se us demana, aproveu l'MFA i les sol·licituds de consentiment
- Seleccioneu "Mantenir la sessió sessida" quan se us demani
La vostra autenticació ja està desada.
- Test Engine emmagatzema de manera segura la vostra autenticació
- Les futures execucions de proves utilitzen l'estat desat sense necessitat d'iniciar la sessió
- Els tokens s'actualitzen automàticament quan és necessari
Configuració de l'equip: Dataverse autenticació
Dataverse L'autenticació és perfecta per a equips i pipelines de CI/CD. Emmagatzema de manera segura els estats Dataverse d'usuari autenticats, xifrats amb certificats X.509.
Pas 1: Baixeu i importeu la solució Test Engine
- Baixeu la Power Platform solució des de https://aka.ms/TestEngineAuth.
- Inicieu la sessió a Power Apps.
- Seleccioneu l'entorn de destinació.
- Aneu a Solucions i seleccioneu Importa la solució.
- Seguiu l'auxiliar per carregar i instal·lar la solució del motor de prova.
Pas 2: Crear un certificat per a l'encriptació
Per a un certificat autosignat (només desenvolupament), executeu aquest script del PowerShell següent:
$Params = @{
DnsName = @("testengine", "testengine")
CertStoreLocation = "Cert:\CurrentUser\My"
NotAfter = (Get-Date).AddMonths(6)
KeyAlgorithm = "RSA"
KeyLength = 2048
}
New-SelfSignedCertificate @Params
Per a la producció, utilitzeu un certificat de l'autoritat de certificació de l'empresa.
Pas 3: configureu l'usuari de prova
Seguiu els passos següents per configurar l'usuari de prova:
Obre el terminal i tanca la sessió de les sessions existents:
# Clear Power Platform CLI credentials pac auth clear # Clear Azure CLI credentials az logoutInicieu sessió amb la CLI de l'Azure (necessària per a l'autenticació Dataverse ):
az login --allow-no-subscriptionsDefiniu el nom del certificat com a variable d'entorn del PowerShell anomenada
DataProtectionCertificateName:$env:DataProtectionCertificateName = "CN=testengine"Executeu la prova amb Dataverse autenticació:
pac test run ` --provider canvas ` --user-auth Dataverse ` --auth Certstore ` --test-plan-file testplan.yaml ` --tenant your-tenant-id ` --environment-id your-environment-idNota
A diferència de StorageState, en aquest cas heu d'utilitzar el
--user-authparàmetre amb un valor deDataverse.Completeu l'inici de sessió interactiu quan se us demani.
Configuració de les entitats de servei (per a CI/CD)
Per a les proves automatitzades en pipelines de CI/CD, podeu utilitzar entitats de servei en lloc de comptes d'usuari interactius.
Pas 1: Crear un registre d'aplicació a Microsoft Entra ID
Completeu els passos següents per crear un registre d'aplicació a Microsoft Entra l'ID.
- Inicieu sessió al Centre d'administració Microsoft Entra
- Aneu a Aplicacions>Registres d'aplicacions
- Seleccioneu Nou registre
- Introduïu un nom (per exemple, "Automatització del motor de prova")
- Mantingueu les opcions predeterminades i seleccioneu Registre
- Després de la creació, anoteu l'identificador de l'aplicació (client) i l'identificador del directori (inquilí)
Pas 2: Configurar els permisos de l'API per a Dataverse
Completeu els passos següents per configurar els permisos de l'API Dataverse.
- Al registre de l'aplicació, aneu a Permisos de l'API
- Seleccioneu Afegeix un permís
- Trieu les API que utilitza la meva organització
- Cerqueu i seleccioneu Dataverse
- Seleccioneu Permisos delegats
- Comproveu user_impersonation
- Seleccioneu Afegeix permisos
- Seleccioneu Concedeix el consentiment de l'administrador
Pas 3: Crear un secret de client
Completeu els passos següents per crear un secret de client.
- Accedeix a Certificats i secrets
- Seleccioneu Nou secret de client
- Afegeix una descripció i tria una caducitat
- Copieu el valor secret immediatament (no el podreu tornar a veure)
Pas 4: afegiu l'usuari de l'aplicació a Dataverse
Completeu els passos següents per afegir l'usuari de Dataverse l'aplicació.
- Obre el Centre d'administració Power Platform
- Seleccioneu el vostre entorn
- Aneu a Configuració>Usuaris + permisos>Usuaris de l'aplicació
- Select + Usuari nou de l'aplicació
- Cerqueu i seleccioneu la vostra aplicació
- Assigneu funcions de seguretat i unitat de negoci adequades (incloeu la funció "Usuari del motor de proves")
- Deseu els canvis
Pas 5: Configureu el pipeline de CI/CD
Afegiu aquestes variables al pipeline:
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)
Per a això Azure DevOps, emmagatzemeu-los de manera segura en grups de variables amb els permisos adequats.
PowerFx i autenticació de prova directa Dataverse
Per a les proves de proveïdors de PowerFx i les proves directes Dataverse , l'autenticació funciona de manera diferent que per a les proves basades en web.
Com funciona PowerFx/Dataverse autenticació
- El motor de proves utilitza la CLI de l'Azure per obtenir un testimoni d'accés específic del recurs
- El testimoni s'utilitza per autenticar-se directament amb Dataverse les API
- No hi ha cap navegador o autenticació basada en web
Configuració del PowerFx/Dataverse autenticació
Assegureu-vos que la CLI de l'Azure estigui instal·lada i actualitzada:
winget install -e --id Microsoft.AzureCLI # Or update it if already installed az upgradeIniciar sessió amb Azure CLI:
# The --allow-no-subscriptions flag is important as you may not have Azure subscriptions az login --allow-no-subscriptionsExecuteu la prova amb el proveïdor PowerFx:
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"
Solució de problemes d'autenticació
Aquesta secció conté informació sobre la resolució de problemes d'autenticació amb el Test Engine.
Problemes habituals amb StorageState
Problema: apareix una sol·licitud d'autenticació a cada execució.
- Solució: comproveu si heu seleccionat Mantingueu-vos connectat durant l'inici de sessió.
Problema:
Cannot access secure storageerror.- Solució: Assegureu-vos que teniu l'accés adequat a la carpeta de perfils d'usuari.
Problemes habituals amb Dataverse l'autenticació
Problema:
Certificate not founderror.- Solució: verifiqueu que el nom del certificat coincideixi exactament amb el que hi ha al magatzem de certificats.
Problema:
Unable to connect to Dataverseerror.-
Solució: Comproveu que la CLI de l'Azure estigui connectada
az login --allow-no-subscriptions.
-
Solució: Comproveu que la CLI de l'Azure estigui connectada
Problema:
Access deniederror amb l'entitat de servei.- Solució: verifiqueu que l'aplicació tingui els permisos Dataverse correctes i les funcions de seguretat adequades.
Problemes habituals amb PowerFx/Dataverse autenticació
Problema:
Unable to obtain access tokenerror-
Solució: verifiqueu que heu iniciat la sessió amb la CLI de l'Azure mitjançant
az account get-access-token
-
Solució: verifiqueu que heu iniciat la sessió amb la CLI de l'Azure mitjançant
Problema:
Access denieda Dataverse- Solució: assegureu-vos que l'usuari que ha iniciat la sessió tingui els permisos adequats a l'entorn Dataverse
Problema: caducitat del testimoni durant les proves llargues
- Solució: utilitzeu una entitat de servei amb una caducitat de testimoni més llarga o gestioneu la reautenticació als passos de prova
Articles relacionats
Arquitectura de seguretat d'autenticació
Aplicacions de llenç de prova
Aplicacions basades en models de prova
Extensions de prova Dataverse