Che cos'è il Centro API di Azure?
Il Centro API di Azure è un nuovo servizio in Azure che offre un repository strutturato e centralizzato di tutte le API aziendali, consentendo il rilevamento unificato, l'individuazione, il riutilizzo e la governance. Il Centro API è una soluzione sicura che consolida e organizza tutte le API indipendentemente dal tipo, dalla fase del ciclo di vita di sviluppo o dalla posizione di distribuzione per il runtime dell'API, insieme ai metadati o alle informazioni correlate all'API.
Vantaggi del Centro API
Problema del cliente | Vantaggi del Centro API |
---|---|
Scarsa individuabilità e riutilizzo delle API | Facilità di individuazione e utilizzo delle API. I manager delle API possono visualizzare un inventario completo di tutte le API nel portale di Azure. I consumer di API possono usare il portale basato su Web del Centro API per individuare e usare le API, oppure usare l'estensione Centro API per Visual Studio Code per compilare, individuare e utilizzare le API. |
Shadow, API non governative | Inventario centralizzato delle API. Il Centro API consente alle organizzazioni di creare un repository di API centralizzato dei diversi team e reparti, che fungono da fonte consolidata di verità e attendibilità per tutte le API. |
Potenziali minacce alla sicurezza | Facilità di governance delle API. Con le API consolidate in un'unica posizione, la governance di queste API per applicare i criteri di sicurezza dell'organizzazione diventa più semplice per i team della piattaforma API. |
Progettazione API incoerente | Controlli di conformità automatizzati della progettazione API. Il Centro API consente agli amministratori di applicare standard di progettazione in tutte le API e implementa un flusso di lavoro di linting per il controllo delle API rispetto a una guida di stile definita, e genera un report di conformità API accessibile nel Centro API. |
Ruoli e responsabilità dell'ecosistema API
L'ecosistema API di un'organizzazione è spesso costituito da ruoli diversi con responsabilità diverse che sono integrali per il corretto funzionamento. Saranno ora esaminati alcuni ruoli in modo più approfondito.
Produttori di API: possono trattarsi di singoli sviluppatori o team le cui principali responsabilità includono:
- Consolidamento delle specifiche e dei requisiti del sistema
- Progettazione dell'architettura API adatta agli obiettivi definiti
- Sviluppo, protezione e pubblicazione delle API
- Testare e garantire che le API soddisfino i requisiti funzionali e quelli di prestazioni
- Documentazione delle API
- Operazioni di manutenzione dell'API, che includono la gestione di versioni e aggiornamenti
I produttori di API si adoperano al massimo per seguire le procedure consigliate, i criteri di sicurezza e conformità e gli standard API dell'organizzazione per la coerenza. Inoltre devono assicurare di non duplicare il lavoro degli altri team o di quelli precedenti all'interno dell'organizzazione.
Consumer di API: possono essere utenti di API interni o esterni che:
- Usano le API private nei flussi di lavoro e nei servizi aziendali interni (consumer interni)
- Usano gli endpoint API con restrizioni per l'integrazione in partnership aziendali strategiche (consumer partner)
- Utilizzano le API disponibili pubblicamente per creare sistemi esterni che usano i servizi forniti dall'organizzazione (consumer di terze parti)
I consumer di API devono assicurarsi di individuare rapidamente le API più adatte per i carichi di lavoro al fine di evitare di sprecare risorse di sviluppo preziose e impegno su duplicazioni. A tale scopo, è importante che ricevano documentazione di qualità di facile da usare per convalidare le API che risolvono le loro esigenze e che possano integrarsi facilmente nelle applicazioni.
Team della piattaforma API: i tecnici della piattaforma API si occupano della creazione e della gestione di architetture API scalabili, sicure e ad alte prestazioni per l'organizzazione. Alcune loro attività possono includere:
- Progettazione e sviluppo dell'architettura API
- Stabilire e applicare le procedure consigliate per le API e gli standard di progettazione nell'organizzazione
- Applicare il monitoraggio, l'analisi e la creazione di report per generare informazioni dettagliate interattive
- Implementare e gestire la sicurezza API tramite autenticazione, autorizzazione e protocolli di crittografia
- Facilitare la collaborazione e il feedback tra i responsabili dei prodotti, i produttori di API e i consumer per allinearsi alle strategie API
- Assistenza per l'integrazione e la risoluzione dei problemi delle API sia internamente che esternamente
I tecnici della piattaforma API di Contoso collaborano per implementare una strategia facile da adottare che impedirà all'organizzazione di riscontrare un aumento delle API.
Funzionamento del Centro API
I tecnici della piattaforma API in un'organizzazione necessitano di un modo rapido e semplice per configurare un repository centralizzato di tutte le API (sia interne che esterne) insieme a qualsiasi altro metadati, ad esempio versioni api, definizioni e altro ancora. Il Centro API consente di creare un catalogo di API ospitate e gestite in diverse soluzioni di gestione API, e gestirle nei diversi cicli di vita di progettazione, sviluppo, test e produzione.
Funzionalità del Centro API di Azure
Inventario API
Alla base del Centro API vi è la creazione di un inventario completo e aggiornato di tutte le API create e usate in tutta l'organizzazione. Questo inventario è fondamentale per abilitare la governance, l'individuazione e l'utilizzo delle API su larga scala.
Grazie al Centro API è possibile aggiungere API all'inventario indipendentemente da:
- Tecnologia e linguaggio dell’API: ASP.NET Core Web API, Express, FastAPI, API serverless e così via.
- Tipo di API: REST, GraphQL, SOAP, gRPC, WebSocket, WebHook e così via.
- Ambiente di runtime: Cluster Kubernetes, App Web, Gestione API, Gestione API Apigee, Funzioni di Azure e così via.
Governance delle API
A questo punto, con un inventario API completo, è necessario esaminare in che modo è possibile garantire che queste API siano coerenti, standardizzate, utilizzabili e sicure. La governance delle API è definita come la pratica per definire e applicare standard, criteri e processi su larga scala in tutte le API aziendali.
Questa funzionalità nel Centro API semplifica il rilevamento delle API usando metadati quali versioni, proprietari, ciclo di vita e rilevamento di processi come le revisioni di conformità, il rilevamento di modifiche che causano interruzione e così via.
Il Centro API offre inoltre strumenti per la governance della progettazione delle API che supportano il linting, implementato mediante il linter Spectral JSON/YAML, che garantisce la conformità delle API registrate alle regole di stile dell'organizzazione e offre una funzionalità di analisi per le API. L’abilitazione di tale funzionalità per l'organizzazione consente di rilevare in anticipo errori e incoerenze, generando un report di conformità che può essere visualizzato nel Centro API.
Le attività della piattaforma API sono più efficaci quando hanno il consenso degli sviluppatori. L'estensione Centro API per Visual Studio Code offre funzionalità di governance delle API a sinistra per il rilevamento delle modifiche che causano un’interruzione e la governance della progettazione delle API per garantire che le API siano da subito create nel modo giusto.
Individuazione e consumo di API
Il Centro API semplifica l'intero ciclo di vita di sviluppo delle API, migliorando l'esperienza degli sviluppatori grazie all'integrazione con gli strumenti di sviluppo più diffusi, ad esempio Visual Studio Code. L'estensione del Centro API offre ai consumer API un'esperienza per individuare, provare e utilizzare le API direttamente all'interno di Visual Studio Code, nel contesto in cui sono già funzionanti. Un'altra funzionalità del Centro API è un portale tradizionale basato sul Web, progettato per consentire ai consumer di API di esplorare facilmente la documentazione e individuare, accedere e utilizzare le API dal catalogo API.
Nell'unità successiva si vedrà come creare e gestire l'inventario API con il Centro API tramite il portale di Azure, in locale usando l'interfaccia della riga di comando di Azure o in VS Code usando l'estensione Centro API.