Del via


Opprette en egendefinert kobling for en web-API

Denne opplæringen viser deg hvordan du begynner å bygge en ASP.NET nett-API, drifter den på Azure Web Apps-funksjonen i Azure App Service, aktiverer Microsoft Entra ID-godkjenning og deretter registrerer nett-API-en ASP.NET i Power Automate. Når API-en er registrert, kan du koble til den og kalle den fra flyten. Du kan også ha muligheten til å:

Forutsetning

Opprett og distribuer en ASP.NET nettapp til Azure

For denne opplæringen oppretter du en Visual C# ASP.NET -nettapp.

  1. Åpne Visual Studio, og velg deretter Arkiver>nytt prosjekt.

    1. Utvid Installert, gå til Maler>Visual C#>Web, og velg ASP.NET deretter Webprogram.

    2. Skriv inn et prosjektnavn, en plassering og et løsningsnavn for appen, og velg deretter OK.

    Skjermbilde som viser et nytt Visual C# ASP.NET -webprogram.

  2. Velg web-API-malen i boksen Nytt ASP.NET webprogram , kontroller at det er merket av for Vert i skyen , og velg deretter Endre godkjenning .

    Skjermbilde som viser dialogboksen Nytt ASP.NET webprogram.

  3. Velg Ingen godkjenning, og velg deretter OK. Du kan konfigurere autentisering senere.

    Velg Ingen autentisering.

  4. Når boksen Nytt ASP.NET webprogram vises på nytt, velger du OK.

  5. Se gjennom vertsinnstillingene som er beskrevet i tabellen nedenfor, i Opprett App Service-boksen , gjør endringene du ønsker, og velg deretter Opprett.

    Et App Service-abonnement representerer en samling fysiske ressurser som brukes til å drifte apper i Azure-abonnementet. Finn ut mer om App Service.

    Opprett App Service.

    Innstilling Foreslått verdi Description
    Jobb- eller skolekontoen din i Azure, eller din personlige Microsoft-konto din-bruker-konto Velg brukerkontoen din.
    Navn på nettapp custom-web-api-app-name eller standardnavnet Skriv inn navnet på nett-API-appen, som brukes i nettadressen til appen, for eksempel web-api-app-name http://.
    Abonnement Azure-abonnement-navn Velg Azure-abonnementet du vil bruke.
    Ressursgruppe Azure-resource-group-name Velg en eksisterende Azure-ressursgruppe, eller – hvis du ikke allerede har gjort det – opprett en ressursgruppe.

    En Azure-ressursgruppe organiserer Azure-ressurser i Azure-abonnementet ditt.

    App Service-abonnement App-Service-plan-navn Velg en eksisterende App Service-plan, eller – hvis du ikke allerede har gjort det – opprett en plan.

    Hvis du oppretter en App Service-plan, angir du følgende.

    Innstilling Foreslått verdi Description
    Sted distribusjon-område Velg området for distribusjon av appen.
    Størrelse App-Service-plan-størrelse Velg planstørrelsen, som bestemmer kostnadene og databehandlingsressurskapasiteten for serviceplanen.

    Hvis du vil konfigurere andre ressurser som kreves av appen, velger du Utforsk flere Azure-tjenester.

    Innstilling Foreslått verdi Description
    Ressurstype Azure-ressurs-type Velg og konfigurer eventuelle tilleggsressurser som kreves av appen.
  6. Når du har Visual Studio distribuert prosjektet, bygger du koden for appen.

Opprett en OpenAPI (swagger) fil som beskriver web-API-en din

Hvis du vil koble web-API-appen til Power Automate, Power Apps eller Logic Apps, trenger du en OpenAPI (tidligere Swagger) fil som beskriver API-operasjonene. Du kan skrive din egen OpenAPI definisjon for API-en din med Swagger online editor ,men denne opplæringen bruker et åpen kildekode-verktøy kalt Swashbuckle.

  1. Hvis du ikke allerede har gjort det, installer Swashbuckle Nuget-pakken i prosjektet ditt Visual Studio :

    1. I Visual Studio velger du Tools>NuGet Package Manager>Package Manager Package Manager Console.

    2. til appens prosjektkatalog i Package Manager-konsollen hvis du ikke allerede er der (kjør Set-Location "project-path"), og kjør denne PowerShell-cmdleten:

      Install-Package Swashbuckle

      Skjermbilde som viser Swashbuckle installert ved hjelp av Package Manager Console.

    Tips

    Hvis du kjører appen etter at du har installert Swashbuckle, genererer Swashbuckle en fil på denne URL-adressen OpenAPI :

      http://{your-web-api-app-root-URL}/swagger/dokumenter/v1

    Swashbuckle genererer også et brukergrensesnitt på denne URL-adressen:

      http://{your-web-api-app-root-URL}/Sprade

  2. Når du er klar, kan du publisere nett-API-appen til Azure. Hvis du vil publisere fra Visual Studio, høyreklikker du webprosjektet i Løsningsutforsker, velger Publiser og følger instruksjonene.

    Viktig!

    Hvis et OpenAPI dokument inneholder dupliserte operasjons-ID-er, vil det være ugyldig. Eksempelmalen C# gjentar operasjons-ID-en Values_Get.

    Hvis du brukte C#-eksempelmalen, kan du løse dette problemet ved å endre én operasjons-ID-forekomst til Value_Get og publisere på nytt.

  3. Hent OpenAPI dokumentet ved å bla til denne plasseringen:

    http://{your-web-api-app-root-URL}/swagger/dokumenter/v1

    Du kan også laste ned et eksempeldokument OpenAPI fra denne opplæringen . Pass på at du fjerner kommentarene, som begynner med //, før du bruker dokumentet.

  4. Lagre innholdet som en JSON-fil. Avhengig av nettleseren din må du kanskje kopiere og lime inn teksten i en tom tekstfil.

