Egen värd för API Center-portalen
Den här artikeln introducerar API Center-portalen, en webbplats som utvecklare och andra intressenter i din organisation kan använda för att identifiera API:erna i ditt API Center. Distribuera en referensimplementering av portalen från START-lagringsplatsen för API Center-portalen.
Om API Center-portalen
API Center-portalen är en webbplats som du kan skapa och vara värd för för att visa API-inventeringen i api-centret. Portalen gör det möjligt för utvecklare och andra intressenter i din organisation att identifiera API:er och visa API-information.
Du kan skapa och distribuera en referensimplementering av portalen med hjälp av kod i API Center-portalens startlagringsplats . Portalen använder Api:et för Azure API Center-dataplan för att hämta data från ditt API Center. Användaråtkomst till API-information baseras på rollbaserad åtkomstkontroll i Azure.
Referensimplementeringen för API Center-portalen innehåller:
- Ett ramverk för att publicera och underhålla en kundhanterad API-portal med GitHub Actions
- En portalplattform som kunder kan ändra eller utöka för att uppfylla sina behov
- Flexibilitet att vara värd för olika infrastrukturer, inklusive distribution till tjänster som Azure Static Web Apps.
Förutsättningar
Ett API-center i din Azure-prenumeration. Om du inte redan har skapat ett kan du läsa Snabbstart: Skapa ditt API-center.
Behörigheter för att skapa en appregistrering i en Microsoft Entra-klientorganisation som är associerad med din Azure-prenumeration och behörigheter för att bevilja åtkomst till data i api-centret.
För att skapa och distribuera portalen behöver du ett GitHub-konto och följande verktyg installerade på den lokala datorn:
Skapa Microsoft Entra-appregistrering
Konfigurera först en appregistrering i din Microsoft Entra ID-klientorganisation. Appregistreringen gör det möjligt för API Center-portalen att komma åt data från ditt API Center för en inloggad användare.
I Azure-portalen går du till Microsoft Entra-ID> Appregistreringar.
Välj + Ny registrering.
På sidan Registrera ett program anger du följande värden:
Ange Namn till ett beskrivande namn, till exempel api-center-portal
Under Kontotyper som stöds väljer du Konton i den här organisationskatalogen (enskild klient).
I Omdirigerings-URI väljer du Enkelsidigt program (SPA) och anger URI:n.
- För lokal testning anger du URI:n till
https://localhost:5173
. - För produktion anger du URI:n till URI:n för din API Center-portaldistribution.
- För lokal testning anger du URI:n till
Välj Registrera.
På sidan Översikt kopierar du program-ID:t (klient-ID:t) och katalog-ID:t (klientorganisation). Du anger dessa värden när du skapar portalen.
På sidan API-behörigheter väljer du + Lägg till en behörighet.
- På sidan Api-behörigheter för begäran väljer du fliken API:er som min organisation använder . Sök efter och välj Azure API Center. Du kan också söka efter och välja program-ID
c3ca1a77-7a87-4dba-b8f8-eea115ae4573
. - På sidan Begär behörigheter väljer du user_impersonation.
- Välj Lägg till behörigheter.
Behörigheterna för Azure API Center visas under Konfigurerade behörigheter.
- På sidan Api-behörigheter för begäran väljer du fliken API:er som min organisation använder . Sök efter och välj Azure API Center. Du kan också söka efter och välja program-ID
Konfigurera lokal miljö
Följ de här stegen för att skapa och testa API Center-portalen lokalt.
Klona START-lagringsplatsen för API Center-portalen till den lokala datorn.
git clone https://github.com/Azure/APICenter-Portal-Starter.git
Ändra till
APICenter-Portal-Starter
katalogen.cd APICenter-Portal-Starter
Kolla in huvudgrenen.
git checkout main
Om du vill konfigurera tjänsten kopierar eller byter du namn på
public/config.example
filen tillpublic/config.json
.Redigera sedan filen så att den
public/config.json
pekar på din tjänst. Uppdatera värdena i filen enligt följande:- Ersätt
<service name>
och<region>
med namnet på ditt API-center och den region där det distribueras - Ersätt
<client ID>
och<tenant ID>
med program-ID och katalog-ID för appregistreringen som du skapade i föregående avsnitt. - Uppdatera värdet
title
för till ett namn som du vill ska visas i portalen.
{ "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/" } }
- Ersätt
Installera nödvändiga paket.
npm install
Starta utvecklingsservern. Följande kommando startar portalen i utvecklingsläge som körs lokalt:
npm start
Bläddra till portalen på
https://localhost:5173
.
Distribuera till Azure
Anvisningar för hur du distribuerar portalen till Azure Static Web Apps finns i startlagringsplatsen för API Center-portalen .
Aktivera inloggning till portalen av Microsoft Entra-användare och -grupper
Användarna måste logga in för att se API:erna i API-centret. Om du vill aktivera inloggning tilldelar du rollen Azure API Center Data Reader till användare eller grupper i din organisation, som är begränsad till DITT API Center.
Viktigt!
Som standard har du och andra administratörer i API Center inte åtkomst till API:er i API Center-portalen. Se till att tilldela rollen Azure API Center Data Reader till dig själv och andra administratörer.
Detaljerade krav och steg för att tilldela en roll till användare och grupper finns i Tilldela Azure-roller med hjälp av Azure-portalen. Korta steg följer:
- I Azure-portalen navigerar du till ditt API-center.
- I den vänstra menyn väljer du Åtkomstkontroll (IAM)>+ Lägg till rolltilldelning.
- I fönstret Lägg till rolltilldelning anger du följande värden:
- På sidan Roll söker du efter och väljer Azure API Center Data Reader. Välj Nästa.
- På sidan Medlemmar går du till Tilldela åtkomst till och väljer Användare, grupp eller tjänstens huvudnamn>+ Välj medlemmar.
- På sidan Välj medlemmar söker du efter och väljer de användare eller grupper som rollen ska tilldelas till. Klicka på Välj och sedan på Nästa.
- Granska rolltilldelningen och välj Granska + tilldela.
Kommentar
För att effektivisera åtkomstkonfigurationen för nya användare rekommenderar vi att du tilldelar rollen till en Microsoft Entra-grupp och konfigurerar en regel för dynamiskt gruppmedlemskap. Mer information finns i Skapa eller uppdatera en dynamisk grupp i Microsoft Entra-ID.
När du har konfigurerat åtkomst till portalen kan konfigurerade användare logga in på portalen och visa API:erna i API-centret.
Kommentar
Den första användaren som loggar in på portalen uppmanas att samtycka till de behörigheter som krävs för registrering av API Center-portalappen. Därefter uppmanas inte andra konfigurerade användare att samtycka.
Felsökning
Fel: "Du har inte behörighet att komma åt den här portalen"
Under vissa förhållanden kan en användare stöta på följande felmeddelande när han eller hon har loggat in på API Center-portalen med ett konfigurerat användarkonto:
You are not authorized to access this portal. Please contact your portal administrator for assistance.
`
Kontrollera först att användaren har tilldelats rollen Azure API Center Data Reader i ditt API Center.
Om användaren har tilldelats rollen kan det uppstå ett problem med registreringen av Resursprovidern Microsoft.ApiCenter i din prenumeration och du kan behöva registrera resursprovidern igen. Det gör du genom att köra följande kommando i Azure CLI:
az provider register --namespace Microsoft.ApiCenter
Det går inte att logga in på portalen
Om användare som har tilldelats rollen Azure API Center Data Reader inte kan slutföra inloggningsflödet när de har valt Logga in i API Center-portalen kan det uppstå problem med konfigurationen av Microsoft Entra ID-identitetsprovidern.
I Microsoft Entra-appregistreringen granskar och uppdaterar du omdirigerings-URI-inställningarna för att säkerställa att URI:n matchar URI:n för DISTRIBUTIONen av API Center-portalen.
Det går inte att välja Azure API Center-behörigheter i Microsoft Entra-appregistrering
Om du inte kan begära API-behörigheter till Azure API Center i din Microsoft Entra-appregistrering för API Center-portalen kontrollerar du att du söker efter Azure API Center (eller program-ID c3ca1a77-7a87-4dba-b8f8-eea115ae4573
).
Om appen inte finns kan det uppstå ett problem med registreringen av Microsoft.ApiCenter-resursprovidern i din prenumeration. Du kan behöva registrera resursprovidern igen. Det gör du genom att köra följande kommando i Azure CLI:
az provider register --namespace Microsoft.ApiCenter
När du har registrerat resursprovidern igen kan du försöka begära API-behörigheter igen.
Stödprincip
Ge feedback, begär funktioner och få stöd för API Center-portalens referensimplementering i API Center-portalens startlagringsplats .