

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.

# Erste Schritte mit RDS-Proxy
<a name="rds-proxy-setup"></a>

Verwenden Sie die Informationen auf den folgenden Seiten, um zugehörige Sicherheitsoptionen einzurichten, zu verwalten [Amazon RDS-Proxy für Aurora](rds-proxy.md) und festzulegen. Diese Sicherheitsoptionen steuern, wer auf jeden Proxy zugreifen kann und wie jeder Proxy eine Verbindung mit DB-Instances herstellt.

Wenn Sie mit RDS-Proxy noch nicht vertraut sind, empfehlen wir, den Seiten in der Reihenfolge zu folgen, in der sie angezeigt werden. 

**Topics**
+ [Einrichten der Netzwerkvoraussetzungen für RDS-Proxy](rds-proxy-network-prereqs.md)
+ [Datenbankanmeldedaten für RDS Proxy einrichten](rds-proxy-secrets-arns.md)
+ [Konfigurieren der IAM-Authentifizierung für RDS-Proxy](rds-proxy-iam-setup.md)
+ [Erstellen eines Proxys für Amazon Aurora](rds-proxy-creating.md)
+ [Anzeigen eines Proxys](rds-proxy-viewing.md)
+ [Verbinden mit einer Datenbank über RDS-Proxy](rds-proxy-connecting.md)

# Einrichten der Netzwerkvoraussetzungen für RDS-Proxy
<a name="rds-proxy-network-prereqs"></a>

 Die Verwendung von RDS-Proxy erfordert eine gemeinsame Virtual Private Cloud (VPC) zwischen Ihrem Aurora-DB-Cluster und RDS-Proxy. Diese VPC sollte über mindestens zwei Subnetze verfügen, die sich in verschiedenen Availability Zones befinden. Ihr Konto kann entweder der Eigentümer dieser Subnetze sein oder sie mit anderen Konten teilen. Informationen zur VPC-Sharing finden Sie unter [Arbeiten mit Shared VPCs](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-sharing.html). 

Für den IPv6 Support ist eine zusätzliche Netzwerkkonfiguration erforderlich:
+ **IPv6 Endpunkt-Netzwerktypen** — Ihre VPC und Subnetze müssen für die Unterstützung konfiguriert sein. IPv6 Dazu gehört die Zuweisung von IPv6 CIDR-Blöcken zu Ihrer VPC und Ihren Subnetzen.
+ **Dual-Stack-Endpunkt-Netzwerktypen** — Ihre VPC und Subnetze müssen beide IPv4 und die Adressierung unterstützen. IPv6 
+ **IPv6 Netzwerktypen für Zielverbindungen** — Ihre Datenbank muss für den Dual-Stack-Modus konfiguriert sein, um IPv6 Verbindungen vom Proxy aus zu unterstützen.

Ihre Client-Anwendungsressourcen wie Amazon EC2, Lambda oder Amazon ECS können sich in derselben VPC wie der Proxy befinden. Sie können sich auch in einer vom Proxy getrennten VPC befinden. Wenn Sie eine Verbindung mit Aurora-DB-Clustern hergestellt haben, verfügen Sie bereits über die erforderlichen Netzwerkressourcen. 

