Auktorisera åtkomst till API:er i DITT API Center

Konfigurera inställningar för att auktorisera åtkomst till API:er i api-centret. Följande inställningar:

  • Aktivera API-autentisering och auktorisation genom att använda API-nycklar, OAuth 2.0-auktorisation eller en annan HTTP-säkerhetsmetod
  • Associera autentiseringskonfigurationer med API-versioner i ditt lager
  • Hantera åtkomst till API-versioner för utsedda användare eller grupper via åtkomstprinciper
  • Gör det möjligt för behöriga användare att testa API:er i API Center-portalen

Förutsättningar

Alternativ 1: Konfigurera API-nyckelautentisering

Utför följande steg för ett API som stöder API-nyckelautentisering.

1. Lagra API-nyckeln i Azure Key Vault

Information om hur du lagrar API-nyckeln som en hemlighet i nyckelvalvet finns i Ange och hämta hemlighet i Key Vault.

Få tillgång till nyckelvalvet genom att använda ditt API-centers hanterade identitet.

Aktivera en hanterad identitet i api-centret

I det här scenariot använder API Center en hanterad identitet för att komma åt Azure-resurser. Beroende på dina behov aktiverar du antingen en systemtilldelad eller en eller flera användartilldelade hanterade identiteter.

I följande exempel visas hur du aktiverar en systemtilldelad hanterad identitet med hjälp av Azure Portal eller Azure CLI. På hög nivå liknar konfigurationsstegen en användartilldelad hanterad identitet.

  1. I portalen går du till api-centret.
  2. På sidomenyn under Säkerhet väljer du Hanterade identiteter.
  3. Välj Systemtilldelat och ange status till .
  4. Välj Spara.

Tilldela den hanterade identiteten rollen Key Vault Secrets User

Om du vill tillåta import av tillgångarna tilldelar du api-centrets hanterade identitet rollen Key Vault Secrets User i ditt Azure-nyckelvalv. Du kan använda portalen eller Azure CLI.

  1. Gå till ditt nyckelvalv i portalen.
  2. Välj Åtkomstkontroll (IAM) på sidomenyn.
  3. Välj + Lägg till rolltilldelning.
  4. På sidan Lägg till rolltilldelning anger du följande värden:
    1. På fliken Roll väljer du Nyckelvalvshemlighetsanvändare.
    2. På fliken Medlemmar går du till Tilldela åtkomst till – Välj Hanterad identitet>+ Välj medlemmar.
    3. På sidan Välj hanterade identiteter väljer du den systemtilldelade hanterade identiteten för ditt API Center som du lade till i föregående avsnitt. Klicka på Välj.
    4. Välj Granska + tilldela.

2. Lägg till API-nyckelkonfiguration

Caution

Extra försiktighet krävs när du använder ett flöde för klientautentiseringsuppgifter med testkonsolen för utvecklarportalen. Se säkerhetsöverväganden. När man använder API-nycklar och OAuth 2.0-hemligheter kan alla användare med tillgång till utvecklarportalen använda API:er. OAuth 2.0 auktoriseringskod med PKCE rekommenderas för att förhindra att hemligheter exponeras.

  1. I portalen går du till api-centret.

  2. Under Styrning väljer du Auktorisering>+ Lägg till konfiguration.

  3. Vid Add-konfigurationen, sätt följande värden: Skärmdump av att konfigurera en API-nyckel i portalen.

    Inställning Beskrivning
    Titel Ange ett namn för auktoriseringen.
    Beskrivning Du kan också ange en beskrivning för auktoriseringen.
    Säkerhetsschema Välj API-nyckel.
    API-nyckelplats Välj hur nyckeln visas i API-begäranden. Tillgängliga värden är Rubrik (begärandehuvud) och Fråga (frågeparameter).
    API-nyckelparameternamn Ange namnet på HTTP-huvudet eller frågeparametern som innehåller API-nyckeln. Exempel: x-api-key
    Hemlig referens för API-nyckelnyckelvalv Välj Välj och välj den prenumeration, det nyckelvalv och den hemlighet som du har lagrat. Exempel: https://<key-vault-name>.vault.azure.net/secrets/<secret-name>
  4. Välj Skapa.

