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:
- API:er och eventuellt API-definitioner (specifikationer) från API Gateway läggs till i API Center-inventeringen.
- Du konfigurerar en miljö av typen Amazon API Gateway i API Center.
- 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 AWS IAM-användaridentitet med den
AmazonAPIGatewayAdministrator
kopplade principen.För Azure CLI:
Använd Bash-miljön i Azure Cloud Shell. Mer information finns i Snabbstart för Bash i Azure Cloud Shell.
Om du föredrar att köra CLI-referenskommandon lokalt installerar du Azure CLI. Om du kör i Windows eller macOS kan du köra Azure CLI i en Docker-container. Mer information finns i Så här kör du Azure CLI i en Docker-container.
Om du använder en lokal installation loggar du in på Azure CLI med hjälp av kommandot az login. Slutför autentiseringsprocessen genom att följa stegen som visas i terminalen. Andra inloggningsalternativ finns i Logga in med Azure CLI.
När du uppmanas att installera Azure CLI-tillägget vid första användningen. Mer information om tillägg finns i Använda tillägg med Azure CLI.
Kör az version om du vill hitta versionen och de beroende bibliotek som är installerade. Om du vill uppgradera till den senaste versionen kör du az upgrade.
Kommentar
az apic
kommandon kräver Azure CLI-tilläggetapic-extension
. Om du inte har använtaz apic
kommandon kan tillägget installeras dynamiskt när du kör ditt förstaaz 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-extension
i . 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 |
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.
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.
- I portalen navigerar du till ditt nyckelvalv.
- Välj Åtkomstkontroll (IAM) i den vänstra menyn.
- Välj + Lägg till rolltilldelning.
- På sidan Lägg till rolltilldelning anger du följande värden:
- På fliken Roll väljer du Nyckelvalvshemlighetsanvändare.
- På fliken Medlemmar går du till Tilldela åtkomst till – Välj Hanterad identitet>+ Välj medlemmar.
- 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.
- 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>