Condividi tramite


Che cos'è Generatore API dati per database di Azure?

Generatore API dati sostituisce qualsiasi API personalizzata che esegue operazioni CRUD (Create, Read, Update, Delete) su un database. DAB è multipiattaforma, open source e indipendentemente dal linguaggio, dalla tecnologia e dai framework. Richiede zero codice e un singolo file di configurazione. Meglio di tutto, è gratuito, senza alcun livello Premium e può essere eseguito in qualsiasi cloud.

Illustrazione della mascotte del generatore di API dati, che è un database con un cappello di costruzione con un logo cloud.

Generatore API dati è progettato per gli sviluppatori. Generatore API dati offre un'interfaccia della riga di comando multipiattaforma, OpenAPI nativa, Swagger per gli endpoint REST e Banana Cake Pop per gli endpoint GraphQL. È possibile proteggere il contenitore senza stato Docker con EasyAuth, Microsoft Entra Identity o qualsiasi server JSON Web Token (JWT) scelto da un'organizzazione. Ha un motore di criteri flessibile, controlli di sicurezza granulari e passa automaticamente i dati delle attestazioni al contesto della sessione SQL.

Generatore API dati (DAB) supporta più origini dati back-end contemporaneamente, incluse origini relazionali e NoSQL. DAB integra anche facilmente Application Insights. Il file di configurazione può riflettere le relazioni nel database o definire quelle virtuali nuove. Gli endpoint GraphQL consentono più istruzioni Create nidificate all'interno di una singola transazione, mentre gli endpoint REST dispongono di memorizzazione nella cache nella memoria e supportano parole chiave stringa di query OData simili a OData.

DAB si integra in modo nativo con App Web statiche di Azure. DAB funziona anche con app Azure Container, istanze di Azure Container, Servizi Azure Kubernetes e App Web di Azure per contenitori. DAB funziona con questi servizi, supportando completamente le distribuzioni personalizzate e locali.

DAB supporta:

  • SQL Server
  • SQL di Azure
  • Azure Cosmos DB for NoSQL
  • PostgreSQL
  • Database di Azure per PostgreSQL
  • Azure Cosmos DB for PostgreSQL
  • MySQL
  • Database di Azure per MySQL
  • Azure SQL Data Warehouse

DAB può ridurre una codebase tipica per un terzo, eliminare suite di unit test, abbreviare le pipeline CI/CD e introdurre standard e funzionalità avanzate in genere riservate ai team di sviluppo più grandi. È sicuro e ricco di funzionalità, mentre rimane incredibilmente semplice, scalabile e osservabile.

Architettura

Questo diagramma suddivide la relazione tra tutti i componenti del generatore API dati.

Diagramma che mostra una panoramica dell'architettura di Generatore API dati. Il diagramma include file di schema, astrazioni, file di configurazione e endpoint GraphQL+REST risultanti.

Funzionalità principali

  • Supporto per le raccolte NoSQL
  • Supporto per tabelle relazionali, viste e stored procedure
  • Supportare più origini dati simultanee
  • Supporto per l'autenticazione tramite OAuth2/JWT
  • Supporto per EasyAuth e Microsoft Entra Identity
  • Autorizzazione basata sul ruolo tramite attestazioni ricevute
  • Sicurezza a livello di elemento tramite espressioni di criteri
  • Endpoint REST
    • POST, GET, PUT, PATCH, DELETE
    • Filtro, ordinamento e impaginazione
    • Cache in memoria
    • Supporto per OpenAPI
  • Endpoint GraphQL
    • Query e mutazioni
    • Filtro, ordinamento e impaginazione
    • Spostamento delle relazioni
    • Schemi dinamici
  • Sviluppo semplice tramite l'interfaccia della riga di comando dedicata
  • Integrazione per app Web statiche tramite connessione al database
  • Open Source & gratuito

Open source

Il generatore di API dati è open source e rilasciato con la licenza MIT. Il repository è disponibile in GitHub in azure/data-api-builder.