**Topics**
+ [Abrufen von Informationen zu Ihren Subnetzen](#rds-proxy-network-prereqs.subnet-info)
+ [Planen der Kapazität von IP-Adressen](#rds-proxy-network-prereqs.plan-ip-address)

## Abrufen von Informationen zu Ihren Subnetzen
<a name="rds-proxy-network-prereqs.subnet-info"></a>

 Wenn Sie Aurora zum ersten Mal verwenden, können Sie sich mit den Grundlagen der Herstellung einer Verbindung mit einer Datenbank vertraut machen, indem Sie die in [Einrichten Ihrer Umgebung für Amazon Aurora](CHAP_SettingUp_Aurora.md) beschriebenen Verfahren befolgen. Sie können auch dem Tutorial in [Erste Schritte mit Amazon Aurora](CHAP_GettingStartedAurora.md) folgen. 

Um einen Proxy zu erstellen, müssen Sie die Subnetze und die VPC angeben, in denen der Proxy arbeitet. Das folgende Linux-Beispiel zeigt AWS CLI Befehle, die die Subnetze VPCs und Subnetze untersuchen, die Ihrem gehören. AWS-Konto Insbesondere übergeben Sie das Subnetz IDs als Parameter, wenn Sie einen Proxy mit der CLI erstellen. 

```
aws ec2 describe-vpcs
aws ec2 describe-internet-gateways
aws ec2 describe-subnets --query '*[].[VpcId,SubnetId]' --output text | sort
```

Das folgende Linux-Beispiel zeigt AWS CLI Befehle zur Bestimmung des Subnetzes, das einem bestimmten Aurora DB-Cluster einer bestimmten entspricht. 

Bei einem Aurora-Cluster finden Sie zuerst die ID für eine der zugehörigen DB-Instances. Sie können das von dieser DB-Instance IDs verwendete Subnetz extrahieren. Untersuchen Sie dazu die verschachtelten Felder innerhalb der Attribute `DBSubnetGroup` und `Subnets` in der Describe-Ausgabe für die DB-Instance. Sie geben einige oder alle dieser Subnetze an, IDs wenn Sie einen Proxy für diesen Datenbankserver einrichten.

```
$ # Find the ID of any DB instance in the cluster.
$  aws rds describe-db-clusters --db-cluster-identifier my_cluster_id --query '*[].[DBClusterMembers]|[0]|[0][*].DBInstanceIdentifier' --output text
```

```
my_instance_id
instance_id_2
instance_id_3
```

Nachdem Sie die ID der DB-Instance gefunden haben, untersuchen Sie die zugehörige VPC, um ihre Subnetze zu finden. Das folgende Linux-Beispiel zeigt wie es geht.

```
$ #From the DB instance, trace through the DBSubnetGroup and Subnets to find the subnet IDs.
$ aws rds describe-db-instances --db-instance-identifier my_instance_id --query '*[].[DBSubnetGroup]|[0]|[0]|[Subnets]|[0]|[*].SubnetIdentifier' --output text
```

```
subnet_id_1
subnet_id_2
subnet_id_3
...
```

```
$ #From the DB instance, find the VPC.
$ aws rds describe-db-instances --db-instance-identifier my_instance_id --query '*[].[DBSubnetGroup]|[0]|[0].VpcId' --output text
```

```
my_vpc_id
```

```
$ aws ec2 describe-subnets --filters Name=vpc-id,Values=my_vpc_id --query '*[].[SubnetId]' --output text
```

```
subnet_id_1
subnet_id_2
subnet_id_3
subnet_id_4
subnet_id_5
subnet_id_6
```

## Planen der Kapazität von IP-Adressen
<a name="rds-proxy-network-prereqs.plan-ip-address"></a>

RDS Proxy passt seine Kapazität automatisch an die Konfiguration der bei ihm registrierten DB-Instances an. Bei bereitgestellten Instances wird dies durch die Instance-Größe und bei Aurora Serverless v2 Instances durch die maximale ACU-Kapazität bestimmt. Bestimmte Operationen erfordern möglicherweise auch zusätzliche Kapazität, z. B. die Vergrößerung einer registrierten Datenbank oder interne Wartungsvorgänge für den RDS-Proxy. Bei diesen Vorgängen benötigt Ihr Proxy möglicherweise mehr IP-Adressen, um die zusätzliche Kapazität bereitzustellen. Mit diesen zusätzlichen Adressen kann Ihr Proxy skaliert werden, ohne Ihre Workload zu beeinträchtigen. Ein Mangel an freien IP-Adressen in Ihren Subnetzen verhindert, dass ein Proxy hochskaliert wird. Dies kann zu höheren Abfragelatenzen oder Verbindungsfehlern bei Clients führen. RDS benachrichtigt Sie durch das Ereignis `RDS-EVENT-0243`, wenn in Ihren Subnetzen nicht genügend freie IP-Adressen vorhanden sind. Weitere Informationen zu diesem Ereignis finden Sie unter [Arbeiten mit RDS-Proxy-EreignissenArbeiten mit RDS-Proxy-Ereignissen](rds-proxy.events.md).

Reservieren Sie die empfohlene Mindestanzahl von IP-Adressen in Ihren Subnetzen für Ihren Proxy basierend auf den Klassengrößen der DB-Instance.


|  DB-Instance-Klasse  |  Mindestanzahl freier IP-Adressen  | 
| --- | --- | 
|  db.\$1.xlarge oder kleiner   |  10  | 
|  db.\$1.2xlarge   |  15  | 
|  db.\$1.4xlarge   |  25  | 
|  db.\$1.8xlarge   |  45  | 
|  qdb.\$1.12xlarge   |  60  | 
|  db.\$1.16xlarge   |  75  | 
|  db.\$1.24xlarge   |  110  | 

Reservieren Sie Aurora Serverless v2 nämlich die folgende Mindestanzahl an freien IP-Adressen in Ihren Subnetzen für Ihren Proxy, basierend auf der maximalen ACU-Kapazität.


| `Maximum ACU Capacity` |  Mindestanzahl freier IP-Adressen  | 
| --- | --- | 
|  16 oder kleiner   |  10  | 
|  32  |  15  | 
|  64  |  25  | 
|  96  |  30  | 
|  128  |  40  | 
|  160  |  50  | 
|  192  |  55  | 
|  224  |  65  | 
|  256  |  75  | 

**Anmerkung**  
RDS Proxy verbraucht nicht mehr als 215 IP-Adressen für jeden Proxy in einer VPC.

RDS Proxy benötigt mindestens 10 IP-Adressen für Ihre Aurora-Datenbank. Bei der empfohlenen Anzahl von IP-Adressen handelt es sich um eine Schätzung für einen Proxy, der nur über einen Standardendpunkt verfügt. Für jeden weiteren benutzerdefinierten Endpunkt empfehlen wir, drei weitere IP-Adressen zu reservieren. Wir empfehlen, dass Sie für jede Aurora-Reader-Instance zusätzliche IP-Adressen reservieren, wie in der Tabelle angegeben, basierend auf der maximalen Größe dieses Readers ACUs für das Aurora Serverless v2 Ziel oder der DB-Instance-Größe für ein bereitgestelltes Ziel.

Um die erforderlichen IP-Adressen für einen Proxy zu schätzen, der einem Aurora-DB-Cluster zugeordnet ist, mit:
+ 1 bereitgestellte Writer-Instance in der Größe `db.r5.8xlarge` und 1 bereitgestellte Reader-Instance in der Größe. `db.r5.2xlarge`
+ Der an diesen Cluster angehängte Proxy hat einen Standardendpunkt und einen benutzerdefinierten Endpunkt mit der Rolle „Nur Lesen“.

In diesem Fall benötigt der Proxy ungefähr 63 freie IP-Adressen (45 für die Writer-Instance, 15 für die Reader-Instance und 3 für den zusätzlichen benutzerdefinierten Endpunkt).

Um die erforderlichen IP-Adressen für einen Proxy zu schätzen, der einem Aurora-DB-Cluster zugeordnet ist, der über Folgendes verfügt: 
+ 1 Aurora Serverless v2 Writer-Instance mit einer maximalen Kapazität von 256 ACUs und 1 Serverless v2-Reader-Instance mit einer maximalen Kapazität von 192 ACUs.
+ Der Proxy, der an diesen Cluster angehängt ist, hat den Standardendpunkt und einen benutzerdefinierten Endpunkt mit der Rolle „Nur Lesen“.

In diesem Fall benötigt der Proxy ungefähr 133 freie IP-Adressen (75 für die Writer-Instanz, 55 für die Reader-Instanz und 3 für den zusätzlichen benutzerdefinierten Endpunkt).

Um die erforderlichen IP-Adressen für einen Proxy zu schätzen, der einem Aurora-Cluster zugeordnet ist, der über Folgendes verfügt: 
+ 1 bereitgestellte Writer-Instance mit der DB-Instance-Größe db.r5.4xlarge und 1 Serverless v2-Reader-Instance mit einer maximalen Kapazität von 64. ACUs
+ Der Proxy, der an diesen Cluster angehängt ist, hat den Standardendpunkt und einen benutzerdefinierten Endpunkt mit der Rolle „Nur Lesen“. 

In diesem Fall benötigt der Proxy ungefähr 53 freie IP-Adressen (25 für die Writer-Instanz, 25 für die Reader-Instanz und 3 für den zusätzlichen benutzerdefinierten Endpunkt). 

Um die erforderlichen IP-Adressen für einen Proxy zu schätzen, der einem Aurora-DB-Cluster zugeordnet ist, der über Folgendes verfügt:
+ 1 bereitgestellte Writer-Instance der Größe db.r5.24xlarge und 3 bereitgestellte Reader-Instance der Größe db.r5.8xlarge. 
+ Der Proxy, der mit diesem DB-Cluster verbunden ist, verfügt über den Standardendpunkt und 1 benutzerdefinierten Endpunkt mit der schreibgeschützten Rolle. 

In diesem Fall benötigt der Proxy 215 freie IP-Adressen. Berechnungen deuten zwar auf 248 IPs (110 \$1 (3\$145) \$1 3) hin, aber der RDS-Proxy verbraucht nicht mehr als 215 IP-Adressen für jeden Proxy in einer VPC.

# Datenbankanmeldedaten für RDS Proxy einrichten
<a name="rds-proxy-secrets-arns"></a>

RDS Proxy in Amazon RDS verwendet AWS Secrets Manager , um Datenbankanmeldedaten sicher zu speichern und zu verwalten. Anstatt Anmeldeinformationen in Ihre Anwendung einzubetten, verknüpfen Sie einen Proxy mit einem Secrets-Manager-Secret, das die erforderlichen Authentifizierungsdetails enthält. Sie erstellen ein separates Secrets Manager-Secret für jedes Datenbankbenutzerkonto, mit dem der Proxy auf der dem Aurora-DB-Cluster eine Verbindung herstellt.

Alternativ können Sie den RDS-Proxy so konfigurieren, dass er die end-to-end IAM-Authentifizierung verwendet, sodass keine Datenbankanmeldedaten in Secrets Manager gespeichert werden müssen. RDS Proxy verwendet die IAM-Authentifizierung für beide Verbindungen client-to-proxy. proxy-to-database Dies bietet eine vollständig integrierte IAM-basierte Authentifizierungslösung, für die keine Verwaltung von Geheimnissen oder Passwörtern erforderlich ist. Informationen zum Hinzufügen eines neuen IAM-DB-Benutzers finden Sie unter. [Erstellen eines Datenbankkontos mithilfe der IAM-Authentifizierung](UsingWithRDS.IAMDBAuth.DBAccounts.md)

**Topics**
+ [Erstellen von Secrets zur Verwendung mit RDS-Proxy](#rds-proxy-secrets-create)

## Erstellen von Secrets zur Verwendung mit RDS-Proxy
<a name="rds-proxy-secrets-create"></a>

Bevor Sie einen Proxy erstellen, müssen Sie zunächst mindestens ein Secret erstellen, in dem Ihre Datenbankanmeldeinformationen gespeichert werden.

### Konsole
<a name="rds-proxy-secrets-create-console"></a>

**So erstellen Sie ein Secret**

1. Öffnen Sie die Secrets Manager Manager-Konsole unter [https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/).

1. Wählen Sie **Store a new secret** (Ein neues Secret speichern).

1. Wählen Sie **Anmeldeinformationen für Amazon-RDS-Datenbank** aus.

1. Geben Sie einen Benutzernamen und ein Passwort ein. Die von Ihnen eingegebenen Anmeldeinformationen müssen mit den Anmeldeinformationen eines Datenbankbenutzers übereinstimmen, der in der zugehörigen RDS-Datenbank vorhanden ist. RDS-Proxy verwendet diese Anmeldeinformationen, um im Namen von Anwendungen Verbindungen zur Datenbank zu authentifizieren und herzustellen.

   Wenn eine Unstimmigkeit vorliegt, können Sie das Secret so aktualisieren, dass es mit dem Datenbankkennwort übereinstimmt. Solange Sie das Secret nicht aktualisieren, schlagen Verbindungsversuche über den Proxy fehl, Verbindungen, die andere gültige geheime Schlüssel verwenden, funktionieren aber dennoch.
**Anmerkung**  
Für RDS für SQL Server erfordert RDS-Proxy unabhängig von den Sortierungseinstellungen der DB-Instance ein Secret in Secrets Manager, bei dem Groß- und Kleinschreibung beachtet wird. Wenn Ihre Anwendung Benutzernamen mit unterschiedlicher Groß- und Kleinschreibung wie „Admin“ und „admin“ zulässt, müssen Sie für jeden separate Secrets erstellen. RDS-Proxy unterstützt keine Benutzernamenauthentifizierung ohne Berücksichtigung der Groß-/Kleinschreibung zwischen Client und Proxy.  
Weitere Informationen über die Sortierung in SQL Server finden Sie in der Dokumentation für [Microsoft SQL Server](https://docs.microsoft.com/en-us/sql/relational-databases/collations/collation-and-unicode-support?view=sql-server-ver16).

1. Wählen Sie für **Datenbank** die Amazon-RDS-Datenbank aus, auf die das Secret zugreift.

1. Geben Sie weitere Einstellungen für das Secret ein und wählen Sie dann **Speichern** aus. Umfassende Anleitungen finden Sie unter [Erstellen eines AWS Secrets Manager -Secrets](https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_secret.html) im *Benutzerhandbuch für AWS Secrets Manager *. 

### AWS CLI
<a name="rds-proxy-secrets-create-cli"></a>

Wenn Sie über den einen Proxy erstellen AWS CLI, geben Sie die Amazon-Ressourcennamen (ARNs) der entsprechenden Geheimnisse an. Diesen Vorgang führen Sie für alle DB-Benutzerkonten aus, auf die der Proxy zugreifen kann. In der AWS-Managementkonsole wählen Sie die Geheimnisse anhand ihrer aussagekräftigen Namen aus.
+ Verwenden Sie den Befehl [create-secret](https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/create-secret.html), um ein Secrets Manager-Secret für die Verwendung mit RDS-Proxy zu erstellen:

  ```
  aws secretsmanager create-secret \
    --name "secret_name" \
    --description "secret_description" \
    --region region_name \
    --secret-string '{"username":"db_user","password":"db_user_password"}'
  ```
+ Sie können auch einen benutzerdefinierten Schlüssel erstellen, um Ihr Secrets Manager-Secret zu verschlüsseln. Im folgenden Beispiel wird ein Beispielschlüssel erstellt.

  ```
  aws kms create-key --description "test-key" --policy '{
    "Id":"kms-policy",
    "Version": "2012-10-17",		 	 	 
    "Statement":
      [
        {
          "Sid":"Enable IAM User Permissions",
          "Effect":"Allow",
          "Principal":{"AWS":"arn:aws:iam::account_id:root"},
          "Action":"kms:*","Resource":"*"
        },
        {
          "Sid":"Allow access for Key Administrators",
          "Effect":"Allow",
          "Principal":
            {
              "AWS":
                ["$USER_ARN","arn:aws:iam:account_id::role/Admin"]
            },
          "Action":
            [
              "kms:Create*",
              "kms:Describe*",
              "kms:Enable*",
              "kms:List*",
              "kms:Put*",
              "kms:Update*",
              "kms:Revoke*",
              "kms:Disable*",
              "kms:Get*",
              "kms:Delete*",
              "kms:TagResource",
              "kms:UntagResource",
              "kms:ScheduleKeyDeletion",
              "kms:CancelKeyDeletion"
            ],
          "Resource":"*"
        },
        {
          "Sid":"Allow use of the key",
          "Effect":"Allow",
          "Principal":{"AWS":"$ROLE_ARN"},
          "Action":["kms:Decrypt","kms:DescribeKey"],
          "Resource":"*"
        }
      ]
  }'
  ```

 Mit den folgenden Befehlen werden beispielsweise Secrets Manager-Secrets für zwei Datenbankbenutzer erstellt: 

```
aws secretsmanager create-secret \
  --name secret_name_1 --description "db admin user" \
  --secret-string '{"username":"admin","password":"choose_your_own_password"}'

aws secretsmanager create-secret \
  --name secret_name_2 --description "application user" \
  --secret-string '{"username":"app-user","password":"choose_your_own_password"}'
```

Verwenden Sie die folgenden Befehle, um diese mit Ihrem benutzerdefinierten AWS KMS Schlüssel verschlüsselten Geheimnisse zu erstellen:

```
aws secretsmanager create-secret \
  --name secret_name_1 --description "db admin user" \
  --secret-string '{"username":"admin","password":"choose_your_own_password"}' \
  --kms-key-id arn:aws:kms:us-east-2:account_id:key/key_id

aws secretsmanager create-secret \
  --name secret_name_2 --description "application user" \
  --secret-string '{"username":"app-user","password":"choose_your_own_password"}' \
  --kms-key-id arn:aws:kms:us-east-2:account_id:key/key_id
```

Verwenden Sie den Befehl [list-secrets, um die Geheimnisse](https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/list-secrets.html) zu sehen, die Ihrem AWS Konto gehören:

```
aws secretsmanager list-secrets
```

Wenn Sie mit der CLI einen Proxy erstellen, übergeben Sie die Amazon-Ressourcennamen (ARNs) eines oder mehrerer Secrets an den `--auth` Parameter. Das folgende Beispiel zeigt, wie Sie einen Bericht nur mit dem Namen und dem ARN jedes Secrets Ihres AWS -Kontos erstellen. In diesem Beispiel wird der `--output table` Parameter verwendet, der in AWS CLI Version 2 verfügbar ist. Wenn Sie AWS CLI Version 1 verwenden, verwenden Sie `--output text` stattdessen. 

```
aws secretsmanager list-secrets --query '*[].[Name,ARN]' --output table
```

Verwenden Sie den [get-secret-value](https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/get-secret-value.html)Befehl, um zu überprüfen, ob der geheime Schlüssel die richtigen Anmeldeinformationen im richtigen Format enthält. Ersetzen Sie `your_secret_name` durch den Kurznamen oder den ARN des Secrets.

```
aws secretsmanager get-secret-value --secret-id your_secret_name
```

Die Ausgabe enthält eine Zeile mit einem JSON-codierten Wert, der dem folgenden ähnelt:

```
...
"SecretString": "{\"username\":\"your_username\",\"password\":\"your_password\"}",
...
```

# Konfigurieren der IAM-Authentifizierung für RDS-Proxy
<a name="rds-proxy-iam-setup"></a>

Um die AWS Identity and Access Management (IAM-) Authentifizierung für RDS Proxy in Amazon RDS einzurichten, erstellen und konfigurieren Sie eine IAM-Richtlinie, die die erforderlichen Berechtigungen gewährt. 

In diesem Thema werden die Schritte zur Konfiguration der IAM-Authentifizierung für den RDS-Proxy beschrieben, einschließlich der Erstellung der erforderlichen IAM-Richtlinie und deren Anfügung an eine IAM-Rolle. 

**Tipp**  
Dieses Verfahren ist nur erforderlich, wenn Sie Ihre eigene IAM-Rolle erstellen möchten. Andernfalls kann RDS die erforderliche Rolle automatisch erstellen, wenn Sie den Proxy einrichten, sodass Sie diese Schritte überspringen können.

## Voraussetzungen
<a name="rds-proxy-iam-setup-prereqs"></a>

Stellen Sie vor der Einrichtung der IAM-Authentifizierung für RDS-Proxy sicher, dass Sie über Folgendes verfügen:
+ **AWS Secrets Manager** – Mindestens ein gespeichertes Secret, das Datenbankanmeldedaten enthält. Anleitungen zum Erstellen von Secrets finden Sie unter [Datenbankanmeldedaten für RDS Proxy einrichten](rds-proxy-secrets-arns.md).

  Dies ist nicht erforderlich, wenn Sie die end-to-end IAM-Authentifizierung verwenden.
+ **IAM-Berechtigungen** – Eine IAM-Rolle oder ein IAM-Benutzer mit Berechtigungen zum Erstellen und Verwalten von IAM-Richtlinien, -Rollen und -Secrets in AWS Secrets Manager.

## Eine IAM-Richtlinie für end-to-end die IAM-Authentifizierung erstellen
<a name="rds-proxy-iam-setup-e2e-steps"></a>

Wenn Sie die end-to-end IAM-Authentifizierung verwenden, stellt RDS Proxy mithilfe der IAM-Authentifizierung eine Verbindung zu Ihrer Datenbank her, anstatt Anmeldeinformationen von Secrets Manager abzurufen. Dazu müssen Sie Ihre IAM-Rolle mit `rds-db:connect` Berechtigungen für die Datenbankkonten konfigurieren, die Sie mit dem Proxy verwenden möchten.

Um Ihren RDS-Proxy mithilfe von IAM gegenüber der Datenbank zu authentifizieren, erstellen Sie eine IAM-Rolle mit einer Richtlinie, die die erforderlichen Datenbankverbindungsberechtigungen gewährt.

### Konsole
<a name="rds-proxy-iam-e2e-console"></a>

**Um eine Rolle für die end-to-end IAM-Authentifizierung mit Ihrem Proxy zu erstellen**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die IAM-Konsole unter. [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)

1. Erstellen Sie eine Berechtigungsrichtlinie für die Rolle. Allgemeine Schritte finden Sie unter [IAM-Richtlinien erstellen (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html).

   Fügen Sie die folgende Richtlinie in den JSON-Editor ein und nehmen Sie die folgenden Änderungen vor:
   + Ersetzen Sie die Vorgabe durch Ihre eigene Konto-ID.
   + Ersetzen Sie es `us-east-2` durch den Ort, an dem sich der Proxy befinden muss.
   + Ersetzen Sie die Datenbankressource IDs und die Benutzernamen durch die Namen, die Sie verwenden möchten. Das Format der Ressourcen-ID unterscheidet sich zwischen RDS-Instances undAurora clusters.

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "rds-db:connect",
               "Resource": [
                   "arn:aws:rds-db:us-east-2:account_id:dbuser:db_instance_resource_id/db_user_name_1",
                   "arn:aws:rds-db:us-east-2:account_id:dbuser:db_instance_resource_id/db_user_name_2"
               ]
           }
       ]
   }
   ```

1. Erstellen Sie die Rolle fügen Sie ihr die Berechtigungsrichtlinie an. Allgemeine Schritte finden Sie unter [Eine Rolle erstellen, um Berechtigungen an einen AWS Dienst zu delegieren](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html). 

   Wählen Sie für **Vertrauenswürdiger Entitätstyp** die Option **AWS -Service** aus. Wählen Sie unter **Anwendungsfall** die Option **RDS** und für den Anwendungsfall **RDS — Rolle zur Datenbank hinzufügen** aus.

1. Wählen Sie für **Berechtigungsrichtlinien** die Richtlinie aus, die Sie erstellt haben.

1. Geben Sie für **Vertrauenswürdige Entitäten auswählen** die folgende Vertrauensrichtlinie für die Rolle ein:

   ```
   {
     "Version": "2012-10-17",		 	 	 
     "Statement": [
       {
         "Sid": "",
         "Effect": "Allow",
         "Principal": {
           "Service": "rds.amazonaws.com"
         },
         "Action": "sts:AssumeRole"
       }
     ]
   }
   ```

### AWS CLI
<a name="rds-proxy-iam-e2e-cli"></a>

Um die Rolle mithilfe von zu erstellen AWS CLI, senden Sie die folgende Anfrage:

```
aws iam create-role \
  --role-name my_e2e_iam_role_name \

  --assume-role-policy-document '{"Version":"2012-10-17",		 	 	 "Statement":[{"Effect":"Allow","Principal":{"Service":["rds.amazonaws.com"]},"Action":"sts:AssumeRole"}]}'
```

Fügen Sie anschließend die Richtlinie an die Rolle an.

```
aws iam put-role-policy \
  --role-name my_e2e_iam_role_name \
  --policy-name e2e_iam_db_connect_policy \
  --policy-document '{

    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "rds-db:connect",
            "Resource": [
                "arn:aws:rds-db:us-east-2:account_id:dbuser:db_instance_resource_id/db_user_name_1",
                "arn:aws:rds-db:us-east-2:account_id:dbuser:db_instance_resource_id/db_user_name_2"
            ]
        }
    ]
}'
```

Wenn die IAM-Rolle und die Berechtigungen für die end-to-end IAM-Authentifizierung konfiguriert sind, können Sie jetzt einen Proxy mit der `DefaultAuthScheme` Einstellung auf erstellen. `IAM_AUTH` Dieser Proxy authentifiziert sich mithilfe von IAM direkt bei der Datenbank, ohne dass Secrets Manager Manager-Geheimnisse erforderlich sind. Detaillierte Anweisungen finden Sie unter [Erstellen eines Proxys für Amazon Aurora](rds-proxy-creating.md).

Wenn Sie die end-to-end IAM-Authentifizierung verwenden, stellen Sie sicher, dass Ihre Datenbankbenutzer für die IAM-Authentifizierung konfiguriert sind, wie unter beschrieben. [Erstellen eines Datenbankkontos mithilfe der IAM-Authentifizierung](UsingWithRDS.IAMDBAuth.DBAccounts.md)

## Erstellen einer IAM-Richtlinie für den Zugriff auf Secrets Manager
<a name="rds-proxy-iam-setup-steps"></a>

Damit RDS-Proxy Datenbankanmeldedaten von Secrets Manager abrufen kann, erstellen Sie eine IAM-Rolle mit einer Richtlinie, die die notwendigen Berechtigungen gewährt.

## Konsole
<a name="rds-proxy-iam-console"></a>

**So erstellen Sie eine Rolle für den Zugriff auf Ihre Secrets für die Verwendung mit Ihrem Proxy**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die IAM-Konsole unter. [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)

1. Erstellen Sie eine Berechtigungsrichtlinie für die Rolle. Allgemeine Schritte finden Sie unter [IAM-Richtlinien erstellen (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html).

   Fügen Sie die folgende Richtlinie in den JSON-Editor ein und nehmen Sie die folgenden Änderungen vor:
   + Ersetzen Sie die Vorgabe durch Ihre eigene Konto-ID.
   + Ersetzen Sie `us-east-2` durch die Region, in der sich der Proxy befinden wird.
   + Ersetzen Sie die geheimen Namen durch die Namen, die Sie erstellt haben. Weitere Informationen finden Sie unter [Angeben von KMS-Schlüsseln in IAM-Richtlinienanweisungen](https://docs.aws.amazon.com/kms/latest/developerguide/cmks-in-iam-policies.html).
   + Ersetzen Sie die KMS-Schlüssel-ID durch die, die Sie zur Verschlüsselung der Secrets von Secrets Manager verwendet haben, entweder den Standardschlüssel oder Ihren eigenen Schlüssel.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "secretsmanager:GetSecretValue",
               "Resource": [
                   "arn:aws:secretsmanager:us-east-2:111122223333:secret:secret_name_1",
                   "arn:aws:secretsmanager:us-east-2:111122223333:secret:secret_name_2"
               ]
           },
           {
               "Effect": "Allow",
               "Action": "kms:Decrypt",
               "Resource": "arn:aws:kms:us-east-2:111122223333:key/key_id",
               "Condition": {
                   "StringEquals": {
                       "kms:ViaService": "secretsmanager.us-east-2.amazonaws.com"
                   }
               }
           }
       ]
   }
   ```

