

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Einrichten eines regionalen benutzerdefinierten Domainnamens in API Gateway
<a name="apigateway-regional-api-custom-domain-create"></a>

Verwenden Sie einen benutzerdefinierten Domainnamen, um eine benutzerfreundliche API-Basis-URL zu erstellen. Mit einem regionalen benutzerdefinierten Domainnamen können Sie HTTP- und REST-API-Stufen demselben benutzerdefinierten Domainnamen zuweisen und gegenseitige TLS-Authentifizierung verwenden. 

## Überlegungen
<a name="regional-custom-domain-names"></a>

Im Folgenden finden Sie einige Überlegungen zu Ihrem regionalen benutzerdefinierten Domainnamen:
+ Die Bereitstellung eines regionenspezifischen ACM-Zertifikats ist erforderlich. Deses Zertifikat muss sich in derselben Region wie Ihre API befinden. Weitere Informationen zum Erstellen oder Hochladen eines benutzerdefinierten Domainnamen-Zertifikats finden Sie unter [Bereiten Sie Zertifikate vor in AWS Certificate Manager](how-to-specify-certificate-for-custom-domain-name.md).
+ Wenn Sie einen regionalen benutzerdefinierten Domainnamen mit einem ACM-Zertifikat erstellen, generiert API Gateway eine serviceverknüpfte Rolle in Ihrem Konto. Die serviceverknüpfte Rolle ist erforderlich, um Ihr ACM-Zertifikat Ihrem regionalen Endpunkt anzuhängen. Die Rolle wird benannt **AWSServiceRoleForAPIGateway**und die **APIGatewayServiceRolePolicy** verwaltete Richtlinie wird an sie angehängt. Weitere Informationen zur Verwendung von serviceverknüpften Rollen finden Sie unter [Verwenden von serviceverknüpften Rollen](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html).
+ Nachdem Sie Ihren regionalen benutzerdefinierten Domainnamen erstellt haben, müssen Sie einen DNS-Datensatz erstellen, der den benutzerdefinierten Domainnamen auf die regionale Domain verweist. Dadurch wird der Datenverkehr, der an den benutzerdefinierten Domainnamen gebunden ist, an den regionalen Hostnamen der API weitergeleitet.

  Der DNS-Datensatz kann entweder ein CNAME- oder ein A-Alias-Datensatz sein. Wenn Sie Route 53 als DNS-Anbieter verwenden, erstellen Sie einen A-Alias-Datensatz. Wenn Sie einen Drittanbieter-DNS-Dienst nutzen, verwenden Sie einen CNAME-Datensatz. Wenn Sie einen CNAME-Datensatz nutzen und einen Schnittstellen-VPC-Endpunkt für API Gateway mit aktiviertem privatem DNS für eine private API erstellen, können Sie den benutzerdefinierten Domainnamen innerhalb der VPC, die Ihre private API hostet, nicht auflösen. 

## Erstellen eines regionalen benutzerdefinierten Domainnamens
<a name="apigateway-regional-api-custom-domain-create-procedure"></a>

Im folgenden Verfahren wird das Erstellen eines regionalen benutzerdefinierten Domainnamens erläutert. Nach Abschluss des Verfahrens erstellen Sie eine Routing-Regel, um die Stufen Ihrer API Ihrem benutzerdefinierten Domainnamen zuzuordnen.

------
#### [ AWS-Managementkonsole ]