Sett opp Microsoft Entra ID-godkjenning

Du oppretter nå to Microsoft Entra ID-programmer i Azure. Hvis du vil vite mer, kan du gå til Integrere programmer med Microsoft Entra ID.

Viktig!

Begge appene må være i samme katalog.

Første Microsoft Entra ID-applikasjon: Sikring av web-API-en

Den første Microsoft Entra ID-applikasjonen brukes til å sikre web-API-en. Gi det navnet webAPI. Du kan aktivere Microsoft Entra ID-godkjenning på nett-API-en ved å følge denne fremgangsmåten med følgende verdier:

  • URL-adresse for pålogging: https://login.windows.net
  • Svar URL: https://<your-root-url>/.auth/login/aad/callback
  • Du trenger ikke en klientnøkkel.
  • Du trenger ikke å delegere noen tillatelser.
  • Kopier program-ID-en, fordi du trenger den senere.

Andre Microsoft Entra ID-program: Sikre den egendefinerte koblingen og delegert tilgang

Det andre Microsoft Entra ID-programmet brukes til å sikre registreringen av den egendefinerte koblingen og få delegert tilgang til web-API-en som er beskyttet av det første programmet. Gi dette navnet webAPI-customAPI .

  • URL-adresse for pålogging: https://login.windows.net
  • Svar URL: https://msmanaged-na.consent.azure-apim.net/redirect
  • Legg til tillatelser for å ha delegert tilgang til web-API.
  • Kopier program-ID-en, fordi du trenger den senere.
  • Generer en klientnøkkel og kopier den, fordi du trenger den senere.

Legg til godkjenning i Azure-nettappen

  1. Logg på Azure-portalen, og finn deretter nettappen du distribuerte i den første delen.

  2. Velg Innstillinger, og velg deretter Godkjenning / Autorisasjon.

  3. Aktiver App Service-godkjenning, og velg Azure Active Directory deretter. På det neste bladet velger du Express.

  4. Velg Velg eksisterende AD-app, og velg deretter webAPI-ID-programmet Microsoft Entra du opprettet tidligere.

Du skal nå kunne bruke Microsoft Entra ID til å godkjenne nettappen.

Legg til den egendefinerte koblingen i Power Automate

  1. Endre for OpenAPI å legge til objekt- og securityDefintions ID-godkjenningen Microsoft Entra som brukes for nettappen. Delen av din OpenAPI med vertseiendommen skal se slik ut:
// File header should be above here...

"host": "<your-root-url>",
"schemes": [
    "https"         //Make sure this is https!
],
"securityDefinitions": {
    "Microsoft Entra ID": {
        "type": "oauth2",
        "flow": "accessCode",
        "authorizationUrl": "https://login.windows.net/common/oauth2/authorize",
        "tokenUrl" : "https://login.windows.net/common/oauth2/token",
        "scopes": {}
    }
},

// The rest of the OpenAPI follows...
  1. Bla til og legg til Power Automate en egendefinert kobling som beskrevet i Bruke egendefinerte koblinger i Power Automate.

  2. Når du har lastet opp OpenAPI, oppdager veiviseren automatisk at du bruker Microsoft Entra ID-godkjenning for web-API-en.

  3. Konfigurer ID-godkjenningen Microsoft Entra for den egendefinerte koblingen.

  • Klient-ID: Klient-ID for webAPI-CustomAPI
  • Hemmelig: Klientnøkkel for webAPI-CustomAPI
  • Pålogging URL-adresse: https://login.windows.net
  • ResourceUri: Klient-ID for webAPI
  1. Velg Opprett for å opprette en tilkobling til den egendefinerte koblingen.

Finn ut mer om Microsoft Entra ID-autentisering

gi tilbakemelding

Vi setter stor pris på tilbakemeldinger om problemer med koblingsplattformen vår, eller ideer til nye funksjoner. Hvis du vil gi tilbakemelding, kan du gå til Sende inn problemer eller få hjelp med koblinger og velge tilbakemeldingstype.