------

1. Erstellen Sie die Rolle fügen Sie ihr die Berechtigungsrichtlinie an. Allgemeine Schritte finden Sie unter [Eine Rolle erstellen, um Berechtigungen für einen AWS Dienst zu delegieren](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html). 

   Wählen Sie für **Vertrauenswürdiger Entitätstyp** die Option **AWS -Service** aus. Wählen Sie unter **Anwendungsfall** die Option **RDS** und für den Anwendungsfall **RDS — Rolle zur Datenbank hinzufügen** aus.

1. Wählen Sie für **Berechtigungsrichtlinien** die Richtlinie aus, die Sie erstellt haben.

1. Geben Sie für **Vertrauenswürdige Entitäten auswählen** die folgende Vertrauensrichtlinie für die Rolle ein:

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Sid": "",
         "Effect": "Allow",
         "Principal": {
           "Service": "rds.amazonaws.com"
         },
         "Action": "sts:AssumeRole"
       }
     ]
   }
   ```

------

## AWS CLI
<a name="rds-proxy-iam-cli"></a>

Um die Rolle mithilfe von zu erstellen AWS CLI, senden Sie die folgende Anfrage:

```
aws iam create-role \
  --role-name my_role_name \
  --assume-role-policy-document '{"Version": "2012-10-17",		 	 	 "Statement":[{"Effect":"Allow","Principal":{"Service":["rds.amazonaws.com"]},"Action":"sts:AssumeRole"}]}'
