Povolení analýzy rozhraní API v centru rozhraní API – samoobslužná správa

Tento článek vysvětluje, jak povolit analýzu rozhraní API ve službě Azure API Center ručním nastavením modulu lintování a triggerů. Analýza rozhraní API nabízí možnosti lintování pro analýzu definic rozhraní API v centru rozhraní API vaší organizace. Linting zajišťuje, že definice rozhraní API odpovídají pravidlům stylu organizace a generují jednotlivé i souhrnné sestavy. Pomocí analýzy rozhraní API můžete identifikovat a opravit běžné chyby a nekonzistence v definicích rozhraní API.

Poznámka:

Ve verzi Preview může Azure API Center také automaticky nastavit lintovací modul a všechny požadované závislosti a triggery. Další informace.

Přehled scénáře

V tomto scénáři budete analyzovat definice rozhraní API ve vašem centru rozhraní API pomocí opensourcového lintovacího modulu Spectral . Aplikace Azure Functions spouští lintovací modul v reakci na události ve vašem centru rozhraní API. Spectral kontroluje, že rozhraní API definovaná v dokumentu specifikace JSON nebo YAML odpovídají pravidlům v přizpůsobitelné příručce stylu rozhraní API. Vygeneruje se sestava analýzy, kterou můžete zobrazit v centru rozhraní API.

Následující diagram znázorňuje kroky pro povolení lintování a analýzy ve vašem centru rozhraní API.

Diagram znázorňující, jak funguje lintování rozhraní API ve službě Azure API Center

  1. Nasaďte aplikaci Azure Functions, která spouští modul lintingu Spectral v definici rozhraní API.

  2. Nakonfigurujte odběr událostí v Centru rozhraní Azure API tak, aby aktivoval aplikaci funkcí.

  3. Událost se aktivuje přidáním nebo nahrazením definice rozhraní API v centru rozhraní API.

  4. Při přijetí události aplikace funkcí vyvolá modul lintování Spectral.

  5. Lintovací modul zkontroluje, že rozhraní API definovaná v definici odpovídají průvodci stylem rozhraní API organizace a vygenerují sestavu.

  6. Zobrazte sestavu analýzy v centru rozhraní API.

Možnosti nasazení lintujícího modulu a odběru událostí

Tento článek obsahuje dvě možnosti nasazení lintovacího modulu a odběru událostí ve vašem centru rozhraní API:

  • Automatizované nasazení – Použití Azure Developer CLI (azd) pro jednostupňové nasazení infrastruktury. Tato možnost se doporučuje pro zjednodušený proces nasazení.

  • Ruční nasazení – Postupujte podle podrobných pokynů k nasazení aplikace Azure Functions a konfiguraci odběru událostí. Tato možnost se doporučuje, pokud dáváte přednost ručnímu nasazení a správě prostředků.

Omezení

  • Linting aktuálně podporuje pouze soubory specifikace JSON nebo YAML, jako jsou dokumenty specifikace OpenAPI nebo AsyncAPI.
  • Modul linting ve výchozím nastavení používá integrovanou spectral:oas sadu pravidel. Pokud chcete rozšířit sadu pravidel nebo vytvořit vlastní vodítka stylu rozhraní API, přečtěte si úložiště Spectral Na GitHubu.
  • Aplikace funkcí Azure, která volá lintování, se účtuje samostatně a spravujete a udržujete ji.

Požadavky

  • Centrum rozhraní API ve vašem předplatném Azure. Pokud jste ho ještě nevytvořili, přečtěte si článek Rychlý start: Vytvoření centra rozhraní API.

  • Poskytovatel prostředků Event Gridu zaregistrovaný ve vašem předplatném. Pokud potřebujete zaregistrovat poskytovatele prostředků Event Gridu, přečtěte si téma Přihlášení k odběru událostí publikovaných partnerem ve službě Azure Event Grid.

  • Pro Azure CLI:

    Poznámka:

    az apic příkazy vyžadují apic-extension rozšíření Azure CLI. Pokud jste nepoužili az apic příkazy, můžete rozšíření nainstalovat dynamicky při spuštění prvního az apic příkazu nebo rozšíření nainstalovat ručně. Přečtěte si další informace o rozšířeních Azure CLI.

    Podívejte se na poznámky k verzi nejnovějších změn a aktualizací v nástroji apic-extension.

    Poznámka:

    Příklady příkazů Azure CLI v tomto článku se dají spustit v PowerShellu nebo prostředí Bash. Pokud je to potřeba kvůli jiné syntaxi proměnných, jsou pro tyto dvě prostředí k dispozici samostatné příklady příkazů.

