Vytvoření vlastního konektoru pro webové rozhraní API
Tento kurz vám ukáže, jak začít sestavovat webové rozhraní API ASP.NET, hostovat jej ve funkci Azure Web Apps služby Azure App Service, povolit ověřování Microsoft Entra ID a poté zaregistrovat webové rozhraní ASP.NET v Power Automate. Jakmile bude rozhraní API zaregistrované, můžete se k němu připojit a volat ho ze svého toku. Rozhraní API můžete zaregistrovat a volat také z Power Apps nebo Azure Logic Apps.
Předpoklady
Visual Studio 2013 nebo novější. Tento kurz používá Visual Studio 2015.
Kód pro vaše webové rozhraní API. Pokud žádné nemáte, zkuste tento kurz: Začínáme s ASP.NET Web API 2 (C #).
Předplatné Azure. Pokud nemáte předplatné, můžete začít používat bezplatný účet Azure. V opačném případě si zaregistrujte předplatné s průběžnými platbami.
Vytvořte a nasaďte webovou aplikaci ASP.NET pro Azure
Pro tento kurz vytvořte webovou aplikaci Visual C# ASP.NET.
Otevřete Visual Studio a pak vyberte Soubor > Nový projekt.
Rozbalte Nainstalované, přejděte na Šablony > Visual C# > Web a vyberte Webová aplikace ASP.NET.
Zadejte název projektu, umístění a název řešení pro vaši aplikaci a poté zvolte OK.
V poli Nová webová aplikace ASP.NET vyberte šablonu Webové rozhraní API, ujistěte se, že je vybráno políčko Hostovat v cloudu a poté vyberte Změnit ověřování.
Zvolte Bez ověřování a potom vyberte OK. Ověřování můžete nastavit později.
Když se znovu objeví pole Nová webová aplikace ASP.NET, vyberte OK.
V poli Vytvořit App Service zaškrtněte nastavení hostování popsané v následující tabulce, proveďte požadované změny a poté vyberte Vytvořit.
Plán App Servicespředstavuje kolekci fyzických zdrojů používaných k hostování aplikací v předplatném Azure. Informace o App Service.
Nastavení Navrhovaná hodnota Description Váš pracovní nebo školní účet Azure nebo váš osobní účet Microsoft your-user-account Vyberte svůj uživatelský účet. Název webové aplikace custom-web-api-app-name nebo výchozí název Zadejte název aplikace rozhraní Web API, která se používá v adrese URL aplikace, například: http://web-api-app-name. Odběr Azure-subscription-name Vyberte předplatné Azure, které chcete použít. Skupina prostředků Azure-resource-group-name Vyberte existující skupinu zdrojů Azure nebo, pokud jste tak dosud neučinili, vytvořte skupinu zdrojů. Poznámka: Skupina zdrojů Azure uspořádá zdroje Azure ve vašem předplatném Azure.
Plán služby App Service App-Service-plan-name Vyberte existující plán App Service, nebo pokud jste tak ještě neučinili, vytvořte plán. Pokud vytvoříte plán služby App Service, zadejte následující.
Nastavení Navrhovaná hodnota Description Location deployment-region Vyberte oblast pro nasazení aplikace. Velikost App-Service-plan-size Vyberte velikost plánu, která určuje náklady a kapacitu výpočetních zdrojů pro váš plán služeb. Chcete-li nastavit další zdroje požadované aplikací, vyberte Prozkoumat další služby Azure.
Nastavení Navrhovaná hodnota Popis Typ prostředku Azure-resource-type Vyberte a nastavte další zdroje, které aplikace vyžaduje. Poté, co Visual Studio nasadí váš projekt, vytvoří kód pro vaši aplikaci.
Vytvořte soubor OpenAPI (Swagger), který popisuje vaše webové rozhraní API
K připojení vaší aplikace webového rozhraní API k Power Automate, Power Apps nebo Logic Apps potřebujete soubor OpenAPI (dříve Swagger), který popisuje operace vašeho rozhraní API. Můžete si napsat vlastní definici OpenAPI pro vaše rozhraní API pomocí editoru Swagger online, ale tento výukový program používá opensource nástroj s názvem Swashbuckle.
Pokud jste tak dosud neučinili, nainstalujte balíček Swashbuckle NuGet do svého projektu Visual Studio:
V aplikaci Visual Studio zvolte Nástroje > Správce balíčků NuGet > Konzola Správce balíčků.
V konzole Správce balíčků přejděte do adresáře projektu vaší aplikace, pokud tam ještě nejste (spusťte
Set-Location "project-path"
) a spusťte tuto rutinu PowerShell:Install-Package Swashbuckle
Tip
Pokud spustíte aplikaci po instalaci Swashbuckle, Swashbuckle vygeneruje soubor OpenAPI na této adrese URL:
http://{your-web-api-app-root-URL}/swagger/docs/v1
Swashbuckle také generuje uživatelské rozhraní na této adrese URL:
http://{your-web-api-app-root-URL}/swagger
Po dokončení publikujte aplikaci Web API v Azure. Pokud chcete publikovat z aplikace Visual Studio, klikněte pravým tlačítkem myši na svůj webový projekt v aplikaci Solution Explorer, vyberte Publikovat a postupujte podle pokynů.
Důležité
Pokud dokument OpenAPI obsahuje duplicitní ID operace, bude neplatný. Vzorová šablona C# opakuje ID operace,
Values_Get
.Pokud jste použili ukázkovou šablonu C#, můžete tento problém vyřešit změnou jedné instance ID operace na
Value_Get
a znovu ji zveřejnit.Získejte dokument OpenAPI tak, že přejdete do tohoto umístění:
http://{your-web-api-app-root-URL}/swagger/docs/v1
Můžete si také stáhnout ukázkový dokument OpenAPI z tohoto kurzu. Před použitím dokumentu se ujistěte, že jste odstranili komentáře, které začínají na
//
.Uložte obsah jako soubor ve formátu JSON. V závislosti na prohlížeči může být potřeba text zkopírovat a vložit do prázdného textového souboru.
Nastavení ověřování Microsoft Entra ID
Nyní v Azure vytvoříte dvě aplikace Microsoft Entra ID. Další informace naleznete v části Integrace aplikací s Microsoft Entra ID.
Důležité
Obě aplikace musí být ve stejném adresáři.
První aplikace Microsoft Entra ID: Zabezpečení webového rozhraní API
První aplikace Microsoft Entra ID slouží k zabezpečení webového rozhraní API. Pojmenujte ji webAPI. Ověřování Microsoft Entra ID ve webovém rozhraní API můžete povolit následujícím postupem s následujícími hodnotami:
- Adresa URL pro přihlašování:
https://login.windows.net
- Adresa URL odpovědi:
https://<your-root-url>/.auth/login/aad/callback
- Nepotřebujete klíč klienta.
- Není potřeba delegovat žádná oprávnění.
- Zkopírujte ID aplikace, protože je budete potřebovat později.
Druhá aplikace Microsoft Entra ID: Zabezpečení vlastního konektoru a delegovaný přístup
Druhá aplikace Microsoft Entra ID slouží k zabezpečení registrace vlastního konektoru a získání delegovaného přístupu k webovému rozhraní API chráněnému první aplikací. Tuto aplikaci pojmenujte webAPI-customAPI .
- Adresa URL pro přihlašování:
https://login.windows.net
- Adresa URL odpovědi:
https://msmanaged-na.consent.azure-apim.net/redirect
- Přidejte oprávnění, abyste měli delegovaný přístup k webovému rozhraní API.
- Zkopírujte ID aplikace, protože je budete potřebovat později.
- Vytvořte klíč klienta a zkopírujte jej, protože jej budete potřebovat později.
Přidání ověřování do webové aplikace Azure
Přihlaste se k portálu Azure a vyhledejte webovou aplikaci, kterou jste nasadili v první části.
Vyberte Nastavení a potom vyberte Ověřování / autorizace.
Zapněte Ověření aplikační služby a poté vyberte Azure Active Directory. V dalším okně zvolte Expresní.
Vyberte Vybrat existující aplikaci AD a pak vyberte aplikaci Microsoft Entra ID webAPI, kterou jste vytvořili dříve.
Aplikaci Microsoft Entra ID byste teď měli mít možnost používat k ověření vaší webové aplikace.
Přidání vlastního konektoru do Power Automate
- Upravte OpenAPI pro přidání objektu
securityDefintions
a ověřování Microsoft Entra ID používaného pro webovou aplikaci. Část OpenAPI s vlastností host by měla vypadat takto:
// 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...
Přejděte do Power Automate a přidejte vlastní konektor, jak je popsáno v tématu Používání vlastních konektorů v Power Automate.
Po nahrání OpenAPI průvodce automaticky zjistí, že pro webové rozhraní API používáte ověřování pomocí Microsoft Entra ID.
Pro vlastní konektor nakonfigurujte ověřování pomocí Microsoft Entra ID.
- ID klienta: ID klienta webAPI-CustomAPI
- Tajný kód: Klientský klíč webAPI-CustomAPI
- Adresa URL přihlášení:
https://login.windows.net
- Identifikátor URI prostředku: ID klienta webAPI
- Vyberte Vytvořit a vytvořte připojení k vlastnímu konektoru.
Související informace
Další informace o ověřování pomocí Microsoft Entra ID.
Poskytnutí názorů
Velmi si vážíme vašich názorů na problémy s naší platformou konektorů nebo nových nápadů na funkce. Chcete-li poskytnout zpětnou vazbu, přejděte do části Odeslat problémy nebo získat pomoc s konektory a vyberte typ zpětné vazby.