1. Melden Sie sich bei der API Gateway Gateway-Konsole unter [https://console.aws.amazon.com/apigatewayan](https://console.aws.amazon.com/apigateway).

1. Wählen Sie **Benutzerdefinierte Domainnamen** im Hauptnavigationsbereich aus. 

1. Wählen Sie **Erstellen** aus.

1. Geben Sie für **Domänenname** einen Domainnamen ein.

1. Wählen Sie unter **Routing-Modus** die Option **Nur Routing-Regeln** aus.

   In diesem Routing-Modus können Sie nur mithilfe von Routing-Regeln Traffic von Ihrem benutzerdefinierten Domainnamen an Ihren APIs senden. Weitere Informationen finden Sie unter [Senden Sie Traffic APIs über Ihren benutzerdefinierten Domainnamen in API Gateway an Sie](rest-api-routing-mode.md).

1. Wählen Sie unter **Minimale TLS-Version** eine Version aus.

1. Wählen Sie unter **Endpunktkonfiguration** für **API-Endpunkttyp** die Option **Regional** aus.

1. Wählen Sie ein ACM-Zertifikat aus. Das Zertifikat muss sich in derselben Region wie die API befinden.

1. Wählen Sie **Erstellen** aus.

------
#### [ AWS CLI ]

Der folgende [create-domain-name](https://docs.aws.amazon.com/cli/latest/reference/apigatewayv2/create-domain-name.html)Befehl erstellt einen benutzerdefinierten Domainnamen:

```
aws apigatewayv2 create-domain-name \ 
    --domain-name 'regional.example.com' \
    --domain-name-configurations CertificateArn=arn:aws:acm:{{us-west-2}}:{{123456789012}}:certificate/{{123456789012-1234-1234-1234-12345678}} \
    --routing-mode ROUTING_RULE_ONLY
```

Die Ausgabe sieht wie folgt aus:

```
{
    "ApiMappingSelectionExpression": "$request.basepath",
    "DomainName": "regional.example.com",
    "DomainNameConfigurations": [
        {
            "ApiGatewayDomainName": "d-numh1z56v6.execute-api.us-west-2.amazonaws.com",
            "CertificateArn": "arn:aws:acm:us-west-2:{{123456789012}}:certificate/{{123456789012-1234-1234-1234-12345678}}",
            "DomainNameStatus": "AVAILABLE",
            "EndpointType": "REGIONAL",
            "HostedZoneId": "Z2OJLYMUO9EFXC",
            "SecurityPolicy": "TLS_1_2"
        }
        "RoutingMode": "ROUTING_RULE_ONLY"
    ]
}
```

Der Eigenschaftswert `DomainNameConfigurations` gibt den Hostnamen der regionalen API zurück. Sie müssen einen DNS-Datensatz erstellen, der Ihren benutzerdefinierten Domainnamen auf diesen regionalen Domainnamen verweist. Dadurch wird der an den benutzerdefinierten Domainnamen gebundene Datenverkehr an den Hostnamen dieser regionalen API weitergeleitet.

------

## Erstellen einer Routing-Regel für Ihren regionalen benutzerdefinierten Domainnamen
<a name="apigateway-regional-api-custom-domain-base-path-mapping"></a>

Nachdem Sie Ihren benutzerdefinierten Domainnamen erstellt haben, konfigurieren Sie, wie der Traffic von Ihrem benutzerdefinierten Domainnamen zu Ihrem APIs weitergeleitet wird. Da Sie den Routing-Modus auf eingestellt haben`ROUTING_RULE_ONLY`, verwenden Sie Routing-Regeln, um eingehende Anfragen an Ihren benutzerdefinierten Domainnamen an Ihren APIs weiterzuleiten.

In diesem Beispiel erstellen Sie eine Catch-All-Regel, die alle eingehenden Anfragen an Ihren benutzerdefinierten Domainnamen an eine Stufe Ihrer API weiterleitet. Sie können auch Routing-Regeln konfigurieren, die auf unterschiedlichen Header- und Pfadbedingungen basieren. Weitere Informationen finden Sie unter [Routing-Regeln zum Verbinden von API-Stufen mit einem benutzerdefinierten Domainnamen für REST APIs](rest-api-routing-rules.md).

------
#### [ AWS-Managementkonsole ]

1. Melden Sie sich bei der API Gateway Gateway-Konsole unter [https://console.aws.amazon.com/apigatewayan](https://console.aws.amazon.com/apigateway).

1. Wählen Sie einen benutzerdefinierten Domainnamen aus.

1. Wählen Sie auf der Registerkarte **Routing-Details** die Option **Routing-Regel hinzufügen** aus.

1. Wählen Sie **Neue Bedingung hinzufügen** aus, um eine neue Bedingung hinzuzufügen.

1. Belassen Sie diese Regel ohne Bedingungen. Dadurch werden alle Anfragen an Ihren benutzerdefinierten Domainnamen an Ihre Ziel-API und Zielstufe weitergeleitet.

1. Verwenden Sie für **Aktion** das Dropdown-Menü, um Ihre Ziel-API und Ihre Zielstufe auszuwählen.

1. Wählen Sie **Weiter** aus.

1. Geben Sie im Prioritätsfeld **100** ein.

   API Gateway wertet Regeln in der Reihenfolge der Priorität aus, ausgehend vom niedrigsten Wert bis hin zum höchsten Wert. Da es sich um eine Catch-All-Regel handelt, verwenden Sie eine hohe Priorität, damit API Gateway alle zusätzlichen Regeln, die Sie erstellen, zuerst abgleichen kann.

1. Wählen Sie **Routing-Regel erstellen** aus.

------
#### [ AWS CLI ]

Der folgende `create-routing-rule`-Befehl erstellt eine Auffang-Routing-Regel:

```
aws apigatewayv2 create-routing-rule \
  --domain-name 'regional.example.com' \
  --priority 100 \
  --conditions  \
  --actions '[{
    "InvokeApi": {
      "ApiId": "a1b2c3",
      "Stage": "prod"
    }
  }]'
```

------

Sie können den Routing-Modus jederzeit ändern und neue Regeln erstellen. Weitere Informationen finden Sie unter [Senden Sie Traffic APIs über Ihren benutzerdefinierten Domainnamen in API Gateway an Sie](rest-api-routing-mode.md).

## Erstellen eines DNS-Datensatzes für Ihren regionalen benutzerdefinierten Domainnamen
<a name="apigateway-regional-api-custom-domain-dns-record"></a>

Nachdem Sie den benutzerdefinierten Domainnamen und die Basispfadzuweisungen festgelegt haben, erstellen Sie einen DNS-Datensatz, der Ihren benutzerdefinierten Domainnamen auf den neu erstellten regionalen Domainnamen verweist.

------
#### [ AWS-Managementkonsole ]

Um das zu verwenden AWS-Managementkonsole, folgen Sie der Route 53-Dokumentation zur [Konfiguration von Route 53 für die Weiterleitung von Datenverkehr an API Gateway](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-api-gateway.html).

------
#### [ AWS CLI ]

Wenn Sie Ihre DNS-Datensätze so konfigurieren möchten, dass der regionale benutzerdefinierte Domainname seinem Hostnamen in der ID der vorgegebenen gehosteten Zone zugewiesen wird, erstellen Sie zunächst eine JSON-Datei, die die Konfiguration für die Einrichtung eines DNS-Datensatzes für den regionalen Domainnamen enthält. 

Die folgende Datei `setup-dns-record.json` zeigt, wie Sie einen DNS-`A`-Datensatz erstellen, um einen regionalen benutzerdefinierten Domainnamen (`regional.example.com`) seinem regionalen Hostnamen (`d-numh1z56v6.execute-api.us-west-2.amazonaws.com`) zuweisen, der im Rahmen der benutzerdefinierten Domainnamenerstellung bereitgestellt wurde. Die Eigenschaften `DNSName` und `HostedZoneId` von `AliasTarget` können die Werte `regionalDomainName` und `regionalHostedZoneId` des benutzerdefinierten Domainnamens entsprechend annehmen. Sie können die Regional Route 53 Hosted Zone auch IDs in [Amazon API Gateway Endpoints and Quotas](https://docs.aws.amazon.com/general/latest/gr/apigateway.html) abrufen.

```
{
  "Changes": [
    {
      "Action": "CREATE",
      "ResourceRecordSet": {
        "Name": "regional.example.com",
        "Type": "A",
        "AliasTarget": {
          "DNSName": "d-numh1z56v6.execute-api.us-west-2.amazonaws.com",
          "HostedZoneId": "Z2OJLYMUO9EFXC",
          "EvaluateTargetHealth": false
        }
      }
    }
  ]
}
```

Im Folgenden [change-resource-record-sets](https://docs.aws.amazon.com/cli/latest/reference/route53/change-resource-record-sets.html)wird ein DNS-Eintrag für Ihren regionalen benutzerdefinierten Domainnamen erstellt:

```
aws route53 change-resource-record-sets \
    --hosted-zone-id Z2OJLYMUO9EFXC \
    --change-batch file://{{path/to/your/setup-dns-record.json}}
```

Ersetzen Sie die `hosted-zone-id` durch die Route-53-Hosted-Zone-ID des DNS-Datensatzes, die in Ihrem Konto eingerichtet wurde. Der `change-batch`-Parameterwert zeigt auf eine JSON-Datei ({{setup-dns-record.json}}) in einem Ordner ({{path/to/your}}).

------