När du har slutfört denna konfiguration, gå till avsnittet Lägg till autentiseringskonfiguration i en API-version för att associera API-nyckelkonfigurationen med en API-version.

Alternativ 2: Konfigurera OAuth 2.0-auktorisering

Utför följande steg för ett API som stöder OAuth 2.0-auktorisering. Du kan konfigurera ett eller båda av följande flöden:

  • Auktoriseringskodflöde med PKCE (Proof Key for Code Exchange) – Autentisera användare i webbläsaren, till exempel i API Center-portalen.
  • Flöde för klientautentiseringsuppgifter – För program som inte kräver en specifik användares behörigheter.

Important

Du kan inte använda API-nycklar och OAuth 2.0-hemligheter om du aktiverar anonym åtkomst för kundportalen. Om du konfigurerar anonym åtkomst för kundportalen ignoreras inställningen och testkonsolens auktorisering misslyckas.

Caution

Extra försiktighet krävs när du använder ett flöde för klientautentiseringsuppgifter med testkonsolen för utvecklarportalen. Se säkerhetsöverväganden. När man använder API-nycklar och OAuth 2.0-hemligheter kan alla användare med tillgång till utvecklarportalen använda API:er. OAuth 2.0 auktoriseringskod med PKCE rekommenderas för att förhindra att hemligheter exponeras.

1. Skapa en OAuth 2.0-app

Skapa en appregistrering i en identitetstjänstleverantör, till exempel Microsoft Entra-klienten som är associerad med din prenumeration. Stegen beror på vilken identitetsleverantör du använder.

I följande exempel visas hur du skapar en appregistrering i Microsoft Entra-ID.

  1. Logga in i Azure-portalen med nödvändig behörighet i tenant.
  2. Gå till Microsoft Entra ID>+ Ny registrering.
  3. På sidan Registrera ett program :
    1. I Namn anger du ett beskrivande namn.
    2. I Stödda kontotyper, välj ett lämpligt alternativ, såsom Konton endast i denna organisationskatalog (Enkel hyresgäst).
    3. För auktorisationskodflöde, välj i Redirect URI, välj Single-page application (SPA) och ange URI:n för din API-centerportal: https://<service-name>.portal.<location>.azure-api-center.ms. Ersätt <service-name> och <location> med namnet på API-centret och distributionsplatsen. Exempel: https://myapicenter.portal.eastus.azure-api-center.ms
    4. Välj Registrera.
  4. Under Hantera väljer du Certifikat och hemligheter>+ Ny klienthemlighet.
    1. Ange en beskrivning.
    2. Välj ett alternativ för Upphör att gälla.
    3. Välj Lägg till.
    4. Kopiera värdet för klienthemligheten innan du lämnar sidan. Du behöver det i nästa avsnitt.
  5. Du kan också lägga till API-omfång i din appregistrering. Se Konfigurera ett program för att exponera ett webb-API.

När du konfigurerar OAuth 2.0 i api-centret behöver du följande värden från appregistreringen:

  • Program-ID (klient) från sidan Översikt och den klienthemlighet som du kopierade.
  • Följande slutpunkts-URL:er från Översikt>Slutpunkter:
    • OAuth2.0-auktoriseringsslutpunkt (v2)
    • OAuth 2.0-tokenslutpunkt (v2) ( används även som slutpunkt för tokenuppdatering)
  • Alla API-omfång som du har konfigurerat.

2. Lagra klienthemlighet i Azure Key Vault

Information om hur du lagrar klienthemligheten i nyckelvalvet finns i Ange och hämta hemlighet i Key Vault.

Få tillgång till nyckelvalvet genom att använda ditt API-centers hanterade identitet.

Aktivera en hanterad identitet i api-centret

I det här scenariot använder API Center en hanterad identitet för att komma åt Azure-resurser. Beroende på dina behov aktiverar du antingen en systemtilldelad eller en eller flera användartilldelade hanterade identiteter.

