Delen via


API's van Amazon API Gateway synchroniseren met Azure API Center (preview)

In dit artikel wordt beschreven hoe u een Amazon API Gateway integreert, zodat de API's van de gateway continu up-to-date blijven in uw API Center-inventaris .

Over het integreren van Amazon API Gateway

De integratie van Amazon API Gateway als API-bron voor uw API-centrum maakt continue synchronisatie mogelijk, zodat de API-inventaris up-to-date blijft. Azure API Center kan api's ook synchroniseren vanuit bronnen, waaronder Azure API Management.

Wanneer u een Amazon API Gateway integreert als API-bron, gebeurt het volgende:

  1. API's en eventueel API-definities (specificaties) van de API Gateway worden toegevoegd aan de inventaris van het API-centrum.
  2. U configureert een omgeving van het type Amazon API Gateway in het API-centrum.
  3. Er wordt een gekoppelde implementatie gemaakt voor elke gesynchroniseerde API-definitie.

Synchronisatie verloopt in één richting van Amazon API Gateway naar uw Azure API-centrum, wat betekent dat API-updates in het API-centrum niet worden gesynchroniseerd naar Amazon API Gateway.

Notitie

  • Integratie van Amazon API Gateway is momenteel in preview.
  • Er gelden limieten voor het aantal geïntegreerde API-bronnen.
  • API's in Amazon API Gateway worden eenmaal per uur gesynchroniseerd met uw API-centrum. Alleen REST API's worden gesynchroniseerd.
  • API-definities worden ook gesynchroniseerd met het API-centrum als u de optie selecteert om deze op te nemen tijdens de integratie. Alleen definities van geïmplementeerde API's worden gesynchroniseerd.

Entiteiten die zijn gesynchroniseerd vanuit Amazon API Gateway

U kunt metagegevenseigenschappen en documentatie toevoegen aan of bijwerken naar de gesynchroniseerde API's in uw API-centrum, zodat belanghebbenden de API's kunnen detecteren, begrijpen en gebruiken. Meer informatie over de ingebouwde en aangepaste metagegevenseigenschappen van Azure API Center.

De volgende tabel bevat entiteitseigenschappen die kunnen worden gewijzigd in Azure API Center en eigenschappen die zijn ingesteld op basis van hun waarden in de API-bron.

Entity Eigenschappen die kunnen worden geconfigureerd in API Center Eigenschappen die zijn bepaald in de geïntegreerde API-bron
API samenvatting
lifecycleStage
termsOfService
licentie
externalDocumentation
customProperties
title
beschrijving
soort
API-versie lifecycleStage title
definities (indien gesynchroniseerd)
Omgeving title
beschrijving
kind
server.managementPortalUri
onboarden
customProperties
server.type
Implementatie title
beschrijving
server
staat
customProperties
server.runtimeUri

Notitie

Resource- en systeem-id's voor entiteiten die zijn gesynchroniseerd met Azure API Center worden automatisch gegenereerd en kunnen niet worden gewijzigd.

Vereisten

  • Een API-centrum in uw Azure-abonnement. Als u er nog geen hebt gemaakt, raadpleegt u quickstart: Uw API-centrum maken.

  • Een Azure-sleutelkluis. Als u er een wilt maken, raadpleegt u quickstart: Een sleutelkluis maken met behulp van Azure Portal. Als u geheimen wilt toevoegen of beheren in de sleutelkluis, zijn ten minste de rol Key Vault Secrets Officer of gelijkwaardige machtigingen vereist.

  • Een Amazon API-gateway.

  • Een AWS IAM-gebruikersidentiteit waaraan het AmazonAPIGatewayAdministrator beleid is gekoppeld.

  • Voor Azure CLI:

    Notitie

    az apic voor opdrachten is de apic-extension Azure CLI-extensie vereist. Als u geen opdrachten hebt gebruikt az apic , kan de extensie dynamisch worden geïnstalleerd wanneer u uw eerste az apic opdracht uitvoert of kunt u de extensie handmatig installeren. Meer informatie over Azure CLI-extensies.

    Zie de releaseopmerkingen voor de meest recente wijzigingen en updates in de apic-extension. Voor bepaalde functies is mogelijk een preview- of specifieke versie van de extensie vereist.

    Notitie

    Voorbeelden van Azure CLI-opdrachten in dit artikel kunnen worden uitgevoerd in PowerShell of een bash-shell. Indien nodig vanwege verschillende syntaxis van variabelen, worden er afzonderlijke opdrachtvoorbeelden gegeven voor de twee shells.

Toegangssleutels voor IAM-gebruikers maken

Als u uw API-centrum wilt verifiëren bij Amazon API Gateway, hebt u toegangssleutels nodig voor een AWS IAM-gebruiker.

