Ospitare in modalità self-host il portale di Centro API
Questo articolo presenta il portale del Centro API, un sito Web che gli sviluppatori e altri stakeholder dell'organizzazione possono usare per individuare le API nel centro API. Distribuire un'implementazione di riferimento del portale dal repository iniziale del portale di Centro API.
Informazioni sul portale di Centro API
Il portale di Centro API è un sito Web che è possibile compilare e ospitare per visualizzare l'inventario API nel centro API. Il portale consente agli sviluppatori e ad altri stakeholder dell'organizzazione di individuare le API e visualizzare i dettagli dell'API.
È possibile compilare e distribuire un'implementazione di riferimento del portale usando il codice nel repository iniziale del portale di Centro API. Il portale usa l'API del piano dati di Centro API di Azure per recuperare i dati dal centro API. L'accesso utente alle informazioni sulle API si basa sul controllo degli accessi in base al ruolo di Azure.
L'implementazione di riferimento del portale di Centro API fornisce:
- Framework per la pubblicazione e la gestione di un portale API gestito dal cliente tramite GitHub Actions
- Piattaforma del portale che i clienti possono modificare o estendere per soddisfare le proprie esigenze
- Flessibilità per ospitare infrastrutture diverse, tra cui la distribuzione a servizi come App Web statiche di Azure.
Prerequisiti
Un centro API nella sottoscrizione di Azure. Se non ne è già stato creato uno, vedere Avvio rapido: Creare il centro API.
Autorizzazioni per creare una registrazione dell'app in un tenant di Microsoft Entra associato alla sottoscrizione di Azure e autorizzazioni per concedere l'accesso ai dati nel centro API.
Per compilare e distribuire il portale, è necessario un account GitHub e gli strumenti seguenti installati nel computer locale:
Creare la registrazione dell'app Microsoft Entra
Configurare prima di tutto una registrazione dell'app nel tenant di Microsoft Entra ID. La registrazione dell'app consente al portale di Centro API di accedere ai dati dal centro API per conto di un utente connesso.
Nel portale di Azure passare a Microsoft Entra ID> Registrazioni app.
Seleziona + Nuova registrazione.
Nella pagina Registra un'applicazione impostare i valori come segue:
Impostare Nome su un nome significativo, ad esempio api-center-portal
In Tipi di account supportati selezionare Account in questa directory organizzativa (tenant singolo).
In URI di reindirizzamento selezionare Applicazione a pagina singola (SPA) e impostare l'URI.
- Per i test locali, impostare l'URI su
https://localhost:5173
. - Per la produzione, impostare l'URI sull'URI della distribuzione del portale di Centro API.
- Per i test locali, impostare l'URI su
Selezionare Registra.
Nella pagina Panoramica copiare l'ID applicazione (client) e l'ID directory (tenant). Questi valori vengono impostati quando si compila il portale.
Nella pagina Autorizzazioni API selezionare + Aggiungi un'autorizzazione.
- Nella pagina Richiedi autorizzazioni API selezionare la scheda API usate dall'organizzazione. Cercare e selezionare Centro API di Azure. È anche possibile cercare e selezionare l'ID
c3ca1a77-7a87-4dba-b8f8-eea115ae4573
applicazione . - Nella pagina Richiedi autorizzazioni selezionare user_impersonation.
- Selezionare Aggiungi autorizzazioni.
Le autorizzazioni del Centro API di Azure vengono visualizzate in Autorizzazioni configurate.
- Nella pagina Richiedi autorizzazioni API selezionare la scheda API usate dall'organizzazione. Cercare e selezionare Centro API di Azure. È anche possibile cercare e selezionare l'ID
Configurare l'ambiente locale
Seguire questa procedura per compilare e testare il portale del Centro API in locale.
Clonare il repository iniziale del portale di Centro API nel computer locale.
git clone https://github.com/Azure/APICenter-Portal-Starter.git
Passare alla
APICenter-Portal-Starter
directory.cd APICenter-Portal-Starter
Eseguire il checkout del ramo main.
git checkout main
Per configurare il servizio, copiare o rinominare il
public/config.example
file inpublic/config.json
.Modificare quindi il
public/config.json
file in modo che punti al servizio. Aggiornare i valori nel file come indicato di seguito:- Sostituire
<service name>
e<region>
con il nome del centro API e l'area in cui è distribuita - Sostituire
<client ID>
e<tenant ID>
con l'ID applicazione (client) e l'ID directory (tenant) della registrazione dell'app creata nella sezione precedente. - Aggiornare il valore di
title
in un nome che si desidera visualizzare nel portale.
{ "dataApiHostName": "<service name>.data.<region>.azure-apicenter.ms/workspaces/default", "title": "API portal", "authentication": { "clientId": "<client ID>", "tenantId": "<tenant ID>", "scopes": ["https://azure-apicenter.net/user_impersonation"], "authority": "https://login.microsoftonline.com/" } }
- Sostituire
Installare i pacchetti necessari.
npm install
Avviare il server di sviluppo. Il comando seguente avvierà il portale in modalità di sviluppo in esecuzione in locale:
npm start
Passare al portale all'indirizzo
https://localhost:5173
.
Distribuzione in Azure
Per la procedura per distribuire il portale in App Web statiche di Azure, vedere il repository iniziale del portale del Centro API.
Abilitare l'accesso al portale da parte di utenti e gruppi di Microsoft Entra
Gli utenti devono accedere per visualizzare le API nel centro API. Per abilitare l'accesso, assegnare il ruolo lettore dati di Centro API di Azure a utenti o gruppi nell'organizzazione, con ambito al centro API.
Importante
Per impostazione predefinita, l'utente e altri amministratori del Centro API non hanno accesso alle API nel portale di Centro API. Assicurarsi di assegnare il ruolo lettore dati di Centro API di Azure a se stessi e ad altri amministratori.
Per i prerequisiti e i passaggi dettagliati per assegnare un ruolo a utenti e gruppi, vedere Assegnare ruoli di Azure usando il portale di Azure. Per brevi passaggi, seguire questa procedura:
- Nella portale di Azure passare al centro API.
- Nel menu a sinistra selezionare Controllo di accesso (IAM)>+ Aggiungi assegnazione di ruolo.
- Nel riquadro Aggiungi assegnazione di ruolo impostare i valori come segue:
- Nella pagina Ruolo cercare e selezionare Lettore dati del Centro API di Azure. Selezionare Avanti.
- Nella pagina Membri, in Assegna accesso a, selezionare Utente, gruppo o entità> servizio+ Seleziona membri.
- Nella pagina Seleziona membri cercare e selezionare gli utenti o i gruppi a cui assegnare il ruolo. Fare clic su Seleziona e quindi su Avanti.
- Esaminare l'assegnazione di ruolo e selezionare Rivedi e assegna.
Nota
Per semplificare la configurazione di accesso per i nuovi utenti, è consigliabile assegnare il ruolo a un gruppo Microsoft Entra e configurare una regola di appartenenza dinamica ai gruppi. Per altre informazioni, vedere Creare o aggiornare un gruppo dinamico in Microsoft Entra ID.
Dopo aver configurato l'accesso al portale, gli utenti configurati possono accedere al portale e visualizzare le API nel centro API.
Nota
Al primo utente di accedere al portale viene richiesto di fornire il consenso alle autorizzazioni richieste dalla registrazione dell'app del portale del Centro API. Successivamente, agli altri utenti configurati non viene richiesto di fornire il consenso.
Risoluzione dei problemi
Errore: "Non si è autorizzati ad accedere a questo portale"
In determinate condizioni, un utente potrebbe riscontrare il messaggio di errore seguente dopo l'accesso al portale di Centro API con un account utente configurato:
You are not authorized to access this portal. Please contact your portal administrator for assistance.
`
Prima di tutto, verificare che all'utente sia assegnato il ruolo Lettore dati di Centro API di Azure nel centro API.
Se all'utente viene assegnato il ruolo, potrebbe verificarsi un problema con la registrazione del provider di risorse Microsoft.ApiCenter nella sottoscrizione e potrebbe essere necessario registrare nuovamente il provider di risorse. A tale scopo, eseguire il comando seguente nell'interfaccia della riga di comando di Azure:
az provider register --namespace Microsoft.ApiCenter
Impossibile accedere al portale
Se gli utenti a cui è stato assegnato il ruolo lettore dati di Centro API di Azure non possono completare il flusso di accesso dopo aver selezionato Accedi nel portale di Centro API, potrebbe verificarsi un problema con la configurazione del provider di identità Microsoft Entra ID.
Nella registrazione dell'app Microsoft Entra rivedere e, se necessario, aggiornare le impostazioni URI di reindirizzamento per assicurarsi che l'URI corrisponda all'URI della distribuzione del portale del Centro API.
Impossibile selezionare le autorizzazioni del Centro API di Azure nella registrazione dell'app Microsoft Entra
Se non è possibile richiedere le autorizzazioni API al Centro API di Azure nella registrazione dell'app Microsoft Entra per il portale del Centro API, verificare di cercare Centro API di Azure (o ID c3ca1a77-7a87-4dba-b8f8-eea115ae4573
applicazione).
Se l'app non è presente, potrebbe verificarsi un problema con la registrazione del provider di risorse Microsoft.ApiCenter nella sottoscrizione. Potrebbe essere necessario registrare nuovamente il provider di risorse. A tale scopo, eseguire il comando seguente nell'interfaccia della riga di comando di Azure:
az provider register --namespace Microsoft.ApiCenter
Dopo aver riregistrato il provider di risorse, riprovare a richiedere le autorizzazioni API.
Criteri di supporto
Fornire commenti e suggerimenti, richiedere funzionalità e ottenere supporto per l'implementazione di riferimento del portale di Centro API nel repository di avvio del portale di Centro API.