I följande exempel visas hur du aktiverar en systemtilldelad hanterad identitet med hjälp av Azure Portal eller Azure CLI. På hög nivå liknar konfigurationsstegen en användartilldelad hanterad identitet.

  1. I portalen går du till api-centret.
  2. På sidomenyn under Säkerhet väljer du Hanterade identiteter.
  3. Välj Systemtilldelat och ange status till .
  4. Välj Spara.

Tilldela den hanterade identiteten rollen Key Vault Secrets User

Om du vill tillåta import av tillgångarna tilldelar du api-centrets hanterade identitet rollen Key Vault Secrets User i ditt Azure-nyckelvalv. Du kan använda portalen eller Azure CLI.

  1. Gå till ditt nyckelvalv i portalen.
  2. Välj Åtkomstkontroll (IAM) på sidomenyn.
  3. Välj + Lägg till rolltilldelning.
  4. På sidan Lägg till rolltilldelning anger du följande värden:
    1. På fliken Roll väljer du Nyckelvalvshemlighetsanvändare.
    2. På fliken Medlemmar går du till Tilldela åtkomst till – Välj Hanterad identitet>+ Välj medlemmar.
    3. På sidan Välj hanterade identiteter väljer du den systemtilldelade hanterade identiteten för ditt API Center som du lade till i föregående avsnitt. Klicka på Välj.
    4. Välj Granska + tilldela.

3. Lägg till OAuth 2.0-konfiguration

  1. I portalen går du till api-centret.

  2. Under Styrning väljer du Auktorisering>+ Lägg till konfiguration.

  3. Vid Add-konfigurationen, sätt följande värden:

    Skärmbild av konfiguration av OAuth 2.0 i portalen.

    Anmärkning

    Använd värden från appregistreringen som du skapade tidigare. För Microsoft Entra ID hittar du klient-ID på sidan Översikt för appregistrering och URL-slutpunkter på sidorna Översikt>Slutpunkter.

    Inställning Beskrivning
    Titel Ange ett namn för auktoriseringen.
    Beskrivning Du kan också ange en beskrivning för auktoriseringen.
    Säkerhetsschema Välj OAuth2.
    Kund-ID Ange klient-ID (GUID) för den app som du skapade i din identitetsprovider.
    Klienthemlighet Välj den prenumeration, nyckelvalv och klienthemlighet som du har lagrat.

    Exempel: https://<key-vault-name>.vault.azure.net/secrets/<secret-name>
    Auktoriserings-URL Ange OAuth 2.0-auktoriseringsslutpunkten för identitetsprovidern.

    Exempel för Microsoft Entra-ID: https://login.microsoftonline.com/<tenant>/oauth2/v2.0/authorize
    Token-URL Ange OAuth 2.0-tokenslutpunkten för identitetsprovidern.

    Exempel för Microsoft Entra-ID: https://login.microsoftonline.com/<tenant>/oauth2/v2.0/token
    Uppdatera URL Ange slutpunkten för OAuth 2.0-tokenuppdatering för identitetsprovidern. För de flesta leverantörer, samma som token-URL:en

    Exempel för Microsoft Entra-ID: https://login.microsoftonline.com/<tenant>/oauth2/v2.0/token
    OAuth2-flöde Välj en eller båda OAuth 2.0-flöden: Auktoriseringskod (PKCE) och Klientautentiseringsuppgifter.
    Scoper Ange ett eller flera API-omfång som konfigurerats för ditt API, avgränsat med blanksteg. Om inga omfång har konfigurerats anger du .default.
  4. Spara konfigurationen genom att välja Skapa .

När du har slutfört den här konfigurationen går du till avsnittet Lägg till autentiseringskonfiguration i en API-version för att associera OAuth 2.0-konfigurationen med en API-version.

Alternativ 3: Konfigurera inställningar för ett annat HTTP-säkerhetsschema

Slutför följande steg för API:er som använder ett annat HTTP-säkerhetsschema, till exempel Grundläggande autentisering eller ägartoken som inte använder OAuth 2.0. Du kan behöva välja det här alternativet för äldre API:er.