azd nasazení aplikace Azure Functions a odběru událostí

Tato část obsahuje automatizované kroky pomocí Azure Developer CLI ke konfiguraci aplikace Azure Functions a odběru událostí, které umožňují lintování a analýzu ve vašem centru rozhraní API. Prostředky můžete také nakonfigurovat ručně.

Další požadavky pro tuto možnost

Spuštění ukázky pomocí azd

  1. Naklonujte úložiště GitHub a otevřete ho v editoru Visual Studio Code.

  2. Změňte adresář na APICenter-Analyzer složku v úložišti.

  3. resources/rulesets Ve složce najdete oas.yaml soubor. Tento soubor odpovídá vašemu aktuálnímu průvodci stylem rozhraní API a dá se upravit na základě potřeb a požadavků vaší organizace.

  4. Ověřování pomocí Azure Developer CLI a Azure CLI pomocí následujících příkazů:

    azd auth login
    
    az login
    
  5. Spuštěním následujícího příkazu nasaďte infrastrukturu linting do vašeho předplatného Azure.

    azd up
    
  6. Podle pokynů zadejte požadované informace a nastavení nasazení, jako je název prostředí a název centra rozhraní API. Podrobnosti najdete v tématu Spuštění ukázky pomocí Azure Developer CLI (azd).

    Poznámka:

    Nasazení může trvat několik minut.

  7. Po dokončení nasazení přejděte do centra rozhraní API na webu Azure Portal. V nabídce vlevo vyberte odběry událostí>a zobrazte tak vytvořené odběry událostí.

Do centra rozhraní API teď můžete nahrát definiční soubor rozhraní API, který aktivuje odběr událostí a spustí lintovací modul.

Ruční postup konfigurace aplikace Azure Functions a odběru událostí

Tato část obsahuje kroky ručního nasazení ke konfiguraci aplikace Azure Functions a odběru událostí pro povolení lintování a analýzy v centru rozhraní API. K automatizovanému nasazení můžete použít také Azure Developer CLI .

Další požadavky pro tuto možnost

Krok 1. Nasazení aplikace Azure Functions

Nasazení aplikace Azure Functions, která spouští linting funkci v definicích rozhraní API:

  1. Naklonujte úložiště GitHub a otevřete ho v editoru Visual Studio Code.

  2. resources/rulesets Ve složce najdete oas.yaml soubor. Tento soubor odpovídá vašemu aktuálnímu průvodci stylem rozhraní API a dá se upravit na základě potřeb a požadavků vaší organizace.

  3. Volitelně můžete aplikaci funkcí spustit místně a otestovat ji. Podrobnosti najdete v souboru README v úložišti.

  4. Nasaďte aplikaci funkcí do Azure. Postup najdete v tématu Rychlý start: Vytvoření funkce v Azure pomocí TypeScriptu pomocí editoru Visual Studio Code.

    Poznámka:

    Nasazení aplikace funkcí může trvat několik minut.

  5. Přihlaste se k webu Azure Portal a přejděte do aplikace funkcí.

  6. Na stránce Přehled zkontrolujte následující podrobnosti:

    • Ověřte, že je spuštěná aplikace funkcí.
    • V části Funkce ověřte, že je funkce apicenter-analyzer povolená.

    Snímek obrazovky aplikace funkcí na portálu

Krok 2. Konfigurace spravované identity v aplikaci funkcí

Pokud chcete aplikaci funkcí povolit přístup k Centru rozhraní API, nakonfigurujte pro aplikaci funkcí spravovanou identitu. Následující kroky ukazují, jak povolit a nakonfigurovat spravovanou identitu přiřazenou systémem pro aplikaci funkcí pomocí webu Azure Portal nebo Azure CLI.

  1. Na webu Azure Portal přejděte do aplikace funkcí a v části Nastavení vyberte Identita.
  2. Na kartě Přiřazený systém nastavte stav na Zapnuto a pak vyberte Uložit.

Teď, když je spravovaná identita povolená, přiřaďte jí roli Azure API Center Compliance Manager pro přístup k centru rozhraní API.

  1. Na webu Azure Portal přejděte do centra rozhraní API a vyberte Řízení přístupu (IAM).
  2. Vyberte + Přidat > přiřazení role.
  3. Vyberte role funkcí úloh a pak vyberte Azure API Center Compliance Manager. Vyberte Další.
  4. Na stránce Členové v části Přiřadit přístup vyberte Spravovaná identita > + Vybrat členy.
  5. Na stránce Vybrat spravované identity vyhledejte a vyberte spravovanou identitu aplikace funkcí. Klikněte na Vybrat a pak na Další.
  6. Zkontrolujte přiřazení role a vyberte Zkontrolovat a přiřadit.

