Prozkoumání Data API Builderu pro Azure SQL Database

Dokončeno

V dnešním světě řízeném daty je schopnost efektivního přístupu k datům a manipulace s nimi zásadní pro firmy a vývojáře. Data API Builder (DAB) nabízí výkonné řešení pro vytváření moderních koncových bodů REST a GraphQL pro službu Azure SQL Database a nahrazení vlastních rozhraní API, která provádějí operace CRUD (vytvoření, čtení, aktualizace, odstranění) s databází.

Azure Data API Builder je opensourcový nástroj navržený pro vývojáře, který zjednodušuje proces zveřejnění databázových objektů jako koncových bodů. Podporuje mnoho databází, mimo jiné azure SQL, SQL Server, PostgreSQL a Azure Cosmos DB. Pomocí JAZYKA DAB můžete bez dalších poplatků vytvářet zabezpečená, škálovatelná a vysoce výkonná rozhraní API bez nutnosti psaní kódu.

Diagram znázorňující vztah mezi všemi komponentami tvůrce rozhraní Data API

Objevte klíčové funkce

Použití DAB ve vývojovém procesu nabízí mnoho výhod. Tady jsou některé klíčové výhody, které vám můžou pomoct určit, jak dobře odpovídá požadavkům na váš projekt.

  • Kompatibilita mezi platformami: DAB je multiplatformní a může běžet v libovolném cloudovém nebo místním prostředí. Podporuje více back-endových zdrojů dat, včetně relačních databází a databází NoSQL.
  • Zabezpečení a ověřování: DAB se integruje s různými metodami ověřování, včetně OAuth2, EasyAuth a Microsoft Entra ID. Podporuje také autorizaci na základě rolí a podrobné bezpečnostní prvky. To znamená, že data můžete zveřejnit a přitom zachovat kontrolu nad tím, kdo k nim má přístup a co s nimi může dělat.
  • Snadné použití: S jedním konfiguračním souborem můžete definovat koncové body rozhraní API, což usnadňuje a zefektivňuje proces nastavení.
  • Integrace se službami Azure: DAB se bezproblémově integruje se službou Azure Static Web Apps, Azure Container Apps a dalšími službami Azure a vylepšuje její funkce a škálovatelnost.

Seznam funkcí dostupných pro tvůrce rozhraní Data API najdete v tématu Dostupnost funkcí pro tvůrce rozhraní Data API.

Použití Tvůrce rozhraní Data API

Pokud chcete začít pracovat s Azure Data API Builderem, ujistěte se, že máte nainstalované předplatné Azure a potřebné nástroje, jako je nejnovější .NET 8 a Azure Developer CLI.

  1. Vytvořte nový projekt: K vytvoření a nasazení požadovaných služeb použijte Azure Developer CLI. Pokud chcete nasadit Azure statickou webovou aplikaci, která je hostitelem Tvůrce rozhraní DATA API, zvolte šablonu Azure Static Web Apps z galerie Awesome AZD, přejděte do adresáře, kam chcete vytvořit projekt, a spusťte následující příkazy pomocí názvu šablony zobrazeného na kartě šablony.

    azd init --template <template-name>
    azd up
    
  2. Konfigurace připojení k databázi: Propojte službu Azure SQL Database s nasazenou statickou webovou aplikací pomocí funkce připojení k databázi. Přejděte do webové aplikace Azure Static, kterou jste vytvořili, a v části Nastavení propojte existující databázi na stránce Připojení k databázi .

  3. Definování koncových bodů rozhraní API: Vytvořte konfigurační soubor pro definování koncových bodů REST nebo GraphQL. Tento soubor určuje databázové objekty, které mají být vystaveny, a povolené operace. Spuštěním následujícího příkazu můžete například přidat entity databáze do konfiguračního souboru.

    dab add "Address" --source "dbo.Address" --permissions "anonymous:*" --config "swa-db-connections/staticwebapp.database.config.json"
    

Kontrola konfiguračního souboru

Tady je jednoduchý příklad konfiguračního souboru pro zveřejnění tabulky ve službě Azure SQL Database.

{
  "data-source": {
    "database-type": "mssql",
    "connection-string": "Server=tcp:your_server.database.windows.net,1433;Initial Catalog=your_database;Persist Security Info=False;User ID=your_user;Password=your_password;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;"
  },
  "entities": {
    "products": {
      "source": "Address",
      "rest": true,
      "graphql": true,
      "permissions": [
        {
          "role": "anonymous",
          "actions": ["read"]
        }
      ]
    }
  }
}

Tato konfigurace zveřejňuje tabulku Adres jako koncové body REST i GraphQL, což umožňuje přístup pro čtení anonymním uživatelům.