```

Fügen Sie anschließend die Richtlinie an die Rolle an.

```
aws iam put-role-policy \
  --role-name my_role_name \
  --policy-name secret_reader_policy \
  --policy-document '{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": "secretsmanager:GetSecretValue",
            "Resource": [
                "arn:aws:secretsmanager:us-east-2:account_id:secret:secret_name_1",
                "arn:aws:secretsmanager:us-east-2:account_id:secret:secret_name_2"
            ]
        },
        {
            "Sid": "VisualEditor1",
            "Effect": "Allow",
            "Action": "kms:Decrypt",
            "Resource": "arn:aws:kms:us-east-2:account_id:key/key_id",
            "Condition": {
                "StringEquals": {
                    "kms:ViaService": "secretsmanager.us-east-2.amazonaws.com"
                }
            }
        }
    ]
}'
```

Nachdem Sie die IAM-Rolle und die Berechtigungen konfiguriert haben, können Sie nun einen Proxy erstellen und ihn dieser Rolle zuordnen. Auf diese Weise kann der Proxy Datenbankanmeldedaten sicher aus Ihren Anwendungen abrufen AWS Secrets Manager und die IAM-Authentifizierung für Ihre Anwendungen aktivieren. Detaillierte Anweisungen finden Sie unter [Erstellen eines Proxys für Amazon Aurora](rds-proxy-creating.md).

# Erstellen eines Proxys für Amazon Aurora
<a name="rds-proxy-creating"></a>

Sie können Amazon-RDS-Proxy verwenden, um die Skalierbarkeit, Verfügbarkeit und Sicherheit Ihrer Datenbankanwendungen zu verbessern, indem Sie Verbindungen bündeln und Datenbank-Failover effizienter verwalten. In diesem Thema wird das Erstellen eines Proxys erläutert. Stellen Sie vor Beginn sicher, dass Ihre Datenbank die erforderlichen Voraussetzungen erfüllt, einschließlich IAM-Berechtigungen und VPC-Konfiguration.

Sie können einen Proxy einem DB-Cluster von Aurora MySQL oder einem Aurora PostgreSQL zuordnen. 

## Konsole
<a name="rds-proxy-creating.console"></a>

**So erstellen Sie einen Proxy**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Wählen Sie im Navigationsbereich **Proxies (Proxys)**. 

1. Wählen Sie **Create proxy (Proxy erstellen)**. 

1. Konfigurieren Sie die folgenden Einstellungen für Ihren Proxy.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/AmazonRDS/latest/AuroraUserGuide/rds-proxy-creating.html)

1.  Wählen Sie **Create proxy (Proxy erstellen)**. 

## AWS CLI
<a name="rds-proxy-creating.CLI"></a>

 Um einen Proxy mit dem zu erstellen AWS CLI, rufen Sie den [create-db-proxy](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-proxy.html)Befehl mit den folgenden erforderlichen Parametern auf: 
+ `--db-proxy-name`
+ `--engine-family`
+ `--role-arn`
+ `--vpc-subnet-ids`

Bei `--engine-family`-Wert ist die Groß- und Kleinschreibung zu beachten.

**Example**  
Für Linux, macOS oder Unix:  

```
aws rds create-db-proxy \
    --db-proxy-name proxy_name \
    --engine-family { MYSQL | POSTGRESQL | SQLSERVER } \
    --role-arn iam_role \
    --vpc-subnet-ids space_separated_list \
    [--default-auth-scheme { NONE | IAM_AUTH }] \
    [--auth ProxyAuthenticationConfig_JSON_string] \
    [--vpc-security-group-ids space_separated_list] \
    [--require-tls | --no-require-tls] \
    [--idle-client-timeout value] \
    [--debug-logging | --no-debug-logging] \
    [--endpoint-network-type { IPV4 | IPV6 | DUAL }] \
    [--target-connection-network-type { IPV4 | IPV6 }] \
    [--tags comma_separated_list]
