Dela via


Synkronisera API:er från Amazon API Gateway till Azure API Center (förhandsversion)

Den här artikeln visar hur du integrerar en Amazon API Gateway så att gatewayens API:er kontinuerligt hålls uppdaterade i API Center-inventeringen .

Om integrering av Amazon API Gateway

Genom att integrera Amazon API Gateway som en API-källa för ditt API Center kan du synkronisera kontinuerligt så att API-inventeringen håller sig uppdaterad. Azure API Center kan också synkronisera API:er från källor, inklusive Azure API Management.

När du integrerar en Amazon API Gateway som en API-källa händer följande:

  1. API:er och eventuellt API-definitioner (specifikationer) från API Gateway läggs till i API Center-inventeringen.
  2. Du konfigurerar en miljö av typen Amazon API Gateway i API Center.
  3. En associerad distribution skapas för varje synkroniserad API-definition.

Synkronisering är enkelriktat från Amazon API Gateway till ditt Azure API Center, vilket innebär att API-uppdateringar i API Center inte synkroniseras tillbaka till Amazon API Gateway.

Kommentar

  • Integreringen av Amazon API Gateway är för närvarande i förhandsversion.
  • Det finns gränser för antalet integrerade API-källor.
  • API:er i Amazon API Gateway synkroniseras till ditt API Center en gång i timmen. Endast REST-API:er synkroniseras.
  • API-definitioner synkroniseras också till API-centret om du väljer alternativet att inkludera dem under integreringen. Endast definitioner från distribuerade API:er synkroniseras.

Entiteter som synkroniserats från Amazon API Gateway

Du kan lägga till eller uppdatera metadataegenskaper och dokumentation till de synkroniserade API:erna i API-centret för att hjälpa intressenter att identifiera, förstå och använda API:erna. Läs mer om inbyggda och anpassade metadataegenskaper i Azure API Center.

I följande tabell visas entitetsegenskaper som kan ändras i Azure API Center och egenskaper som anges baserat på deras värden i API-källan.

Enhet Egenskaper som kan konfigureras i API Center Egenskaper som bestäms i integrerad API-källa
API Sammanfattning
livscykelStage
termsOfService
licens
externalDocumentation
customProperties
rubrik
description
typ
API-version livscykelStage rubrik
definitioner (om de synkroniseras)
Environment rubrik
description
kind
server.managementPortalUri
registrering
customProperties
server.type
Distribution rubrik
description
server
tillstånd
customProperties
server.runtimeUri

Kommentar

Resurs- och system-ID:n för entiteter som synkroniseras med Azure API Center genereras automatiskt och kan inte ändras.

Förutsättningar

  • Ett API-center i din Azure-prenumeration. Om du inte har skapat något läser du Snabbstart: Skapa ditt API-center.

  • Ett Azure-nyckelvalv. Om du behöver skapa ett kan du läsa Snabbstart: Skapa ett nyckelvalv med hjälp av Azure Portal. Om du vill lägga till eller hantera hemligheter i nyckelvalvet krävs minst rollen Key Vault Secrets Officer eller motsvarande behörigheter.

  • En Amazon API Gateway.

  • En AWS IAM-användaridentitet med den AmazonAPIGatewayAdministrator kopplade principen.

  • För Azure CLI:

    Kommentar

    az apic kommandon kräver Azure CLI-tillägget apic-extension . Om du inte har använt az apic kommandon kan tillägget installeras dynamiskt när du kör ditt första az apic kommando, eller så kan du installera tillägget manuellt. Läs mer om Azure CLI-tillägg.

    Se viktig information för de senaste ändringarna och uppdateringarna apic-extensioni . Vissa funktioner kan kräva en förhandsversion eller en specifik version av tillägget.

    Kommentar

    Azure CLI-kommandoexempel i den här artikeln kan köras i PowerShell eller ett bash-gränssnitt. Vid behov på grund av olika variabelsyntax tillhandahålls separata kommandoexempel för de två gränssnitten.

Skapa IAM-användaråtkomstnycklar

För att autentisera ditt API Center till Amazon API Gateway behöver du åtkomstnycklar för en AWS IAM-användare.

Information om hur du genererar det nödvändiga åtkomstnyckel-ID:t och den hemliga nyckeln med hjälp av AWS-hanteringskonsolen finns i Skapa en åtkomstnyckel för dig själv i AWS-dokumentationen.

Spara dina åtkomstnycklar på en säker plats. Du lagrar dem i Azure Key Vault i nästa steg.

Varning

Åtkomstnycklar är långsiktiga autentiseringsuppgifter och du bör hantera dem lika säkert som ett lösenord. Läs mer om att skydda åtkomstnycklar

Lagra IAM-användaråtkomstnycklar i Azure Key Vault

Ladda upp och lagra de två IAM-användaråtkomstnycklarna manuellt i Azure Key Vault med den konfiguration som rekommenderas i följande tabell. Mer information finns i Snabbstart: Ange och hämta en hemlighet från Azure Key Vault med hjälp av Azure Portal.

AWS-hemlighet Uppladdningsalternativ Name Hemligt värde
Åtkomstnyckel Manuell aws-access-key Åtkomstnyckel-ID som hämtats från AWS
Hemlig åtkomstnyckel Manuell aws-secret-access-key Hemlig åtkomstnyckel som hämtats från AWS

Skärmbild av listan över hemligheter i Azure Key Vault i portalen.

Anteckna hemlighetsidentifieraren för varje hemlighet, en URI som liknar https://<key-vault-name>.vault.azure.net/secrets/<secret-name>. Du använder dessa identifierare i nästa steg.

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. Gå till API-centret i portalen.
  2. I den vänstra menyn 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 API:er tilldelar du api-centrets hanterade identitet rollen Key Vault Secrets User i ditt Azure-nyckelvalv. Du kan använda portalen eller Azure CLI.

  1. I portalen navigerar du till ditt nyckelvalv.
  2. Välj Åtkomstkontroll (IAM) i den vänstra menyn.
  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.

Integrera en Amazon API Gateway

Kör kommandot az apic integration create aws (förhandsversion) för att integrera en Amazon API Gateway till ditt API Center.

  • Ange namnen på resursgruppen, API-centret och integreringen.

  • Ange key vault-hemliga identifierare för AWS-åtkomstnyckeln och den hemliga åtkomstnyckeln och AWS-regionen där Amazon API Gateway distribueras.

az apic integration create aws \
    --resource-group <resource-group-name> \
    --service-name-name <api-center-name> \
    --integration-name <aws-integration-name> \
    --aws-access-key-reference <access-key-uri> \
    --aws-secret-access-key-reference <secret-access-key-uri> 
    --aws-region-name <aws-region>

Miljön läggs till i api-centret. Api:erna för Amazon API Gateway importeras till API Center-inventeringen.

Ta bort en integrering

När en API-källa är integrerad kan du inte ta bort synkroniserade API:er från API-centret. Om du behöver kan du ta bort integreringen. När du tar bort en integrering:

  • De synkroniserade API:erna i API Center-inventeringen tas bort
  • Miljön och distributionerna som är associerade med API-källan tas bort

Om du vill ta bort en integrering med Azure CLI kör du kommandot az apic integration delete (förhandsversion). Ange namnen på resursgruppen, API-centret och integreringen.

az apic integration delete \
    --resource-group <resource-group-name> \
    --service-name <api-center-name> \
    --integration-name <integration-name>