opomba,
Dostop do te strani zahteva pooblastilo. Poskusite se vpisati alispremeniti imenike.
Dostop do te strani zahteva pooblastilo. Poskusite lahko spremeniti imenike.
Power Apps preverjevalni spletni API omogoča mehanizem za izvajanje statičnih analiz glede na prilagoditve in razširitve platforme Microsoft Dataverse. Ustvarjalcem in razvijalcem omogoča izvajanje preverjanj rešitev s podrobno statično analizo, ki temelji na pravilih najboljših praks, da lahko hitro prepoznajo težavne vzorce. Storitev zagotavlja logiko za funkcijo solution checker pri proizvajalcu Power Apps portal in je vključena kot del avtomatizacije za aplikacije, poslane na Marketplace. Neposredna interakcija s storitvijo na ta način omogoča analizo rešitev, ki so vključene kot del lokalnih (vse podprte različice) in spletnih okolij.
Za informacije o uporabi storitve preverjevalnika iz kode PowerShell glejte Delo z rešitvami s PowerShellom.
opomba,
- Uporaba Power Apps preverjevalnika ne zagotavlja, da bo uvoz rešitve uspešen. Pregledi s statično analizo, opravljeni pri rešitvi, ne poznajo konfiguriranega stanja ciljnega okolja, uspeh pri uvozu pa je lahko odvisen od drugih rešitev ali konfiguracij v okolju.
Alternativni pristopi
Preden preberete podrobnosti o interakciji s spletnimi API-ji na najnižji ravni, razmislite o uporabi našega modula PowerShell, Microsoft.Checker.PowerShell.PowerApps Gre za popolnoma podprto orodje, ki je na voljo v PowerShell Gallery. Trenutna omejitev je, da zahteva Windows PowerShell. Če te zahteve ni mogoče izpolniti, je najboljši pristop neposredna interakcija z API-ji.
Uvod
Pomembno je omeniti, da je lahko analiza rešitve dolgotrajen postopek. Običajno lahko traja od šestdeset (60) sekund do več kot pet (5) minut, odvisno od različnih dejavnikov, kot so število, velikost in kompleksnost prilagoditev in kode. Potek analize je sestavljen iz več korakov in asinhronega začetka z zagonom posla analize z API-jem stanja, ki se uporablja za poizvedbo o dokončanju posla. Vzorčni potek analize je naslednji:
- Pridobite OAuth žeton
- Nalaganje klica (za vsako datoteko vzporedno)
- Analiza klicev (inicializira posel analize)
- Stanje klica do konca (ponavljanje s premori med klici, dokler se ne oznani konec ali so doseženi pragi)
- Prenesite rezultate z navedenega URI-ja za SAS
Nekaj različic je:
- Kot predhodni korak vključite iskanje nabora pravil ali posameznih pravil. Vendar bi bilo nekoliko hitrejše posredovati v konfiguriranem ali vprogramiranem ID-ju nabora pravil. Priporočljivo je, da uporabite nabor pravil, ki ustreza vašim potrebam.
- Lahko se odločite, da ne boste uporabili mehanizma za nalaganje (glejte nalaganje za omejitve).
Določiti morate naslednje zahteve:
Za dokumentacijo o posameznih API-jih glejte naslednje članke:
Pridobi seznam naborov pravil
Pridobi seznam pravil
Naloži datoteko
Analiza priklica
Preveri stanje analize
Določanje geografske lokacije
Ko komunicirate s storitvijo Power Apps preverjanja, so datoteke začasno shranjene v Azure skupaj z generiranimi poročili. Z uporabo API-ja za določeno geografsko lokacijo lahko nadzorujete, kje so podatki shranjeni. Zahteve za geografsko končno točko se preusmerijo v regionalni primerek na podlagi najboljše zmogljivosti (zakasnitev osebe, ki je podala zahtevo). Ko zahteva vstopi v regionalni primerek storitve, ostanejo vsi obdelani in ohranjeni podatki znotraj te regije. Nekateri odgovori API-ja vrnejo regionalne URL-je primerkov za nadaljnje zahteve, ko je analitično opravilo usmerjeno v določeno regijo. Vsako geografsko območje ima lahko v danem trenutku nameščeno drugačno različico storitve. Uporaba različnih različic storitev je posledica večstopenjskega postopka varnega uvajanja, ki zagotavlja popolno združljivost različic. Tako je treba za vsak klic API v življenjskem ciklu analize uporabiti isto geografijo in se lahko skrajša skupni čas izvedbe, saj podatki morda ne bodo morali potovati tako daleč po žicah. Geografske lokacije, ki so na voljo:
| Azure datacenter | Imenu | Geografsko območje | Osnovni URI |
|---|---|---|---|
| Javno | Predogled | Združene države | unitedstatesfirstrelease.api.advisor.powerapps.com |
| Javno | Proizvodnja | Združene države | unitedstates.api.advisor.powerapps.com |
| Javno | Proizvodnja | Evropa | europe.api.advisor.powerapps.com |
| Javno | Proizvodnja | Azija | asia.api.advisor.powerapps.com |
| Javno | Proizvodnja | Avstralija | australia.api.advisor.powerapps.com |
| Javno | Proizvodnja | Japonska | japan.api.advisor.powerapps.com |
| Javno | Proizvodnja | Indija | india.api.advisor.powerapps.com |
| Javno | Proizvodnja | Kanada | canada.api.advisor.powerapps.com |
| Javno | Proizvodnja | Južna Amerika | southamerica.api.advisor.powerapps.com |
| Javno | Proizvodnja | Združeno kraljestvo | unitedkingdom.api.advisor.powerapps.com |
| Javno | Proizvodnja | Francija | france.api.advisor.powerapps.com |
| Javno | Proizvodnja | Nemčija | germany.api.advisor.powerapps.com |
| Javno | Proizvodnja | Združeni arabski emirati | unitedarabemirates.api.advisor.powerapps.com |
| Javno | Proizvodnja | Švica | switzerland.api.advisor.powerapps.com |
| Javno | Proizvodnja | Južna Afrika | southafrica.api.advisor.powerapps.com |
| Javno | Proizvodnja | Južna Koreja | korea.api.advisor.powerapps.com |
| Javno | Proizvodnja | Norveška | norway.api.advisor.powerapps.com |
| Javno | Proizvodnja | Singapur | singapore.api.advisor.powerapps.com |
| Javno | Proizvodnja | Švedska | sweden.api.advisor.powerapps.com |
| Javno | Proizvodnja | Poljska | poland.api.advisor.powerapps.com |
| Javno | Proizvodnja | Italija | italy.api.advisor.powerapps.com |
| Javno | Proizvodnja | Javna uprava ZDA | gov.api.advisor.powerapps.us |
| Javno | Proizvodnja | Javna uprava ZDA L4 | high.api.advisor.powerapps.us |
| Javno | Proizvodnja | Javna uprava ZDA L5 (DOD) | mil.api.advisor.appsplatform.us |
| Javno | Proizvodnja | Kitajsko upravlja ponudnik 21Vianet | china.api.advisor.powerapps.cn |
opomba,
Za zgodnejšo vključitev najnovejših funkcij in sprememb lahko uporabite predogled geografske lokacije. Vendar pa upoštevajte, da predogled uporablja le United States Azure regije.
Shranjevanje različic
Čeprav ni obvezno, je priporočljivo, da vključite parameter niza poizvedbe api-version z želeno različico API-ja. Trenutna različica API-ja je 2.0 za nabore pravil in pravila ter 1.0 za vse ostale zahteve. Na primer, naslednji nabor pravil je zahteva HTTP, ki določa uporabo različice API-ja 2.0:
https://unitedstatesfirstrelease.api.advisor.powerapps.com/api/ruleset?api-version=2.0
Če ni naveden, se privzeto uporabi najnovejša različica API-ja. Priporočljiva je uporaba eksplicitne številke različice, saj se številka različice poveča, če se uvedejo kritične spremembe. Če je številka različice določena v zahtevi, bo ohranjena podpora za vzvratno združljivost v poznejših (številčno večjih) različicah.
Nabori pravil in pravila
Power Apps preverjevalnik zahteva seznam pravil, ko se zažene. Ta pravila so lahko navedena v obliki posameznih pravil ali skupine pravil, imenovane nabor pravil. Nabor pravil je priročen način za določitev skupine pravil, namesto da bi bilo treba določati vsako pravilo posebej. Na primer, funkcija pregledovalnika rešitev uporablja nabor pravil z imenom Pregledovalnik rešitev. Ko se dodajo ali odstranijo nova pravila, storitev te spremembe samodejno vključi, ne da bi morala aplikacija, ki jih uporablja, to storiti. Če zahtevate, da se seznam pravil ne spreminja samodejno, kot je opisano zgoraj, potem lahko pravila določite posebej.
Nabori pravil lahko imajo eno ali več pravil brez omejitev. Pravilo je lahko v več naborih pravil ali v nobenem. Seznam vseh naborov pravil lahko dobite tako, da pokličete API na naslednji način: [Geographical URL]/api/ruleset. Ta končna točka zdaj zahteva preverjanje pristnosti.
Nabor pravil pregledovalnika rešitev
Nabor pravil pregledovalnika rešitev vsebuje nabor vplivnih pravil, ki imajo omejene možnosti za napačne pozitivne prepoznave. Če izvajate analizo z obstoječo rešitvijo, je priporočljivo, da začnete s tem naborom pravil. Ta nabor pravil uporablja funkcija preverjevalnika rešitev. ...
Pravilnik za certifikacijo tržnice
Pri objavi prijav na Marketplace morate svojo prijavo certificirati. Prijave, objavljene na Marketplace , morajo izpolnjevati visoke standarde kakovosti. Pravilnik za certifikacijo Marketplace vsebuje pravila, ki so del nabora pravil za preverjanje rešitev, poleg drugih pravil, ki zagotavljajo, da so v trgovini objavljene le visokokakovostne aplikacije. Nekatera pravila o certifikaciji na trgu so bolj dovzetna za lažne pozitivne rezultate in lahko zahtevajo več pozornosti za rešitev.
Iskanje ID-ja najemnika
ID najemnika je potreben za interakcijo z API-ji, ki potrebujejo žeton. Glejte ta članek za podrobnosti o tem, kako pridobiti ID najemnika. Za pridobitev ID-ja najemnika lahko uporabite tudi ukaze PowerShell. Naslednji primer uporablja ukaze »cmdlet« v modulu AzureAD.
# Login to Microsoft Entra ID as your user
Connect-AzureAD
# Establish your tenant ID
$tenantId = (Get-AzureADTenantDetail).ObjectId
ID najemnika je vrednost lastnosti ObjectId, ki se vrne iz Get-AzureADTenantDetail. Morda ga boste videli tudi po prijavi z ukazom cmdlet Connect-AzureAD v rezultatih cmdlet. V tem primeru se bo imenoval TenantId.
Preverjanje pristnosti in avtorizacija
Poizvedovanje po pravilih in naborih pravil ne zahteva žetona, vsi drugi API-ji pa ga zahtevajo. OAuth API-ji podpirajo odkrivanje avtorizacije tako, da pokličejo kateri koli API, za katerega je potreben žeton. Odgovor je nepooblaščena koda stanja HTTP 401 z glavo WWW-Authenticate, URI-jem za avtorizacijo in ID-jem vira. Svoj ID najemnika morate navesti tudi v glavi x-ms-tenant-id. Za več informacij glejte Power Apps Preverjanje avtentikacije in avtorizacije. Sledi primer glave odgovora, ki jo vrne zahteva API:
WWW-Authenticate →Bearer authorization_uri="https://login.microsoftonline.com/0082fff7-33c5-44c9-920c-c2009943fd1e", resource_id="https://api.advisor.powerapps.com/"
Ko imate te podatke, se lahko odločite za uporabo Microsoft Authentication Library (MSAL) ali kakšnega drugega mehanizma za pridobitev žetona. Spodaj je primer, kako to lahko storimo s C# in knjižnico MSAL .NET:
// Substitute your own environment URL here.
string resource = "https://<env-name>.api.<region>.dynamics.com";
// Example Microsoft Entra app registration.
// For your custom apps, you will need to register them with Microsoft Entra ID yourself.
// See https://docs.microsoft.com/powerapps/developer/data-platform/walkthrough-register-app-azure-active-directory
var clientId = "51f81489-12ee-4a9e-aaae-a2591f45987d";
var redirectUri = "http://localhost"; // Loopback required for the interactive login.
var authBuilder = PublicClientApplicationBuilder.Create(clientId)
.WithAuthority(AadAuthorityAudience.AzureAdMultipleOrgs)
.WithRedirectUri(redirectUri)
.Build();
var scope = resource + "/.default";
string[] scopes = { scope };
AuthenticationResult tokenResult =
await authBuilder.AcquireTokenInteractive(scopes).ExecuteAsync();
Za celotno delujočo kodo glejte primer hitrega začetka spletnega API-ja .
Ko pridobite žeton, je priporočljivo, da isti žeton zagotovite tudi naslednjim klicem v življenjskem ciklu zahteve. Vendar pa lahko več zahtev zaradi varnostnih razlogov zahteva pridobitev novega žetona.
Varnost prenosa
Za najboljše šifriranje v svojem razredu storitev preverjanja podpira samo komunikacije z uporabo protokola Transport Layer Security (TLS) 1.2 ali novejšega. Za smernice o .NET najboljših praksah glede TLS glejte najboljše prakse Transport Layer Security (TLS) z .NET Framework.
Oblika zapisa poročila
Rezultat analize rešitve je datoteka zip, ki vsebuje eno ali več poročil v standardizirani obliki zapisa JSON. Oblika zapisa poročila temelji na rezultatih statične analize in se imenuje oblika zapisa izmenjave rezultatov statične analize (SARIF). Na voljo so orodja za ogled in interakcijo z dokumenti SARIF. Glej to spletno mesto za podrobnosti. Storitev uporablja drugo različico standarda OASIS. ...
Glejte tudi
Pridobi seznam naborov pravil
Pridobi seznam pravil
Naloži datoteko
Analiza priklica
Preveri stanje analize