```
Für Windows:  

```
aws rds create-db-proxy ^
    --db-proxy-name proxy_name ^
    --engine-family { MYSQL | POSTGRESQL | SQLSERVER } ^
    --role-arn iam_role ^
    --vpc-subnet-ids space_separated_list ^
    [--default-auth-scheme { NONE | IAM_AUTH }] ^
    [--auth ProxyAuthenticationConfig_JSON_string] ^
    [--vpc-security-group-ids space_separated_list] ^
    [--require-tls | --no-require-tls] ^
    [--idle-client-timeout value] ^
    [--debug-logging | --no-debug-logging] ^
    [--endpoint-network-type { IPV4 | IPV6 | DUAL }] ^
    [--target-connection-network-type { IPV4 | IPV6 }] ^
    [--tags comma_separated_list]
```

Nachstehend finden Sie ein Beispiel für den JSON-Wert der `--auth`-Option. Dieses Beispiel wendet auf jedes Secret einen anderen Client-Authentifizierungstyp an.

```
[
  {
    "Description": "proxy description 1",
    "AuthScheme": "SECRETS",
    "SecretArn": "arn:aws:secretsmanager:us-west-2:123456789123:secret/1234abcd-12ab-34cd-56ef-1234567890ab",
    "IAMAuth": "DISABLED",
    "ClientPasswordAuthType": "POSTGRES_SCRAM_SHA_256"
  },
  
  {
    "Description": "proxy description 2",
    "AuthScheme": "SECRETS",
    "SecretArn": "arn:aws:secretsmanager:us-west-2:111122223333:secret/1234abcd-12ab-34cd-56ef-1234567890cd",
    "IAMAuth": "DISABLED",
    "ClientPasswordAuthType": "POSTGRES_MD5"
    
  },
  
  {
    "Description": "proxy description 3",
    "AuthScheme": "SECRETS",
    "SecretArn": "arn:aws:secretsmanager:us-west-2:111122221111:secret/1234abcd-12ab-34cd-56ef-1234567890ef",
    "IAMAuth": "REQUIRED"
  }
  
]
```

Der `--endpoint-network-type`-Parameter gibt die IP-Version für den Proxy-Endpunkt an, über den Clients eine Verbindung zum Proxy herstellen. Folgende sind gültige Werte:
+ `IPV4`— Der Proxy-Endpunkt verwendet nur IPv4 Adressen (Standard).
+ `IPV6`— Der Proxy-Endpunkt verwendet nur IPv6 Adressen.
+ `DUAL`— Der Proxy-Endpunkt unterstützt IPv4 sowohl IPv6 Adressen als auch.

Der Parameter `--target-connection-network-type` gibt die IP-Version an, die der Proxy verwendet, um eine Verbindung zur Zieldatenbank herzustellen. Folgende sind gültige Werte:
+ `IPV4`— Der Proxy stellt über IPv4 Adressen eine Verbindung zur Datenbank her (Standard).
+ `IPV6`— Der Proxy stellt über IPv6 Adressen eine Verbindung zur Datenbank her.

Um Dual-Stack-Endpunkt-Netzwerktypen zu verwenden IPv6 , müssen Ihre VPC und Subnetze so konfiguriert sein, dass sie den ausgewählten Netzwerktyp unterstützen. Um den Netzwerktyp IPv6 Zielverbindung zu verwenden, muss Ihre Datenbank den Dual-Stack-Modus unterstützen.

**Tipp**  
 Wenn Sie noch nicht wissen, welches Subnetz für den `--vpc-subnet-ids` Parameter verwendet werden IDs soll, finden Sie unter [Einrichten der Netzwerkvoraussetzungen für RDS-Proxy](rds-proxy-network-prereqs.md) Beispiele, wie Sie sie finden können. 

**Anmerkung**  
Diese Sicherheitsgruppe muss den Zugriff auf die Datenbank zulassen, mit welcher der Proxy eine Verbindung herstellt. Dieselbe Sicherheitsgruppe wird für eingehenden Datenverkehr von Ihren Anwendungen zum Proxy und für ausgehenden Datenverkehr vom Proxy zur Datenbank verwendet. Angenommen, Sie verwenden dieselbe Sicherheitsgruppe für Ihre Datenbank und Ihren Proxy. Stellen Sie in diesem Fall sicher, dass Sie angeben, dass Ressourcen in dieser Sicherheitsgruppe mit anderen Ressourcen in derselben Sicherheitsgruppe kommunizieren können.  
Wenn Sie eine freigegebene VPC verwenden, können Sie die Standardsicherheitsgruppe für die VPC oder eine zu einem anderen Konto gehörende Gruppe nicht verwenden. Wählen Sie eine Sicherheitsgruppe aus, die zu Ihrem Konto gehört. Wenn keine vorhanden ist, erstellen Sie eine. Weitere Informationen zu dieser Einschränkung finden Sie unter [Arbeiten mit Shared VPCs](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-sharing.html#vpc-share-limitations). 

 Um die richtigen Verknüpfungen für den Proxy zu erstellen, verwenden Sie auch den [register-db-proxy-targets](https://docs.aws.amazon.com/cli/latest/reference/rds/register-db-proxy-targets.html)Befehl. Angabe des `default`-Zielgruppennamens. RDS-Proxy erstellt automatisch eine Zielgruppe mit diesem Namen, wenn Sie jeden Proxy erstellen. 

```
aws rds register-db-proxy-targets
    --db-proxy-name value
    [--target-group-name target_group_name]
    [--db-instance-identifiers space_separated_list]  # rds db instances, or
    [--db-cluster-identifiers cluster_id]        # rds db cluster (all instances)