I portalen går du till api-centret.

  1. Under Styrning väljer du Auktorisering>+ Lägg till konfiguration.

  2. Vid Add-konfigurationen, sätt följande värden:

    Inställning Beskrivning
    Titel Ange ett namn för auktoriseringen.
    Beskrivning Du kan också ange en beskrivning för auktoriseringen.
    Säkerhetsschema Välj HTTP.
    autentiseringsschema Välj det autentiseringsschema som används av API:et. Exempel är scheman i följande tabell.
    Autentiseringsschema Beskrivning
    Grundläggande Skickar username:password som en Base64-kodad sträng i Authorization: Basic <credentials> rubriken.
    Bearer Skickar en annan token än en OAuth 2.0-åtkomsttoken i Authorization: Bearer <token> rubriken.
    Sammanfattning En mekanism för utmaningssvar där servern skickar en nonce; klienten svarar med en hash med autentiseringsuppgifter + nonce.
    Skräddarsydd Ett annat mekanismschema, till exempel ett leverantörsspecifikt system.

När du har slutfört den här konfigurationen går du till nästa avsnitt för att associera konfigurationen med en API-version.

Lägga till autentiseringskonfiguration i en API-version

När du har konfigurerat ett autentiseringsschema associerar du konfigurationen med en API-version.

  1. I portalen går du till api-centret.

  2. Under Lager väljer du Tillgångar.

  3. Välj det API som konfigurationen ska associeras med.

  4. Under Detaljer, välj Versioner och välj sedan målversionen av API:et.

  5. I snabbmenyn för API-versionen väljer du Hantera åtkomst. Skärmbild av hur du associerar en autentiseringskonfiguration med en API-version i portalen.

  6. Hantera åtkomst, välj + Lägg till autentisering.

  7. Välj en tillgänglig autentiseringskonfiguration.

  8. Välj Skapa.

Anmärkning

Du kan lägga till flera autentiseringskonfigurationer i en API-version (till exempel både API-nyckel och OAuth 2.0), om API:et stöder det. Du kan också lägga till samma konfiguration i flera API-versioner.

Hantera åtkomst för specifika användare eller grupper

Konfigurera en åtkomstprincip som tilldelar användare eller grupper rollen ÅTKOMSTläsare för API Center-autentiseringsuppgifter , begränsad till specifika autentiseringskonfigurationer i en API-version. Denna roll ger utvalda användare möjlighet att testa ett API i API-centerportalen.

  1. I portalen går du till api-centret.

  2. Gå till en API-version med en autentiseringskonfiguration.

  3. Välj Hantera åtkomst.

  4. Välj en autentiseringskonfiguration som du vill hantera.

  5. I den nedrullningsbara menyn väljer du Redigera åtkomstprinciper. Skärmbild av att lägga till en åtkomstprincip i portalen.

  6. På sidan Hantera åtkomst väljer du + Lägg till > användare eller + Lägg till > grupper.

  7. Sök efter och välj användare eller grupper. Du kan välja flera objekt.

  8. Välj Välj.

Tips/Råd

Om du vill ta bort användare eller grupper väljer du Ta bort på snabbmenyn på sidan Hantera åtkomst .

Testa API:et i API Center-portalen

Testa ett API som du har konfigurerat för autentisering och användaråtkomst.

Tips/Råd

Du kan också konfigurera synlighetsinställningar för att styra vilka API:er som visas för alla inloggade användare i portalen.

  1. I portalen går du till api-centret.

  2. Under API Center-portalen väljer du Portalinställningar>Visa API Center-portalen.

  3. Välj ett API och välj sedan en version med en konfigurerad autentiseringsmetod.

  4. Under Alternativ väljer du Visa dokumentation. Skärmbild av API-information i API Center-portalen.

  5. Välj en åtgärd och välj sedan Prova det här API:et.

  6. Granska autentiseringsinställningarna. Om du har åtkomst väljer du Skicka. Skärmbild av testning av ett API i API Center-portalens testkonsol.

  7. En lyckad åtgärd returnerar en 200 OK svarskod och svarstext. En misslyckad åtgärd returnerar ett felmeddelande.