Zie Een toegangssleutel voor uzelf maken in de AWS-documentatie om de vereiste toegangssleutel en geheime sleutel te genereren met behulp van de AWS-beheerconsole.

Sla uw toegangssleutels op een veilige locatie op. U slaat ze op in Azure Key Vault in de volgende stappen.

Let op

Toegangssleutels zijn referenties voor de lange termijn en u moet deze net zo veilig beheren als een wachtwoord. Meer informatie over het beveiligen van toegangssleutels

Toegangssleutels voor IAM-gebruikers opslaan in Azure Key Vault

Upload en sla de twee IAM-gebruikerstoegangssleutels handmatig op in Azure Key Vault met behulp van de configuratie die wordt aanbevolen in de volgende tabel. Zie quickstart: Een geheim instellen en ophalen uit Azure Key Vault met behulp van Azure Portal voor meer informatie.

AWS-geheim Uploadopties Naam Geheime waarde
Toegangssleutel Handmatig aws-access-key Toegangssleutel-id opgehaald uit AWS
Geheime toegangssleutel Handmatig aws-secret-access-key Geheime toegangssleutel opgehaald uit AWS

Schermopname van de lijst met geheimen in Azure Key Vault in de portal.

Noteer de geheime id van elk geheim, een URI die vergelijkbaar is met https://<key-vault-name>.vault.azure.net/secrets/<secret-name>. U gebruikt deze id's in de volgende stappen.

Een beheerde identiteit inschakelen in uw API-centrum

Voor dit scenario gebruikt uw API-centrum een beheerde identiteit voor toegang tot Azure-resources. Afhankelijk van uw behoeften schakelt u een door het systeem toegewezen of een of meer door de gebruiker toegewezen beheerde identiteiten in.

In de volgende voorbeelden ziet u hoe u een door het systeem toegewezen beheerde identiteit inschakelt met behulp van Azure Portal of de Azure CLI. Op hoog niveau zijn configuratiestappen vergelijkbaar voor een door de gebruiker toegewezen beheerde identiteit.

  1. Navigeer in de portal naar uw API-centrum.
  2. Selecteer beheerde identiteiten in het linkermenu onder Beveiliging.
  3. Selecteer Systeem toegewezen en stel de status in op Aan.
  4. Selecteer Opslaan.

De beheerde identiteit toewijzen aan de gebruikersrol Key Vault-geheimen

Als u het importeren van API's wilt toestaan, wijst u de beheerde identiteit van uw API-centrum toe aan de gebruikersrol Key Vault-geheimen in uw Azure-sleutelkluis. U kunt de portal of de Azure CLI gebruiken.

  1. Navigeer in de portal naar uw sleutelkluis.
  2. Selecteer toegangsbeheer (IAM) in het linkermenu.
  3. Selecteer + Roltoewijzing toevoegen.
  4. Stel op de pagina Roltoewijzing toevoegen de waarden als volgt in:
    1. Selecteer Key Vault Secrets User op het tabblad Rol.
    2. Op het tabblad Leden, in Toegang toewijzen aan - Beheerde identiteit> selecteren+ Leden selecteren.
    3. Selecteer op de pagina Beheerde identiteiten selecteren de door het systeem toegewezen beheerde identiteit van uw API-centrum dat u in de vorige sectie hebt toegevoegd. Klik op Selecteren.
    4. Selecteer Controleren + toewijzen.

Een Amazon API Gateway integreren

Voer de opdracht az apic integration create aws (preview) uit om een Amazon API Gateway te integreren in uw API-centrum.

  • Geef de namen op van de resourcegroep, het API-centrum en de integratie.

  • Geef de Key Vault-geheime id's op voor de AWS-toegangssleutel en de geheime toegangssleutel, en de AWS-regio waar de Amazon API Gateway is geïmplementeerd.

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>

De omgeving wordt toegevoegd in uw API-centrum. De Amazon API Gateway-API's worden geïmporteerd in de voorraad van het API-centrum.

Een integratie verwijderen

Hoewel een API-bron is geïntegreerd, kunt u gesynchroniseerde API's niet verwijderen uit uw API-centrum. Als dat nodig is, kunt u de integratie verwijderen. Wanneer u een integratie verwijdert:

  • De gesynchroniseerde API's in uw API Center-inventaris worden verwijderd
  • De omgeving en implementaties die aan de API-bron zijn gekoppeld, worden verwijderd

Als u een integratie wilt verwijderen met behulp van de Azure CLI, voert u de opdracht az apic integration delete (preview) uit. Geef de namen op van de resourcegroep, het API-centrum en de integratie.

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