```

## RDS-API
<a name="rds-proxy-creating.API"></a>

 Um einen RDS-Proxy zu erstellen, rufen Sie den Amazon RDS-API-Vorgang [Create](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBProxy.html) aufDBProxy. Sie übergeben einen Parameter mit der [AuthConfig](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_AuthConfig.html)Datenstruktur. 

 RDS-Proxy erstellt automatisch eine Zielgruppe mit dem Namen `default`, wenn Sie die einzelnen Proxys erstellen. Sie ordnen der Zielgruppe einen zu, indem Sie die Funktion [DBProxyZiele registrieren](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RegisterDBProxyTargets.html) aufrufen. 

**Wichtig**  
Wenn Sie die **IAM-Authentifizierung** für das Standardauthentifizierungsschema auswählen:  
Sie müssen die IAM-Datenbankauthentifizierung auf Ihren Zieldatenbank-Instances oder Clustern aktivieren, bevor der Proxy erfolgreich eine Verbindung herstellen kann.
Wenn Sie **IAM-Rolle erstellen** wählen, ist das Feld **Datenbankkonten für die IAM-Authentifizierung erforderlich**.
Wenn Sie eine vorhandene IAM-Rolle auswählen, aktualisiert die Konsole die Rolle nicht automatisch mit Datenbankverbindungsberechtigungen. Überprüfen Sie, ob die Rolle über die erforderlichen `rds-db:connect` Berechtigungen verfügt.

# Anzeigen eines Proxys
<a name="rds-proxy-viewing"></a>

 Nachdem Sie einen oder mehrere RDS-Proxys erstellt haben, können Sie ihn bzw. sie in der AWS-Managementkonsole, der AWS CLI oder der RDS-API anzeigen und verwalten. Sie können ihre Konfigurationsdetails überprüfen, die Leistung überwachen und festlegen, welche Proxys nach Bedarf geändert oder gelöscht werden sollen.

Damit Datenbankanwendungen den Datenverkehr über einen Proxy weiterleiten können, müssen Sie den Proxy-Endpunkt in der Verbindungszeichenfolge angeben.

## Konsole
<a name="rds-proxy-viewing.console"></a>

**So zeigen Sie einen Proxy in der Konsole an**

1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon-RDS-Konsole unter [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Wählen Sie im Navigationsbereich **Proxies (Proxys)**. 

1. Wählen Sie den Proxy-Namen aus, um seine Details anzuzeigen. 

1. Auf der Detailseite zeigt der Abschnitt **Zielgruppen** an, wie der Proxy einer spezifischen einem spezifischen Aurora-DB-Cluster zugeordnet ist. Sie können zur Standardzielgruppenseite navigieren, um eine detailliertere Ansicht dieser Zuordnung zu erhalten, einschließlich der Konfigurationseinstellungen, die bei der Proxy-Erstellung definiert wurden. Zu diesen Einstellungen gehören maximaler Verbindungsprozentsatz, Zeitüberschreitung für die Verbindung, Engine-Familie und Sitzungs-Pinning-Filter.

## CLI
<a name="rds-proxy-viewing.cli"></a>

 Um Ihren Proxy mit der CLI anzuzeigen, verwenden Sie den Befehl [describe-db-proxies](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-proxies.html). Standardmäßig werden alle Proxys im Besitz Ihres AWS-Kontos zurückgegeben. Um Details für einen einzelnen Proxy anzuzeigen, geben Sie seinen Namen mit dem Parameter `--db-proxy-name` an. 

```
aws rds describe-db-proxies [--db-proxy-name proxy_name]
```

 Verwenden Sie die folgenden Befehle, um die anderen Informationen anzuzeigen, die mit dem Proxy verknüpft sind. 

```
aws rds describe-db-proxy-target-groups  --db-proxy-name proxy_name