Krok 3. Konfigurace odběru událostí v centru rozhraní API

Teď ve svém centru API vytvořte odběr událostí, který aktivuje aplikaci funkcí při nahrání nebo aktualizaci definičního souboru rozhraní API. Následující kroky ukazují, jak vytvořit odběr událostí pomocí webu Azure Portal nebo Azure CLI.

  1. Na webu Azure Portal přejděte do centra rozhraní API a vyberte Události.

  2. Na kartě Začínáme vyberte funkci Azure Functions.

  3. Na stránce Vytvořit odběr události proveďte následující akce:

    1. Zadejte popisný název odběru události a vyberte Schéma event Gridu.

    2. V podrobnostech tématu zadejte název systémového tématu podle vašeho výběru.

    3. V části Typy událostí vyberte následující události:

      • Přidání definice rozhraní API
      • Aktualizace definice rozhraní API
    4. V podrobnostech o koncovém bodu vyberte Azure Functions > Configure an endpoint.

    5. Na stránce Vybrat funkci Azure vyberte aplikaci funkcí a funkci apicenter-linter, kterou jste nakonfigurovali. Klikněte na Potvrdit výběr.

    6. Vyberte Vytvořit.

      Snímek obrazovky s vytvořením odběru událostí na portálu

  4. Vyberte kartu Odběry událostí a vyberte Aktualizovat. Ověřte, že stav zřizování odběru událostí byl úspěšný.

    Snímek obrazovky se stavem odběru událostí na portálu

Poznámka:

Rozšíření odběru událostí do aplikace funkcí může chvíli trvat.

Aktivační událost v centru rozhraní API

Pokud chcete otestovat odběr událostí, zkuste nahrát nebo aktualizovat definiční soubor rozhraní API přidružený k verzi rozhraní API v centru rozhraní API. Nahrajte například dokument OpenAPI nebo AsyncAPI. Po aktivaci odběru událostí aplikace funkcí vyvolá modul linting rozhraní API k analýze definice rozhraní API.

Ověření, že se aktivovalo odběr událostí:

  1. Přejděte do centra rozhraní API a v nabídce vlevo vyberte Události .

  2. Vyberte kartu Odběry událostí a vyberte odběr událostí pro vaši aplikaci funkcí.

  3. Zkontrolujte metriky a ověřte, že se aktivovalo odběr událostí a že se lintování úspěšně vyvolalo.

    Snímek obrazovky s metrikami odběru událostí na portálu

    Poznámka:

    Zobrazení metrik může trvat několik minut.

Po analýze definice rozhraní API vygeneruje modul linting sestavu na základě nakonfigurovaného průvodce stylem rozhraní API.

Zobrazení sestav analýzy rozhraní API

Sestavu analýzy definice rozhraní API můžete zobrazit na webu Azure Portal. Po analýze definice rozhraní API sestava uvádí chyby, upozornění a informace na základě nakonfigurovaného průvodce stylem rozhraní API.

Na portálu můžete také zobrazit souhrn analytických sestav pro všechny definice rozhraní API v centru rozhraní API.

Sestava analýzy pro definici rozhraní API

Zobrazení sestavy analýzy pro definici rozhraní API v centru rozhraní API:

  1. Na portálu přejděte do verze rozhraní API ve vašem centru rozhraní API, kde jste přidali nebo aktualizovali definici rozhraní API.
  2. V nabídce vlevo v části Podrobnosti vyberte Definice.
  3. Vyberte definici rozhraní API, kterou jste nahráli nebo aktualizovali.
  4. Vyberte kartu Analýza.Snímek obrazovky s kartou Analýza pro definici rozhraní API na portálu

Otevře se sestava analýzy rozhraní API a zobrazí definici rozhraní API a chyby, upozornění a informace na základě nakonfigurovaného průvodce stylem rozhraní API. Následující snímek obrazovky ukazuje příklad sestavy analýzy rozhraní API.

Snímek obrazovky se sestavou analýzy rozhraní API na portálu

Souhrn analýzy rozhraní API

Zobrazení souhrnu analytických sestav pro všechny definice rozhraní API v centru rozhraní API:

  1. Na portálu přejděte do centra rozhraní API.

  2. V nabídce vlevo v části Zásady správného řízení vyberte Analýzu rozhraní API. Zobrazí se souhrn.

    Snímek obrazovky se souhrnem analýzy rozhraní API na portálu

Další informace o Event Gridu: