Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Dessa självstudier visar dig hur du börjar skapa ett webb-API för ASP.NET, lagrar det i funktionen Azure Web Apps i Azure App Service, aktiverar Microsoft Entra ID-autentisering och sedan registrerar webb-API:t för ASP.NET i Power Automate. När API:et har registrerats kan du ansluta till det och anropa det från ditt flöde. Du kan också ha möjlighet att:
- Registrera och anropa API:et från Power Apps eller Azure Logic Apps.
- Integrera med Microsoft Copilot Studio.
Förutsättningar
Visual Studio 2013 eller senare. I den här självstudien används Visual Studio 2015.
Kod för webb-API. Om du inte har någon, prova den här handledningen: Komma igång med ASP.NET Web API 2 (C#).
En Azure-prenumeration Om du inte har någon prenumeration kan du börja med ett kostnadsfritt Azure-konto. Annars kan du registrera dig för en prenumeration där du betalar per användning.
Skapa och distribuera ett ASP.NET webbprogram till Azure
I den här självstudien skapar du ett Visual C# ASP.NET webbprogram.
Öppna Visual Studio och välj sedan Arkiv>nytt projekt.
Expandera Installerad, gå till Mallar>Visual C#>Web och välj ASP.NET sedan Webbprogram.
Ange ett projektnamn, en plats och ett lösningsnamn för din app och välj sedan OK.
I rutan Nytt ASP.NET webbprogram väljer du webb-API-mallen , kontrollerar att kryssrutan Värd i molnet är markerad och väljer sedan Ändra autentisering.
Välj Ingen autentisering och välj sedan OK. Du kan konfigurera autentisering senare.
När rutan Nytt ASP.NET webbprogram visas igen väljer du OK.
I rutan Skapa Serviço de Aplicativo granskar du värdinställningarna som beskrivs i följande tabell, gör de ändringar du vill ha och väljer sedan Skapa.
En Serviço de Aplicativo plan representerar en samling fysiska resurser som används för att vara värd för appar i din Azure-prenumeration. Läs mer om Serviço de Aplicativo.
Inställning Föreslaget värde Beskrivning Ditt Azure jobb- eller skolkonto eller ditt personliga Microsoft-konto ditt-användarkonto Markera ditt användarkonto. Webbappnamn anpassat-webb-api-app-namn eller standardnamn Ange namnet på din webb-API-app, som används i appens URL, till exempel: http://webb-api-app-namn. Prenumeration Namn-på-Azure-prenumeration Välj den Azure-prenumeration som du vill använda. Resursgrupp Namn-på-Azure-resursgrupp Välj en befintlig Azure-adressresursgrupp eller skapa en resursgrupp om du inte redan har gjort det. Obs! En Azure-resursgrupp ordnar Azure-resurser i din Azure-prenumeration.
App Service-plan App-Service-plan-namn Välj en befintlig App Service-plan, eller om du inte redan har gjort det, skapa en plan. Om du skapar en App Service-plan ska du anger du följande.
Inställning Föreslaget värde Beskrivning Plats distribution-region Välj region för distribution av appen. Storlek App-Service-plan-storlek Välj din planstorlek, som bestämmer kostnads- och beräkningskapacitet för din tjänstplan. Om du vill konfigurera andra resurser som krävs av din app väljer du Utforska ytterligare Azure-tjänster.
Inställning Föreslaget värde Beskrivning Resurstyp Azure-resurstyp Välj och konfigurera ytterligare resurser som krävs av appen. När Visual Studio har distribuerat ditt projekt, skapa då koden för din app.
Skapa en OpenAPI(Swagger)-fil som beskriver ditt webb-API
Om du vill ansluta din webb-API-app till Power Automate, Power Apps eller Logic Apps, behöver du en OpenAPI (tidigare Swagger) fil som beskriver API:ets åtgärder. Du kan skriva din egen OpenAPI definition för ditt API med Swagger onlineredigerare, men i den här självstudien används ett verktyg med öppen källkod som heter Swashbuckle.
Om du inte redan har gjort det kan du installera Swashbuckle NuGet-paketet i Visual Studio projektet:
I Visual Studio väljer du Verktyg>NuGet Pakethanterare>Pakethanterarens konsol.
I Package Manager-konsolen går du till appens projektkatalog om du inte redan är där (kör
Set-Location "project-path"
) och kör den här PowerShell-cmdleten:Install-Package Swashbuckle
Tips!
Om du kär ditt program efter det att du har installerat Swashbuckle kommer Swashbuckle att generera en OpenAPI-fil på följande URL:
http://{your-web-api-app-root-URL}/swagger/docs/v1
Swashbuckle genererar även ett användargränssnitt på denna URL:
http://{your-web-api-app-root-URL}/swagger
Nu är du redo publicera Webb-API-appen till Azure. Om du vill publicera från Visual Studio högerklickar du på webbprojektet i Solution Explorer, väljer Publicera och följer anvisningarna.
Viktigt
Om ett OpenAPI dokument innehåller dubbla åtgärds-ID:n ogitligt. C#-exempelmallen upprepar åtgärds-ID:t,
Values_Get
.Om du använde C#-exempelmallen kan du åtgärda det här problemet genom att ändra en åtgärds-ID-instans till
Value_Get
och publicera om.Hämta OpenAPI-dokumentet genom att bläddra fram till denna plats:
http://{your-web-api-app-root-URL}/swagger/docs/v1
Du kan också ladda ned ett exempeldokument OpenAPI från den här självstudien. Se till att du tar bort kommentarerna, som börjar med
//
, innan du använder dokumentet.Spara innehållet som en JSON-fil. Beroende på din webbläsare kan du behöva kopiera och klistra in den i en tom textfil.
Ställ in Microsoft Entra ID autentisering
Nu skapar du två Microsoft Entra ID-program i Azure. Mer information finns i Integrera program med Microsoft Entra ID.
Viktigt
Båda apparna måste vara i samma katalog.
Första Microsoft Entra ID-programmet: skydda Web API
Det första Microsoft Entra ID-programmet används för att skydda webb-API. Ge det namnet webAPI. Du kan aktivera Microsoft Entra ID-autentisering på ditt webb-API genom att följa dessa steg med följande värden:
- URL för inloggning:
https://login.windows.net
- Svar URL:
https://<your-root-url>/.auth/login/aad/callback
- Du behöver ingen klientnyckel.
- Du behöver inte delegera några behörigheter.
- Kopiera program-ID eftersom du behöver det senare.
Andra Microsoft Entra ID-programmet: Skydda anpassad anslutning och delegerad åtkomst
Det andra Microsoft Entra ID-programmet används för att skydda registreringen av den anpassade anslutningen och få delegerad åtkomst till webb-API:t som skyddas av det första programmet. Ge den här namnet webAPI-customAPI .
- URL för inloggning:
https://login.windows.net
- Svar URL:
https://msmanaged-na.consent.azure-apim.net/redirect
- Lägg till behörigheter för att få begränsad åtkomst till webb-API.
- Kopiera program-ID eftersom du behöver det senare.
- Generera en klientnyckel och kopiera den eftersom du behöver den senare.
Lägg till autentisering i din Azure-webbapp
Logga in på Azure Portal och leta sedan upp den webbapp som du distribuerade i det första avsnittet.
Välj Inställningar och väljsedan Autentisering/auktorisering .
Aktivera Serviço de Aplicativo autentisering och välj Azure Active Directory sedan. På nästa blad väljer du Express.
Välj Välj befintlig AD-app och välj sedan det webAPI-ID-program som Microsoft Entra du skapade tidigare.
Du bör nu kunna använda Microsoft Entra ID för att autentisera din webbapp.
Lägg till det anpassade anslutningsprogrammet i Power Automate
- Ändra för OpenAPI att lägga till objekt-
securityDefintions
och Microsoft Entra ID-autentisering som används för webbappen. Avsnittet av din OpenAPI med värdegenskapen ska se ut så här:
// 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...
Bläddra till Power Automate och lägg till ett anpassat anslutningsprogram enligt beskrivningen i Använda anpassade anslutningsprogram i Power Automate.
När du väl har laddat upp ditt OpenAPI kommer guiden automatiskt att identifiera att du använder Microsoft Entra ID-autentisering för ditt webb-API.
Konfigurera Microsoft Entra ID-autentisering för din anpassade anslutningsapp.
- Klient-ID: Klient-ID för webAPI-CustomAPI
- Hemlighet: Klientnyckel för webAPI-CustomAPI
-
Webbadress för inloggning:
https://login.windows.net
- ResourceUri: Klient-ID för webAPI
- Välj Skapa för att skapa en anslutning till det anpassade anslutningsprogrammet.
Relaterad information
Läs mer om Microsoft Entra ID-autentisering
Ge feedback
Vi uppskattar feedback på problem med vår anslutningsplattform eller nya funktioner. Om du vill ge feedback går du till Skicka problem eller får hjälp med anslutningsprogram och väljer din feedbacktyp.