aws rds describe-db-proxy-targets --db-proxy-name proxy_name
```

 Verwenden Sie die folgende Befehlsfolge, um weitere Details zu den Elementen anzuzeigen, die mit dem Proxy verknüpft sind: 

1.  Um eine Liste von Proxys anzufordern, führen Sie [describe-db-proxies](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-proxies.html) aus. 

1.  Führen Sie [describe-db-proxy-target-groups](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-proxy-target-groups.html) `--db-proxy-name` aus, um Verbindungsparameter anzuzeigen, wie den maximalen Prozentsatz der Verbindungen, die der Proxy verwenden kann. Verwenden Sie den Namen des Proxys als Parameterwert. 

1.  Führen Sie zum Anzeigen der Details der des Aurora-DB-Clusters, die/der der zurückgegebenen Zielgruppe zugeordnet ist, [describe-db-proxy-targets](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-proxy-targets.html) aus. 

## RDS-API
<a name="rds-proxy-viewing.api"></a>

 Verwenden Sie den Vorgang [DescribeDBProxies](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBProxies.html), um Ihre Proxys mit der RDS-API anzuzeigen. Er gibt Werte des Datentyps [DBProxy](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DBProxy.html) zurück. 

 Um Details zu den Verbindungseinstellungen für den Proxy anzuzeigen, verwenden Sie die Proxy-Bezeichner aus diesem Rückgabewert mit der Operation [DescribeDBProxyTargetGroups](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBProxyTargetGroups.html). Er gibt Werte des Datentyps [DBProxyTargetGroup](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DBProxyTargetGroup.html) zurück. 

 Sie können die dem Proxy zugeordnete RDS-Instance oder das Aurora-DB-Cluster mithilfe der Operation [DescribeDBProxyTargets](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBProxyTargets.html) anzeigen. Er gibt Werte des Datentyps [DBProxyTarget](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DBProxyTarget.html) zurück. 

# Verbinden mit einer Datenbank über RDS-Proxy
<a name="rds-proxy-connecting"></a>

Sie stellen eine Verbindung mit einem Aurora-DB-Cluster oder einem Cluster, der Aurora Serverless v2 verwendet, über einen Proxy in der Regel auf die gleiche Weise her, wie Sie eine direkte Verbindung mit der Datenbank herstellen. Der Hauptunterschied besteht darin, dass Sie anstelle des Cluster-Endpunkts den Proxy-Endpunkt angeben. Standardmäßig sind alle Proxyverbindungen read/write fähig und verwenden die Writer-Instanz. Wenn Sie den Reader-Endpunkt normalerweise für schreibgeschützte Verbindungen verwenden, können Sie einen zusätzlichen schreibgeschützten Endpunkt für den Proxy erstellen. Diesen Endpunkt können Sie auf die gleiche Weise verwenden. Weitere Informationen finden Sie unter [Überblick über Proxy-Endpunkte](rds-proxy-endpoints.md#rds-proxy-endpoints-overview). 

**Topics**
+ [Mit Datenbankanmeldeinformationen eine Verbindung zu einer Datenbank herstellen](#rds-proxy-connecting-native)
+ [Mithilfe der IAM-Authentifizierung eine Verbindung zu einer Datenbank herstellen](#rds-proxy-connecting-iam)
+ [Überlegungen zum Herstellen einer Verbindung zu PostgreSQL](#rds-proxy-connecting-postgresql)

## Mit Datenbankanmeldeinformationen eine Verbindung zu einer Datenbank herstellen
<a name="rds-proxy-connecting-native"></a>

 Gehen Sie wie folgt vor, um mithilfe von Datenbankanmeldedaten eine Verbindung zu einem Proxy herzustellen: 

1.  Suchen Sie den Proxy-Endpunkt. Im finden Sie den AWS-Managementkonsole Endpunkt auf der Detailseite für den entsprechenden Proxy. Mit dem AWS CLI können Sie den [describe-db-proxies](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-proxies.html)Befehl verwenden. Im folgenden Beispiel wird gezeigt, wie dies geschieht. 

   ```
   # Add --output text to get output as a simple tab-separated list.
   $ aws rds describe-db-proxies --query '*[*].{DBProxyName:DBProxyName,Endpoint:Endpoint}'
   [
       [
           {
               "Endpoint": "the-proxy.proxy-demo.us-east-1.rds.amazonaws.com",
               "DBProxyName": "the-proxy"
           },
           {
               "Endpoint": "the-proxy-other-secret.proxy-demo.us-east-1.rds.amazonaws.com",
               "DBProxyName": "the-proxy-other-secret"
           },
           {
               "Endpoint": "the-proxy-rds-secret.proxy-demo.us-east-1.rds.amazonaws.com",
               "DBProxyName": "the-proxy-rds-secret"
           },
           {
               "Endpoint": "the-proxy-t3.proxy-demo.us-east-1.rds.amazonaws.com",
               "DBProxyName": "the-proxy-t3"
           }
       ]
   ]
   ```

1.  Geben Sie den Endpunkt als Hostparameter in der Verbindungszeichenfolge für Ihre Clientanwendung an. Geben Sie beispielsweise den Proxy-Endpunkt als Wert für die Option `mysql -h` oder `psql -h` an. 

1.  Geben Sie denselben Datenbankbenutzernamen und dasselbe Passwort an, die Sie normalerweise verwenden. 

## Mithilfe der IAM-Authentifizierung eine Verbindung zu einer Datenbank herstellen
<a name="rds-proxy-connecting-iam"></a>

 Wenn Sie die IAM-Authentifizierung mit RDS Proxy verwenden, haben Sie zwei Optionen für die Authentifizierung zwischen Ihrem Client und dem Proxy:
+ Richten Sie Ihre Datenbankbenutzer so ein, dass sie sich mit normalen Benutzernamen und Passwörtern authentifizieren. RDS Proxy ruft den Benutzernamen und das Passwort von Secrets Manager ab. Die Verbindung von RDS-Proxy zur zugrunde liegenden Datenbank erfolgt nicht über IAM.
+ Sie können auch die end-to-end IAM-Authentifizierung verwenden, bei der über den Proxy mithilfe von IAM eine Verbindung zu Ihrer Datenbank hergestellt wird, ohne dass Datenbankanmeldeinformationen erforderlich sind.

 Um mittels IAM-Authentifizierung eine Verbindung mit dem RDS-Proxy herzustellen, befolgen Sie das gleiche allgemeine Verfahren wie für die IAM-Authentifizierung mit einem Aurora-DB-Cluster. Allgemeine Informationen zur Verwendung von IAM finden Sie unter [Sicherheit in Amazon Aurora](UsingWithRDS.md). Wenn Sie die end-to-end IAM-Authentifizierung verwenden, stellen Sie Ihrem DB-Benutzer das IAM-Authentifizierungs-Plugin zur Verfügung. Siehe [Erstellen eines Datenbankkontos mithilfe der IAM-Authentifizierung](UsingWithRDS.IAMDBAuth.DBAccounts.md).

 Zu den Hauptunterschieden bei der IAM-Nutzung für RDS-Proxy gehören die folgenden: 
+ Bei der Standard-IAM-Authentifizierung verfügen Datenbankbenutzer über reguläre Anmeldeinformationen in der Datenbank. Sie richten Secrets Manager-Geheimnisse ein, die diese Benutzernamen und Passwörter enthalten, und autorisieren RDS-Proxy, die Anmeldeinformationen von Secrets Manager abzurufen. Die IAM-Authentifizierung gilt für die Verbindung zwischen Ihrem Clientprogramm und dem Proxy. Der Proxy authentifiziert sich dann bei der Datenbank mit den Anmeldeinformationen aus Benutzername und Passwort, die von Secrets Manager abgerufen wurden.
+ Mit der end-to-end IAM-Authentifizierung müssen Sie Secrets Manager nicht für Datenbankanmeldedaten konfigurieren. Die IAM-Authentifizierung gilt für die Verbindung zwischen dem Client zum Proxy und dem Proxy zur Datenbank.
+ Anstelle des Instance-, Cluster- oder Leser-Endpunkts geben Sie den Proxy-Endpunkt an. Weitere Informationen zum Proxy-Endpunkt finden Sie unter [Herstellen einer Verbindung zu Ihrem DB--Cluster mithilfe der IAM-Authentifizierung](UsingWithRDS.IAMDBAuth.Connecting.md).
+ Sie müssen Transport Layer Security (TLS)/Secure Sockets Layer (SSL) verwenden, wenn Sie mit IAM-Authentifizierung eine Verbindung zu einem Proxy herstellen.

Sie können einem bestimmten Benutzer Zugriff auf den Proxy gewähren, indem Sie die IAM-Richtlinie ändern. Ein Beispiel folgt.

```
"Resource": "arn:aws:rds-db:us-east-2:1234567890:dbuser:prx-ABCDEFGHIJKL01234/db_user"
```

**Tipp**  
Beachten Sie bei der Konfiguration der IAM-Authentifizierung für RDS-Proxyverbindungen die folgenden wichtigen Richtlinien, um Verbindungsprobleme zu vermeiden:  
Gewähren Sie die `rds_iam` Rolle nicht und behalten Sie gleichzeitig die allgemeine Passwortauthentifizierung für denselben Datenbankbenutzer oder dieselbe Rolle bei.
Denken Sie daran, dass Clients zwar mithilfe der IAM-Authentifizierung eine Verbindung zum RDS-Proxy herstellen, RDS-Proxy jedoch immer mithilfe der Kennwortauthentifizierung über Secrets Manager eine Verbindung zur Datenbank herstellt.
Wenn Sie häufig Verbindungsabbrüche und Verbindungswiederverbindungen feststellen, entfernen Sie alle vorhandenen `rds_iam` Berechtigungen für den Benutzer oder die Rolle und verwenden Sie nur die Kennwortauthentifizierung.
Stellen Sie sicher, dass Ihre Passwortrichtlinie die SCRAM-SHA-256-Anforderungen für sichere Zeichen erfüllt.
Die Kombination von IAM- und Kennwortauthentifizierungsmethoden für denselben Datenbankbenutzer kann zu Verbindungsinstabilität führen.

## Überlegungen zum Herstellen einer Verbindung zu PostgreSQL
<a name="rds-proxy-connecting-postgresql"></a>

Stellen Sie beim Erstellen eines neuen PostgreSQL-Datenbankbenutzers für die Verbindung mit dem RDS-Proxy sicher, dass Sie die Benutzerberechtigung `CONNECT` für die Datenbank gewähren. Ohne diese kann der Benutzer keine Verbindung herstellen. Weitere Informationen finden Sie unter [Hinzufügen eines neuen Datenbankbenutzers zu einer PostgreSQL-Datenbank bei Verwendung von RDS-Proxy](rds-proxy-new-db-user.md#rds-proxy-new-db-user-pg).

Wenn ein Client beginnt, eine Verbindung mit einer PostgreSQL-Datenbank herzustellen, sendet er eine Startmeldung. Diese Nachricht enthält Paare von Parameternamen und Wertzeichenfolgen. Weitere Informationen finden Sie unter `StartupMessage` in den [PostgreSQL-Nachrichtenformaten](https://www.postgresql.org/docs/current/protocol-message-formats.html) in der PostgreSQL-Dokumentation. 

Wenn Sie eine Verbindung über einen RDS-Proxy herstellen, kann die Startmeldung die folgenden aktuell erkannten Parameter enthalten: 
+  `user` 
+  `database`

 Die Startmeldung kann auch die folgenden zusätzlichen Laufzeitparameter enthalten: 
+ `[application\$1name](https://www.postgresql.org/docs/current/runtime-config-logging.html#GUC-APPLICATION-NAME) `
+ `[client\$1encoding](https://www.postgresql.org/docs/current/runtime-config-client.html#GUC-CLIENT-ENCODING) `
+ `[DateStyle](https://www.postgresql.org/docs/current/runtime-config-client.html#GUC-DATESTYLE) `
+ `[TimeZone](https://www.postgresql.org/docs/current/runtime-config-client.html#GUC-TIMEZONE) `
+  `[extra\$1float\$1digits](https://www.postgresql.org/docs/current/runtime-config-client.html#GUC-EXTRA-FLOAT-DIGITS) `
+  `[ search\$1path ](https://www.postgresql.org/docs/current/runtime-config-client.html#GUC-SEARCH-PATH)` 

 Weitere Informationen zum PostgreSQL-Messaging finden Sie im [Frontend/Backend-Protokoll](https://www.postgresql.org/docs/current/protocol.html) in der PostgreSQL-Dokumentation.

 Für PostgreSQL empfehlen wir bei Verwendung von JDBC Folgendes, um Pinning zu vermeiden:
+ Stellen Sie den JDBC-Verbindungsparameter `assumeMinServerVersion` mindestens auf `9.0` ein, um Pinning zu vermeiden. Dadurch wird verhindert, dass der JDBC-Treiber beim Starten der Verbindung einen zusätzlichen Roundtrip durchführt, wenn `SET extra_float_digits = 3` ausgeführt wird. 
+ Setzen Sie den JDBC-Verbindungsparameter `ApplicationName` auf `any/your-application-name`, um Pinning zu vermeiden. Dadurch wird verhindert, dass der JDBC-Treiber beim Starten der Verbindung einen zusätzlichen Roundtrip ausführt, wenn er ausführ `SET application_name = "PostgreSQL JDBC Driver"`. Beachten Sie, dass der JDBC-Parameter `ApplicationName`, der PostgreSQL-`StartupMessage`-Parameter aber `application_name` ist.

Weitere Informationen finden Sie unter [Vermeiden von Pinning beim RDS-Proxy](rds-proxy-pinning.md). Weitere Informationen zum Herstellen einer Verbindung mit JDBC finden Sie unter [Verbinden mit der Datenbank](https://jdbc.postgresql.org/documentation/setup/) in der PostgreSQL-Dokumentation.