

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.

# Tutorials für Amazon Managed Workflows für Apache Airflow
<a name="tutorials"></a>

Dieses Handbuch enthält step-by-step Anleitungen zur Verwendung und Konfiguration einer Amazon Managed Workflows for Apache Airflow Airflow-Umgebung.

**Topics**
+ [Tutorial: Konfiguration des privaten Netzwerkzugriffs mit einem AWS Client VPN](tutorials-private-network-vpn-client.md)
+ [Tutorial: Konfiguration des privaten Netzwerkzugriffs mit einem Linux Bastion Host](tutorials-private-network-bastion.md)
+ [Tutorial: Beschränken des Zugriffs eines Amazon MWAA-Benutzers auf eine Teilmenge von DAGs](limit-access-to-dags.md)
+ [Tutorial: Automatisieren Sie die Verwaltung Ihrer eigenen Umgebungsendpunkte auf Amazon MWAA](tutorials-customer-managed-endpoints.md)

# Tutorial: Konfiguration des privaten Netzwerkzugriffs mit einem AWS Client VPN
<a name="tutorials-private-network-vpn-client"></a>

Dieses Tutorial führt Sie durch die Schritte zum Erstellen eines VPN-Tunnels von Ihrem Computer zum Apache Airflow Airflow-Webserver für Ihre Amazon Managed Workflows for Apache Airflow Airflow-Umgebung. Um über einen VPN-Tunnel eine Verbindung zum Internet herzustellen, müssen Sie zunächst einen Endpunkt erstellen. AWS Client VPN Nach der Einrichtung fungiert ein Client-VPN-Endpunkt als VPN-Server, der eine sichere Verbindung von Ihrem Computer zu den Ressourcen in Ihrer VPC ermöglicht. Anschließend stellen Sie von Ihrem Computer aus mithilfe von [AWS Client VPN for Desktop eine Verbindung zum](https://aws.amazon.com/vpn/client-vpn-download/) Client VPN her.

**Topics**
+ [Privates Netzwerk](#private-network-vpn-onconsole)
+ [Anwendungsfälle](#private-network-vpn-usecases)
+ [Bevor Sie beginnen](#private-network-vpn-prereqs)
+ [Ziele](#private-network-vpn-objectives)
+ [(Optional) Erster Schritt: Identifizieren Sie Ihre VPC, CIDR-Regeln und VPC-Sicherheit](#private-network-vpn-optional)
+ [Schritt zwei: Erstellen Sie die Server- und Client-Zertifikate](#private-network-vpn-certs)
+ [Schritt drei: Speichern Sie die CloudFormation Vorlage lokal](#private-network-vpn-template)
+ [Schritt 4: Erstellen Sie den CloudFormation Client-VPN-Stack](#private-network-vpn-create)
+ [Fünfter Schritt: Subnetze mit Ihrem Client VPN verknüpfen](#private-network-vpn-associate)
+ [Schritt 6: Fügen Sie Ihrem Client VPN eine Regel für den Autorisierungseingang hinzu](#private-network-vpn-autho)
+ [Schritt 7: Laden Sie die Client-VPN-Endpunktkonfigurationsdatei herunter](#private-network-vpn-download)
+ [Schritt acht: Stellen Sie eine Verbindung zum her AWS Client VPN](#private-network-vpn-connect)
+ [Als nächstes](#create-vpc-vpn-next-up)

## Privates Netzwerk
<a name="private-network-vpn-onconsole"></a>

In diesem Tutorial wird davon ausgegangen, dass Sie den **privaten Netzwerkzugriffsmodus** für Ihren Apache Airflow Airflow-Webserver ausgewählt haben.

![\[Dieses Bild zeigt die Architektur für eine Amazon MWAA-Umgebung mit einem privaten Webserver.\]](http://docs.aws.amazon.com/de_de/mwaa/latest/userguide/images/mwaa-private-web-server.png)


Der private Netzwerkzugriffsmodus beschränkt den Zugriff auf die Apache Airflow Airflow-Benutzeroberfläche auf Benutzer *in Ihrer Amazon VPC*, denen Zugriff auf die [IAM-Richtlinie für](access-policies.md) Ihre Umgebung gewährt wurde.

Wenn Sie eine Umgebung mit privatem Webserverzugriff erstellen, müssen Sie alle Ihre Abhängigkeiten in ein Python-Radarchiv (`.whl`) packen und dann auf das `.whl` in Ihrem `requirements.txt` verweisen. Anweisungen zum Paketieren und Installieren Ihrer Abhängigkeiten mit Wheel finden Sie unter [Abhängigkeiten mit Python Wheel verwalten](best-practices-dependencies.md#best-practices-dependencies-python-wheels).

Die folgende Abbildung zeigt, wo Sie die Option **Privates Netzwerk** auf der Amazon MWAA-Konsole finden.

![\[Dieses Bild zeigt, wo sich die Option Privates Netzwerk auf der Amazon MWAA-Konsole befindet.\]](http://docs.aws.amazon.com/de_de/mwaa/latest/userguide/images/mwaa-console-private-network.png)


## Anwendungsfälle
<a name="private-network-vpn-usecases"></a>

Sie können dieses Tutorial verwenden, bevor oder nachdem Sie eine Amazon MWAA-Umgebung erstellt haben. Sie müssen dieselbe Amazon VPC, dieselben VPC-Sicherheitsgruppen und dieselben privaten Subnetze wie Ihre Umgebung verwenden. **Wenn Sie dieses Tutorial verwenden, nachdem Sie eine Amazon MWAA-Umgebung erstellt haben, können Sie nach Abschluss der Schritte zur Amazon MWAA-Konsole zurückkehren und den Zugriffsmodus Ihres Apache Airflow Airflow-Webservers auf Privates Netzwerk ändern.**

## Bevor Sie beginnen
<a name="private-network-vpn-prereqs"></a>

1. Suchen Sie nach Benutzerberechtigungen. Stellen Sie sicher, dass Ihr Konto in AWS Identity and Access Management (IAM) über ausreichende Berechtigungen zum Erstellen und Verwalten von VPC-Ressourcen verfügt.

1. Verwenden Sie Ihre Amazon MWAA VPC. In diesem Tutorial wird davon ausgegangen, dass Sie das Client VPN einer vorhandenen VPC zuordnen. Die Amazon VPC muss sich in derselben Amazon AWS-Region MWAA-Umgebung befinden und über zwei private Subnetze verfügen. Wenn Sie keine Amazon VPC erstellt haben, verwenden Sie die CloudFormation Vorlage in[Option drei: Erstellen eines Amazon VPC-Netzwerks *ohne* Internetzugang](vpc-create.md#vpc-create-template-private-only).

## Ziele
<a name="private-network-vpn-objectives"></a>

In diesem Tutorial führen Sie folgende Aufgaben durch:

1. Erstellen Sie einen AWS Client VPN Endpunkt mithilfe einer CloudFormation Vorlage für eine bestehende Amazon VPC.

1. Generieren Sie Server- und Client-Zertifikate und Schlüssel und laden Sie dann das Serverzertifikat und den Schlüssel AWS Certificate Manager in dieselbe AWS-Region Amazon MWAA-Umgebung hoch.

1. Laden Sie eine Client-VPN-Endpunktkonfigurationsdatei für Ihr Client VPN herunter, ändern Sie sie und verwenden Sie die Datei, um ein VPN-Profil für die Verbindung mit dem Client VPN für Desktop zu erstellen.

## (Optional) Erster Schritt: Identifizieren Sie Ihre VPC, CIDR-Regeln und VPC-Sicherheit
<a name="private-network-vpn-optional"></a>

Im folgenden Abschnitt wird beschrieben, wie Sie IDs für Ihre Amazon VPC und Ihre VPC-Sicherheitsgruppe suchen und wie Sie die CIDR-Regeln identifizieren können, die Sie für die Erstellung Ihres Client VPN in den nachfolgenden Schritten benötigen.

### Identifizieren Sie Ihre CIDR-Regeln
<a name="private-network-vpn-cidr"></a>

Im folgenden Abschnitt wird erklärt, wie Sie die CIDR-Regeln identifizieren, die Sie für die Erstellung Ihres Client VPN benötigen.

**Um den CIDR für Ihr Client VPN zu identifizieren**

1. Öffnen [Sie die VPCs Seite „Ihr Amazon“](https://console.aws.amazon.com/vpc/home#/vpcs:) in der Amazon VPC-Konsole.

1. Verwenden Sie die Regionsauswahl in der Navigationsleiste, um dasselbe AWS-Region wie bei einer Amazon MWAA-Umgebung auszuwählen.

1. Wählen Sie Ihre Amazon VPC.

1. Angenommen, CIDRs für Ihre privaten Subnetze gelten:
   + Privates Subnetz 1:10.192.10.0 `/24`
   + Privates Subnetz 2:10.192.11.0 `/24`

   Wenn die CIDR für Ihre Amazon VPC 10.192.0.0 ist`/16`, dann wäre die ** IPv4 Client-CIDR, die Sie für Ihr Client** VPN angeben würden, 10.192.0.0. `/22`

1. Speichern Sie diesen CIDR-Wert und den Wert Ihrer VPC-ID für nachfolgende Schritte.

### Identifizieren Sie Ihre VPC und Sicherheitsgruppen
<a name="private-network-vpn-sec"></a>

Im folgenden Abschnitt wird erklärt, wie Sie die ID Ihrer Amazon VPC und Ihrer Sicherheitsgruppen finden, die Sie für die Erstellung Ihres Client VPN benötigen.

**Anmerkung**  
Möglicherweise verwenden Sie mehr als eine Sicherheitsgruppe. In den nachfolgenden Schritten müssen Sie alle Sicherheitsgruppen Ihrer VPC angeben.

**Um die Sicherheitsgruppen zu identifizieren**

1. Öffnen Sie die [Seite Sicherheitsgruppen](https://console.aws.amazon.com/vpc/home#/securityGroups:) in der Amazon VPC-Konsole.

1. Verwenden Sie die Regionsauswahl in der Navigationsleiste, um die auszuwählen. AWS-Region

1. Suchen Sie in der **VPC-ID nach der Amazon VPC** und identifizieren Sie die Sicherheitsgruppen, die der VPC zugeordnet sind.

1. Speichern Sie die ID Ihrer Sicherheitsgruppen und VPC für nachfolgende Schritte.

## Schritt zwei: Erstellen Sie die Server- und Client-Zertifikate
<a name="private-network-vpn-certs"></a>

Client VPN-Endpunkte unterstützen bei RSA nur Schlüsselgrößen von 1024-Bit und 2048-Bit. Im folgenden Abschnitt wird erklärt, wie Sie OpenVPN easy-rsa verwenden, um die Server- und Client-Zertifikate und Schlüssel zu generieren und die Zertifikate dann mit der () auf ACM hochzuladen. AWS Command Line Interface AWS CLI

**Um die Client-Zertifikate zu erstellen**

1. Folgen Sie diesen schnellen Schritten, um die Zertifikate zu erstellen und über den AWS CLI Abschnitt [Client-Authentifizierung und Autorisierung: Gegenseitige Authentifizierung](https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/client-authentication.html#mutual) auf ACM hochzuladen.

1. In diesen Schritten **müssen** Sie beim Hochladen Ihrer Server- und Client-Zertifikate im AWS CLI Befehl dasselbe angeben AWS-Region wie eine Amazon MWAA-Umgebung. Im Folgenden finden Sie einige Beispiele dafür, wie Sie die Region in diesen Befehlen angeben können:

   1.   
**Example Region für das Serverzertifikat**  

      ```
      aws acm import-certificate --certificate fileb://server.crt --private-key fileb://server.key --certificate-chain fileb://ca.crt --region us-west-2
      ```

   1.   
**Example Region für das Client-Zertifikat**  

      ```
      aws acm import-certificate --certificate fileb://client1.domain.tld.crt --private-key fileb://client1.domain.tld.key --certificate-chain fileb://ca.crt --region us-west-2
      ```

   1. Speichern Sie nach diesen Schritten den in der AWS CLI Antwort zurückgegebenen Wert für das Serverzertifikat und das Client-Zertifikat ARNs. Sie geben diese ARNs in Ihrer CloudFormation Vorlage an, um das Client VPN zu erstellen.

1. In diesen Schritten werden ein Client-Zertifikat und ein privater Schlüssel auf Ihrem Computer gespeichert. Hier ist ein Beispiel dafür, wo Sie diese Anmeldeinformationen finden können:

   1.   
**Example auf macOS**  

      Auf macOS werden die Inhalte unter gespeichert`/Users/your-user/custom_folder`. Wenn Sie alle (`ls -a`) Inhalte dieses Verzeichnisses auflisten, erhalten Sie etwas Ähnliches wie das Folgende:

      ```
      .
      ..
      ca.crt
      client1.domain.tld.crt
      client1.domain.tld.key
      server.crt
      server.key
      ```

   1. Speichern Sie nach diesen Schritten den Inhalt oder notieren Sie sich den Speicherort des Client-Zertifikats unter und den privaten Schlüssel in`client1.domain.tld.key`. `client1.domain.tld.crt` Sie werden diese Werte zur Konfigurationsdatei für Ihr Client VPN hinzufügen.

## Schritt drei: Speichern Sie die CloudFormation Vorlage lokal
<a name="private-network-vpn-template"></a>

Der folgende Abschnitt enthält die CloudFormation Vorlage zum Erstellen des Client VPN. Sie müssen dieselben Amazon VPC, VPC-Sicherheitsgruppen und privaten Subnetze wie in Ihrer Amazon MWAA-Umgebung angeben.
+ Kopieren Sie den Inhalt der folgenden Vorlage und speichern Sie ihn lokal unter. `mwaa_vpn_client.yaml` Sie können [die Vorlage auch herunterladen](./samples/mwaa_vpn_client.zip).

  Ersetzen Sie die folgenden Werte:
  + **YOUR\$1CLIENT\$1ROOT\$1CERTIFICATE\$1ARN**— Der ARN für Ihr **client1.domain.tld-Zertifikat** in. `ClientRootCertificateChainArn`
  + **YOUR\$1SERVER\$1CERTIFICATE\$1ARN**— Der ARN für Ihr **Serverzertifikat** in`ServerCertificateArn`.
  + Die IPv4 Client-CIDR-Regel in`ClientCidrBlock`. Eine CIDR-Regel von `10.192.0.0/22` wird bereitgestellt.
  + Ihre Amazon VPC-ID in`VpcId`. Eine VPC von `vpc-010101010101` wird bereitgestellt.
  + Ihre VPC-Sicherheitsgruppe IDs in`SecurityGroupIds`. Eine Sicherheitsgruppe von `sg-0101010101` wird bereitgestellt.

  ```
  AWSTemplateFormatVersion: 2010-09-09
  Description: This template deploys a VPN Client Endpoint.
  Resources:
    ClientVpnEndpoint:
      Type: 'AWS::EC2::ClientVpnEndpoint'
      Properties:
        AuthenticationOptions:
          - Type: "certificate-authentication"
            MutualAuthentication:
              ClientRootCertificateChainArn: "YOUR_CLIENT_ROOT_CERTIFICATE_ARN"
        ClientCidrBlock: 10.192.0.0/22
        ClientConnectOptions:
          Enabled: false
        ConnectionLogOptions:
          Enabled: false
        Description: "MWAA Client VPN"
        DnsServers: []
        SecurityGroupIds:
          - sg-0101010101
        SelfServicePortal: ''
        ServerCertificateArn: "YOUR_SERVER_CERTIFICATE_ARN"
        SplitTunnel: true
        TagSpecifications:
          - ResourceType: "client-vpn-endpoint"
            Tags:
            - Key: Name
              Value: MWAA-Client-VPN
        TransportProtocol: udp
        VpcId: vpc-010101010101
        VpnPort: 443
  ```

**Anmerkung**  
Wenn Sie mehr als eine Sicherheitsgruppe für Ihre Umgebung verwenden, können Sie mehrere Sicherheitsgruppen im folgenden Format angeben:  

```
SecurityGroupIds:
 - sg-0112233445566778b
 - sg-0223344556677889f
```

## Schritt 4: Erstellen Sie den CloudFormation Client-VPN-Stack
<a name="private-network-vpn-create"></a>

**Um das zu erstellen AWS Client VPN**

1. Öffnen Sie die [AWS CloudFormation -Konsole](https://console.aws.amazon.com/cloudformation/home#).

1. Wählen Sie **Vorlage ist fertig**, **Laden Sie eine Vorlagendatei** hoch.

1. **Wählen Sie Datei auswählen** und wählen Sie Ihre `mwaa_vpn_client.yaml` Datei aus.

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

1. Wählen Sie die Bestätigung aus und wählen Sie dann Stapel **erstellen**.

## Fünfter Schritt: Subnetze mit Ihrem Client VPN verknüpfen
<a name="private-network-vpn-associate"></a>

**Um private Subnetze dem zuzuordnen AWS Client VPN**

1. Öffnen Sie die [Amazon VPC-Konsole](https://console.aws.amazon.com/vpc/home#).

1. Wählen Sie die Seite **Client VPN Endpoints**.

1. Wählen Sie Ihr Client VPN und dann auf der Registerkarte **Verknüpfungen die Option **Assoziieren**** aus.

1. Wählen Sie in der Drop-down-Liste Folgendes aus:
   + Ihre Amazon VPC in **VPC**.
   + Eines Ihrer privaten Subnetze unter **Wählen Sie ein Subnetz** zum Zuordnen aus.

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

**Anmerkung**  
Es dauert mehrere Minuten, bis die VPC und das Subnetz dem Client VPN zugeordnet sind.

## Schritt 6: Fügen Sie Ihrem Client VPN eine Regel für den Autorisierungseingang hinzu
<a name="private-network-vpn-autho"></a>

Sie müssen Ihrem Client VPN eine Regel für den Autorisierungseingang hinzufügen, die die CIDR-Regel für Ihre VPC verwendet. *Wenn Sie bestimmte Benutzer oder Gruppen aus Ihrer Active Directory-Gruppe oder Ihrem SAML-basierten Identitätsanbieter (IdP) autorisieren möchten, lesen Sie die [Autorisierungsregeln im Client-VPN-Handbuch](https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/cvpn-working-rules.html).*

**Um das CIDR zum hinzuzufügen AWS Client VPN**

1. Öffnen Sie die [Amazon VPC-Konsole](https://console.aws.amazon.com/vpc/home#).

1. Wählen Sie die Seite **Client VPN Endpoints**.

1. Wählen Sie Ihr Client VPN aus und wählen Sie dann auf der Registerkarte **Autorisierung** die Option **Ingress autorisieren**.

1. Machen Sie folgende Angaben:
   + Die CIDR-Regel Ihrer Amazon VPC im **Zielnetzwerk soll** aktiviert werden. Beispiel:

     ```
     10.192.0.0/16
     ```
   + Wählen Sie **unter Zugriff gewähren für die Option Allen Benutzern** **Zugriff gewähren** aus.
   + **Geben Sie im Feld Beschreibung einen aussagekräftigen Namen ein.**

1. Wählen Sie **Autorisierungsregel hinzufügen**.

**Anmerkung**  
Abhängig von den Netzwerkkomponenten für Ihre Amazon VPC müssen Sie diese Authorization Ingress Rule möglicherweise auch in Ihre Network Access Control List (NACL) aufnehmen.

## Schritt 7: Laden Sie die Client-VPN-Endpunktkonfigurationsdatei herunter
<a name="private-network-vpn-download"></a>

**So laden Sie die Konfigurationsdatei herunter**

1. Folgen Sie diesen schnellen Schritten, um die Client-VPN-Konfigurationsdatei unter [Laden Sie die Client-VPN-Endpunktkonfigurationsdatei](https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/cvpn-getting-started.html#cvpn-getting-started-config) herunterzuladen.

1. In diesen Schritten werden Sie aufgefordert, dem DNS-Namen Ihres Client-VPN-Endpunkts eine Zeichenfolge voranzustellen. Ein Beispiel:

   1.   
**Example DNS-Name des Endpunkts**  

     Wenn der DNS-Name Ihres Client-VPN-Endpunkts wie folgt lautet:

     ```
     remote cvpn-endpoint-0909091212aaee1.prod.clientvpn.us-west-1.amazonaws.com 443
     ```

     Sie können eine Zeichenfolge hinzufügen, um Ihren Client-VPN-Endpunkt wie folgt zu identifizieren:

     ```
     remote mwaavpn.cvpn-endpoint-0909091212aaee1.prod.clientvpn.us-west-1.amazonaws.com 443
     ```

1. In diesen Schritten werden Sie aufgefordert, den Inhalt des Client-Zertifikats zwischen einem neuen Satz von `<cert></cert>` Tags und den Inhalt des privaten Schlüssels zwischen einem neuen Satz von `<key></key>` Tags hinzuzufügen. Ein Beispiel:

   1. Öffnen Sie eine Befehlszeile und ändern Sie die Verzeichnisse zum Speicherort Ihres Client-Zertifikats und Ihres privaten Schlüssels.

   1.   
**Example macOS client1.domain.tld.crt**  

      Um den Inhalt der `client1.domain.tld.crt` Datei auf macOS anzuzeigen, können Sie verwenden`cat client1.domain.tld.crt`.

      Kopieren Sie den Wert aus dem Terminal und fügen Sie ihn `downloaded-client-config.ovpn` wie folgt ein:

      ```
      ZZZ1111dddaBBB
      -----END CERTIFICATE-----
      </ca>
      <cert>
      -----BEGIN CERTIFICATE-----
      YOUR client1.domain.tld.crt
      -----END CERTIFICATE-----                
      </cert>
      ```

   1.   
**Example macOS client1.domain.tld.key**  

      Um den Inhalt von anzuzeigen, können Sie verwenden. `client1.domain.tld.key` `cat client1.domain.tld.key`

      Kopieren Sie den Wert aus dem Terminal und fügen Sie ihn `downloaded-client-config.ovpn` wie folgt ein:

      ```
      ZZZ1111dddaBBB
      -----END CERTIFICATE-----
      </ca>
      <cert>
      -----BEGIN CERTIFICATE-----
      YOUR client1.domain.tld.crt
      -----END CERTIFICATE-----                
      </cert>
      <key>
      -----BEGIN CERTIFICATE-----
      YOUR client1.domain.tld.key
      -----END CERTIFICATE-----                
      </key>
      ```

## Schritt acht: Stellen Sie eine Verbindung zum her AWS Client VPN
<a name="private-network-vpn-connect"></a>

Der Client für AWS Client VPN wird kostenlos zur Verfügung gestellt. Sie können Ihren Computer direkt mit verbinden, AWS Client VPN um ein end-to-end VPN-Erlebnis zu nutzen.

**So stellen Sie eine Verbindung zum Client VPN her**

1. Laden Sie das [AWS Client VPN für Desktop](https://aws.amazon.com/vpn/client-vpn-download/) herunter und installieren Sie es.

1. Öffnen Sie das AWS Client VPN.

1. Wählen Sie im VPN-Client-Menü **Datei**, **Verwaltete Profile** aus.

1. Wählen **Sie Profil hinzufügen** und dann die`downloaded-client-config.ovpn`.

1. Geben Sie im Feld **Anzeigename einen aussagekräftigen Namen** ein.

1. Wählen Sie **Profil hinzufügen**, **Fertig**.

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

Nachdem Sie sich mit dem Client VPN verbunden haben, müssen Sie die Verbindung zu anderen Verbindungen trennen VPNs , um auf Ressourcen in Ihrer Amazon VPC zugreifen zu können.

**Anmerkung**  
Möglicherweise müssen Sie den Client beenden und erneut beginnen, bevor Sie eine Verbindung herstellen können.

## Als nächstes
<a name="create-vpc-vpn-next-up"></a>
+ Erfahren Sie in, wie Sie eine Amazon MWAA-Umgebung erstellen. [Erste Schritte mit von Amazon verwalteten Workflows für Apache Airflow](get-started.md) Sie müssen eine Umgebung in derselben Umgebung AWS-Region wie das Client VPN erstellen und dieselbe VPC, dieselben privaten Subnetze und dieselbe Sicherheitsgruppe wie das Client VPN verwenden.

# Tutorial: Konfiguration des privaten Netzwerkzugriffs mit einem Linux Bastion Host
<a name="tutorials-private-network-bastion"></a>

Dieses Tutorial führt Sie durch die Schritte zum Erstellen eines SSH-Tunnels von Ihrem Computer zum Apache Airflow Airflow-Webserver für Ihre Amazon Managed Workflows for Apache Airflow Airflow-Umgebung. Es wird davon ausgegangen, dass Sie bereits eine Amazon MWAA-Umgebung erstellt haben. Nach der Einrichtung fungiert ein Linux Bastion Host als Jump-Server, der eine sichere Verbindung von Ihrem Computer zu den Ressourcen in Ihrer VPC ermöglicht. Anschließend verwenden Sie ein SOCKS-Proxy-Management-Add-on, um die Proxyeinstellungen in Ihrem Browser für den Zugriff auf Ihre Apache Airflow Airflow-Benutzeroberfläche zu steuern.

**Topics**
+ [Privates Netzwerk](#private-network-lb-onconsole)
+ [Anwendungsfälle](#private-network-lb-usecases)
+ [Bevor Sie beginnen](#private-network-lb-prereqs)
+ [Ziele](#private-network-lb-objectives)
+ [Erster Schritt: Erstellen Sie die Bastion-Instanz](#private-network-lb-create-bastion)
+ [Schritt zwei: Erstellen Sie den SSH-Tunnel](#private-network-lb-create-test)
+ [Schritt drei: Konfigurieren Sie die Bastion-Sicherheitsgruppe als Regel für eingehenden Datenverkehr](#private-network-lb-create-sgsource)
+ [Schritt 4: Kopieren Sie die Apache Airflow Airflow-URL](#private-network-lb-view-env)
+ [Fünfter Schritt: Proxyeinstellungen konfigurieren](#private-network-lb-browser-extension)
+ [Schritt 6: Öffnen Sie die Apache Airflow Airflow-Benutzeroberfläche](#private-network-lb-open)
+ [Als nächstes](#bastion-next-up)

## Privates Netzwerk
<a name="private-network-lb-onconsole"></a>

In diesem Tutorial wird davon ausgegangen, dass Sie den **privaten Netzwerkzugriffsmodus** für Ihren Apache Airflow Airflow-Webserver ausgewählt haben.

![\[Dieses Bild zeigt die Architektur für eine Amazon MWAA-Umgebung mit einem privaten Webserver.\]](http://docs.aws.amazon.com/de_de/mwaa/latest/userguide/images/mwaa-private-web-server.png)


Der private Netzwerkzugriffsmodus beschränkt den Zugriff auf die Apache Airflow Airflow-Benutzeroberfläche auf Benutzer *in Ihrer Amazon VPC*, denen Zugriff auf die [IAM-Richtlinie für](access-policies.md) Ihre Umgebung gewährt wurde.

Wenn Sie eine Umgebung mit privatem Webserverzugriff erstellen, müssen Sie alle Ihre Abhängigkeiten in ein Python-Radarchiv (`.whl`) packen und dann auf das `.whl` in Ihrem `requirements.txt` verweisen. Anweisungen zum Paketieren und Installieren Ihrer Abhängigkeiten mit Wheel finden Sie unter [Abhängigkeiten mit Python Wheel verwalten](best-practices-dependencies.md#best-practices-dependencies-python-wheels).

Die folgende Abbildung zeigt, wo Sie die Option **Privates Netzwerk** auf der Amazon MWAA-Konsole finden.

![\[Dieses Bild zeigt, wo sich die Option Privates Netzwerk auf der Amazon MWAA-Konsole befindet.\]](http://docs.aws.amazon.com/de_de/mwaa/latest/userguide/images/mwaa-console-private-network.png)


## Anwendungsfälle
<a name="private-network-lb-usecases"></a>

Sie können dieses Tutorial verwenden, nachdem Sie eine Amazon MWAA-Umgebung erstellt haben. Sie müssen dieselbe Amazon VPC, dieselben VPC-Sicherheitsgruppen und dieselben öffentlichen Subnetze wie Ihre Umgebung verwenden.

## Bevor Sie beginnen
<a name="private-network-lb-prereqs"></a>

1. Suchen Sie nach Benutzerberechtigungen. Stellen Sie sicher, dass Ihr Konto in AWS Identity and Access Management (IAM) über ausreichende Berechtigungen zum Erstellen und Verwalten von VPC-Ressourcen verfügt.

1. Verwenden Sie Ihre Amazon MWAA VPC. In diesem Tutorial wird davon ausgegangen, dass Sie den Bastion-Host einer vorhandenen VPC zuordnen. Die Amazon VPC muss sich in derselben Region wie Ihre Amazon MWAA-Umgebung befinden und über zwei private Subnetze verfügen, wie unter definiert. [Erstellen Sie das VPC-Netzwerk](vpc-create.md)

1. Erstellen Sie einen SSH-Schlüssel. Sie müssen einen Amazon EC2 SSH-Schlüssel (**.pem**) in derselben Region wie Ihre Amazon MWAA-Umgebung erstellen, um eine Verbindung zu den virtuellen Servern herzustellen. Wenn Sie keinen SSH-Schlüssel haben, finden Sie weitere Informationen unter [Ein key pair erstellen oder importieren](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html#prepare-key-pair) im * EC2 Amazon-Benutzerhandbuch*.

## Ziele
<a name="private-network-lb-objectives"></a>

In diesem Tutorial führen Sie folgende Aufgaben durch:

1. Erstellen Sie eine Linux Bastion Host-Instanz mithilfe einer [CloudFormation Vorlage für eine bestehende VPC](https://fwd.aws/vWMxm).

1. Autorisieren Sie eingehenden Datenverkehr zur Sicherheitsgruppe der Bastion-Instance mithilfe einer Eingangsregel am Port. `22`

1. Autorisieren Sie eingehenden Datenverkehr von der Sicherheitsgruppe einer Amazon MWAA-Umgebung zur Sicherheitsgruppe der Bastion-Instance.

1. Erstellen Sie einen SSH-Tunnel zur Bastion-Instance.

1. Installieren und konfigurieren Sie das FoxyProxy Add-on für den Firefox-Browser, um auf die Apache Airflow Airflow-Benutzeroberfläche zuzugreifen.

## Erster Schritt: Erstellen Sie die Bastion-Instanz
<a name="private-network-lb-create-bastion"></a>

Im folgenden Abschnitt werden die Schritte zum Erstellen der Linux-Bastion-Instanz mithilfe einer [CloudFormation Vorlage für eine bestehende VPC](https://fwd.aws/vWMxm) auf der CloudFormation Konsole beschrieben.

**Um den Linux Bastion Host zu erstellen**

1. Öffnen Sie die Seite [Deploy Quick Start](https://fwd.aws/Jwzqv) auf der CloudFormation Konsole.

1. Verwenden Sie die Regionsauswahl in der Navigationsleiste, um dieselbe Region AWS-Region wie Ihre Amazon MWAA-Umgebung auszuwählen.

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

1. Geben Sie einen Namen in das Textfeld **Stackname** ein, z. B. `mwaa-linux-bastion`

1. Wählen Sie im Bereich **Parameter**, **Netzwerkkonfiguration** die folgenden Optionen aus:

   1. Wählen Sie die **VPC-ID** Ihrer Amazon MWAA-Umgebung.

   1. Wählen Sie die **Public Subnet** 1-ID Ihrer Amazon MWAA-Umgebung.

   1. Wählen Sie die **Public Subnet** 2-ID Ihrer Amazon MWAA-Umgebung.

   1. Geben Sie im Feld **Allowed** Bastion External Access CIDR den engstmöglichen Adressbereich (z. B. einen internen CIDR-Bereich) ein.
**Anmerkung**  
Die einfachste Methode, einen Bereich zu identifizieren, besteht darin, denselben CIDR-Bereich wie Ihre öffentlichen Subnetze zu verwenden. Die öffentlichen Subnetze in der CloudFormation Vorlage auf der [Erstellen Sie das VPC-Netzwerk](vpc-create.md) Seite lauten beispielsweise und. `10.192.10.0/24` `10.192.11.0/24`

1. Wählen Sie im ** EC2 Amazon-Konfigurationsbereich** Folgendes aus:

   1. Wählen Sie Ihren SSH-Schlüssel in der Dropdownliste unter Name des **Schlüsselpaars** aus.

   1. Geben Sie einen Namen in das Feld **Bastion Host** Name ein.

   1. Wählen Sie **true** für **TCP-Weiterleitung**.
**Warnung**  
Die TCP-Weiterleitung muss in diesem Schritt auf **true** gesetzt werden. Andernfalls können Sie im nächsten Schritt keinen SSH-Tunnel erstellen.

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

1. **Wählen Sie die Bestätigung aus und wählen Sie dann Stack erstellen aus.**

Weitere Informationen zur Architektur Ihres Linux Bastion Hosts finden Sie unter [Linux Bastion Hosts on the AWS](https://docs.aws.amazon.com/quickstart/latest/linux-bastion/architecture.html) Cloud: Architektur.

## Schritt zwei: Erstellen Sie den SSH-Tunnel
<a name="private-network-lb-create-test"></a>

Die folgenden Schritte beschreiben, wie Sie den SSH-Tunnel zu Ihrer Linux-Bastion erstellen. Ein SSH-Tunnel empfängt die Anfrage von Ihrer lokalen IP-Adresse zur Linux-Bastion, weshalb die TCP-Weiterleitung für die Linux-Bastion in den vorherigen Schritten auf TCP-Forwarding für die Linux-Bastion eingestellt wurde. `true`

------
#### [ macOS/Linux ]

**Um einen Tunnel über die Befehlszeile zu erstellen**

1. Öffnen Sie die [Instance-Seite](https://console.aws.amazon.com/ec2/v2/home#/Instances:) auf der EC2 Amazon-Konsole.

1. Wählen einer Instance

1. Kopieren Sie die Adresse in **Public IPv4 DNS**. Beispiel, `ec2-4-82-142-1.compute-1.amazonaws.com`.

1. Navigieren Sie in der Befehlszeile zu dem Verzeichnis, in dem Ihr SSH-Schlüssel gespeichert ist.

1. Führen Sie den folgenden Befehl aus, um mit SSH eine Verbindung zur Bastion-Instanz herzustellen. Ersetzen Sie den Beispielwert durch Ihren SSH-Schlüsselnamen in. `mykeypair.pem`

   ```
   ssh -i mykeypair.pem -N -D 8157 ec2-user@YOUR_PUBLIC_IPV4_DNS
   ```

------
#### [ Windows (PuTTY) ]

**Um einen Tunnel mit PuTTY zu erstellen**

1. Öffnen Sie die [Instance-Seite](https://console.aws.amazon.com/ec2/v2/home#/Instances:) auf der EC2 Amazon-Konsole.

1. Wählen einer Instance

1. Kopieren Sie die Adresse in **Public IPv4 DNS**. Beispiel, `ec2-4-82-142-1.compute-1.amazonaws.com`.

1. Öffnen Sie [PuTTY](https://www.putty.org/) und wählen Sie **Sitzung**.

1. **Geben Sie den Hostnamen im Feld **Hostname** als ec2-user@ *YOUR\$1PUBLIC\$1IPV4\$1DNS* und den Port als ein.** `22`

1. **Erweitern Sie die Registerkarte **SSH und wählen Sie Auth aus.**** Wählen Sie in der **Datei mit dem privaten Schlüssel für die Authentifizierung** Ihre lokale „ppk“ -Datei aus.

1. Wählen Sie unter SSH die Registerkarte **Tunnel** und anschließend die Optionen *Dynamisch* und *Automatisch* aus.

1. Fügen Sie **unter Quellport** den `8157` Port (oder einen anderen ungenutzten Port) hinzu und lassen Sie das Feld **Zielport** leer. Wählen Sie **Hinzufügen** aus.

1. Wählen Sie die Registerkarte **Sitzung** und geben Sie einen Sitzungsnamen ein. Zum Beispiel `SSH Tunnel`.

1. Wählen Sie **Speichern**, **Öffnen**.
**Anmerkung**  
Möglicherweise müssen Sie eine Passphrase für Ihren öffentlichen Schlüssel eingeben.

------

**Anmerkung**  
Wenn Sie eine `Permission denied (publickey)` Fehlermeldung erhalten, empfehlen wir, das [AWSSupport-TroubleshootSSH](https://docs.aws.amazon.com/systems-manager/latest/userguide/automation-awssupport-troubleshootssh.html)Tool zu verwenden und **Run This Automation (Konsole)** auszuwählen, um Fehler bei der SSH-Einrichtung zu beheben.

## Schritt drei: Konfigurieren Sie die Bastion-Sicherheitsgruppe als Regel für eingehenden Datenverkehr
<a name="private-network-lb-create-sgsource"></a>

Der Zugriff auf die Server und der reguläre Internetzugang von den Servern aus sind mit einer speziellen Wartungssicherheitsgruppe möglich, die an diese Server angeschlossen ist. In den folgenden Schritten wird beschrieben, wie die Bastion-Sicherheitsgruppe als eingehende Datenverkehrsquelle zur VPC-Sicherheitsgruppe einer Umgebung konfiguriert wird.

1. Öffnen Sie die Seite [Umgebungen](https://console.aws.amazon.com/mwaa/home#/environments) auf der Amazon MWAA-Konsole.

1. Wählen Sie eine Umgebung aus.

1. Wählen Sie im Bereich **Netzwerk** die Option **VPC-Sicherheitsgruppe** aus.

1. Wählen Sie **Edit inbound rules** (Regeln für eingehenden Datenverkehr bearbeiten) aus.

1. Wählen Sie **Regel hinzufügen** aus.

1. Wählen Sie Ihre VPC-Sicherheitsgruppen-ID in der Dropdownliste **Quelle** aus.

1. Lassen Sie die übrigen Optionen leer oder setzen Sie sie auf ihre Standardwerte.

1. Wählen Sie **Save rules (Regeln speichern)** aus.

## Schritt 4: Kopieren Sie die Apache Airflow Airflow-URL
<a name="private-network-lb-view-env"></a>

In den folgenden Schritten wird beschrieben, wie Sie die Amazon MWAA-Konsole öffnen und die URL in die Apache Airflow Airflow-Benutzeroberfläche kopieren.

1. Öffnen Sie die Seite [Umgebungen](https://console.aws.amazon.com/mwaa/home#/environments) auf der Amazon MWAA-Konsole.

1. Wählen Sie eine Umgebung aus.

1. Kopieren Sie die URL in die **Airflow-Benutzeroberfläche** für nachfolgende Schritte.

## Fünfter Schritt: Proxyeinstellungen konfigurieren
<a name="private-network-lb-browser-extension"></a>

Wenn Sie einen SSH-Tunnel mit dynamischer Port-Weiterleitung verwenden, müssen Sie ein Add-On für die SOCKS-Proxy-Verwaltung einsetzen, um die Proxy-Einstellungen in Ihrem Browser zu steuern. Sie können beispielsweise die `--proxy-server` Funktion von Chromium verwenden, um eine Browsersitzung zu starten, oder die FoxyProxy Erweiterung im FireFox Mozilla-Browser verwenden.

### Option eins: Richten Sie einen SSH-Tunnel mithilfe der lokalen Portweiterleitung ein
<a name="private-network-lb-browser-extension-portforwarding"></a>

Wenn Sie keinen SOCKS-Proxy verwenden möchten, können Sie einen SSH-Tunnel mithilfe der lokalen Portweiterleitung einrichten. Der folgende Beispielbefehl greift auf die EC2 *ResourceManager*Amazon-Weboberfläche zu, indem er den Datenverkehr auf dem lokalen Port 8157 weiterleitet.

1. Öffnen Sie ein neues Befehlszeilenfenster.

1. Geben Sie den folgenden Befehl ein, um einen SSH-Tunnel zu öffnen.

   ```
   ssh -i mykeypair.pem -N -L 8157:YOUR_VPC_ENDPOINT_ID-vpce.us-east-1.airflow.amazonaws.com:443 ubuntu@YOUR_PUBLIC_IPV4_DNS.us-east-1.compute.amazonaws.com
   ```

   `-L`bezeichnet die Verwendung der lokalen Portweiterleitung, mit der Sie einen lokalen Port angeben können, der für die Weiterleitung von Daten an den identifizierten Remote-Port auf dem lokalen Webserver des Knotens verwendet wird.

1. Geben Sie `http://localhost:8157/` in Ihrem Browser ein.
**Anmerkung**  
Möglicherweise müssen Sie verwenden`https://localhost:8157/`.

### Option zwei: Proxys über die Befehlszeile
<a name="private-network-lb-browser-extension-foxyp"></a>

Sie können die meisten Webbrowser verwenden, um Proxys mithilfe einer Befehlszeile oder eines Konfigurationsparameters zu konfigurieren. Mit Chromium können Sie den Browser beispielsweise mit dem folgenden Befehl starten:

```
chromium --proxy-server="socks5://localhost:8157"
```

Dadurch wird eine Browsersitzung gestartet, die den SSH-Tunnel verwendet, den Sie in den vorherigen Schritten erstellt haben, um ihre Anfragen weiterzuleiten. Sie können Ihre private Amazon MWAA-Umgebungs-URL (mit *https://*) wie folgt öffnen:

```
https://YOUR_VPC_ENDPOINT_ID-vpce.us-east-1.airflow.amazonaws.com/home.
```

### Option drei: Proxys, die für Mozilla Firefox verwendet werden FoxyProxy
<a name="private-network-lb-browser-extension-foxyp"></a>

Das folgende Beispiel zeigt eine FoxyProxy Standardkonfiguration (Version 7.5.1) für Mozilla Firefox. FoxyProxy stellt eine Reihe von Tools zur Proxyverwaltung bereit. Damit können Sie einen Proxy-Server verwenden, um Muster abzugleichen URLs , die den von der Apache Airflow Airflow-Benutzeroberfläche verwendeten Domänen entsprechen.

1. Öffnen Sie in Firefox die Seite mit der [FoxyProxy Standarderweiterung](https://addons.mozilla.org/en-US/firefox/addon/foxyproxy-standard/).

1. Wählen **Sie Zu Firefox hinzufügen**.

1. Wählen Sie **Hinzufügen** aus.

1. Wählen Sie das FoxyProxy Symbol in der Werkzeugleiste Ihres Browsers und dann **Optionen**.

1. Kopieren Sie den folgenden Code und speichern Sie ihn lokal unter`mwaa-proxy.json`. Ersetzen Sie den Beispielwert durch Ihre **Apache Airflow Airflow-URL**. *YOUR\$1HOST\$1NAME*

   ```
   {
     "e0b7kh1606694837384": {
       "type": 3,
       "color": "#66cc66",
       "title": "airflow",
       "active": true,
       "address": "localhost",
       "port": 8157,
       "proxyDNS": false,
       "username": "",
       "password": "",
       "whitePatterns": [
         {
           "title": "airflow-ui",
           "pattern": "YOUR_HOST_NAME",
           "type": 1,
           "protocols": 1,
           "active": true
         }
       ],
       "blackPatterns": [],
       "pacURL": "",
       "index": -1
     },
     "k20d21508277536715": {
       "active": true,
       "title": "Default",
       "notes": "These are the settings that are used when no patterns match a URL.",
       "color": "#0055E5",
       "type": 5,
       "whitePatterns": [
         {
           "title": "all URLs",
           "active": true,
           "pattern": "*",
           "type": 1,
           "protocols": 1
         }
       ],
       "blackPatterns": [],
         "index": 9007199254740991
     },
     "logging": {
       "active": true,
       "maxSize": 500
     },
     "mode": "patterns",
     "browserVersion": "82.0.3",
     "foxyProxyVersion": "7.5.1",
     "foxyProxyEdition": "standard"
   }
   ```

1. Wählen **Sie im Bereich „Einstellungen aus Version FoxyProxy 6.0\$1 importieren**“ die Option „**Einstellungen importieren**“ und wählen Sie die Datei aus. `mwaa-proxy.json`

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

## Schritt 6: Öffnen Sie die Apache Airflow Airflow-Benutzeroberfläche
<a name="private-network-lb-open"></a>

In den folgenden Schritten wird beschrieben, wie Sie Ihre Apache Airflow Airflow-Benutzeroberfläche öffnen.

1. Öffnen Sie die Seite [Umgebungen](https://console.aws.amazon.com/mwaa/home#/environments) auf der Amazon MWAA-Konsole.

1. Wählen Sie „**Airflow-Benutzeroberfläche öffnen**“.

## Als nächstes
<a name="bastion-next-up"></a>
+ Erfahren Sie in, wie Sie Airflow CLI-Befehle auf einem SSH-Tunnel zu einem Bastion-Host ausführen. [Befehlsreferenz für Apache Airflow CLI](airflow-cli-command-reference.md)
+ Erfahren Sie unter, wie Sie DAG-Code in Ihren Amazon S3 S3-Bucket hochladen[Hinzufügen oder Aktualisieren DAGs](configuring-dag-folder.md).

# Tutorial: Beschränken des Zugriffs eines Amazon MWAA-Benutzers auf eine Teilmenge von DAGs
<a name="limit-access-to-dags"></a>

[Amazon MWAA verwaltet den Zugriff auf Ihre Umgebung, indem es Ihre IAM-Prinzipale einer oder mehreren Standardrollen von Apache Airflow zuordnet.](https://airflow.apache.org/docs/apache-airflow/stable/security/access-control.html#default-roles) Verwenden Sie das folgende Tutorial, um einzelne Amazon MWAA-Benutzer darauf zu beschränken, nur auf eine bestimmte DAG oder eine Gruppe von DAG zuzugreifen und mit ihnen zu interagieren. DAGs

**Anmerkung**  
Die Schritte in diesem Tutorial können mithilfe des Verbundzugriffs ausgeführt werden, sofern die IAM-Rollen übernommen werden können.

**Topics**
+ [Voraussetzungen](#limit-access-to-dags-prerequisites)
+ [Schritt eins: Gewähren Sie dem Amazon MWAA-Webserver Zugriff auf Ihren IAM-Principal mit der `Public` Standardrolle Apache Airflow.](#limit-access-to-dags-apply-public-access)
+ [Schritt zwei: Erstellen Sie eine neue benutzerdefinierte Apache Airflow Airflow-Rolle](#limit-access-to-dags-create-new-airflow-role)
+ [Schritt drei: Weisen Sie Ihrem Amazon MWAA-Benutzer die von Ihnen erstellte Rolle zu](#limit-access-to-dags-assign-role)
+ [Nächste Schritte](#limit-access-to-dags-next-up)
+ [Zugehörige Ressourcen](#limit-access-to-dags-related-resources)

## Voraussetzungen
<a name="limit-access-to-dags-prerequisites"></a>

Um die Schritte in diesem Tutorial abzuschließen, benötigen Sie Folgendes:
+ Eine [Amazon MWAA-Umgebung mit mehreren DAGs](get-started.md)
+ Ein IAM-Prinzipal `Admin` mit [AdministratorAccess](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AdministratorAccess$jsonEditor)Berechtigungen und ein IAM-Benutzer als Principal`MWAAUser`, für den Sie den DAG-Zugriff einschränken können. Weitere Informationen zu Administratorrollen finden Sie unter [Administratorfunktion](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html#jf_administrator) im *IAM-Benutzerhandbuch*
**Anmerkung**  
Hängen Sie Berechtigungsrichtlinien nicht direkt an Ihre IAM-Benutzer an. Wir empfehlen, IAM-Rollen einzurichten, die Benutzer annehmen können, um temporären Zugriff auf Ihre Amazon MWAA-Ressourcen zu erhalten.
+ [AWS Command Line Interface Version 2 installiert](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install).

## Schritt eins: Gewähren Sie dem Amazon MWAA-Webserver Zugriff auf Ihren IAM-Principal mit der `Public` Standardrolle Apache Airflow.
<a name="limit-access-to-dags-apply-public-access"></a>

**Um die Erlaubnis zu erteilen, verwenden Sie AWS-Managementkonsole**

1. Melden Sie sich AWS-Konto mit einer `Admin` Rolle bei Ihrem an und öffnen Sie die [IAM-Konsole](https://console.aws.amazon.com/iam/).

1. Wählen Sie im linken Navigationsbereich **Benutzer** und dann Ihren Amazon MWAA IAM-Benutzer aus der Benutzertabelle aus.

1. **Wählen Sie auf der Seite mit den Benutzerdetails unter **Zusammenfassung** den Tab **Berechtigungen** und dann **Berechtigungsrichtlinien aus, um die Karte zu erweitern, und klicken Sie dann auf Berechtigungen** hinzufügen.**

1. Wählen Sie im Abschnitt **Berechtigungen gewähren** die Option **Bestehende Richtlinien direkt anhängen** aus und wählen Sie dann **Richtlinie erstellen** aus, um Ihre eigene benutzerdefinierte Berechtigungsrichtlinie zu erstellen und anzuhängen.

1. Wählen Sie auf der Seite **Richtlinie erstellen** die Option **JSON** aus und kopieren Sie dann die folgende JSON-Berechtigungsrichtlinie und fügen Sie sie in den Richtlinieneditor ein. Diese Richtlinie gewährt dem Benutzer mit der Standardrolle `Public` Apache Airflow Webserverzugriff.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "airflow:CreateWebLoginToken",
               "Resource": [
               "arn:aws:airflow:us-east-1:111122223333:role/YOUR_ENVIRONMENT_NAME/Public"
               ]
           }
       ]
   }
   ```

------

## Schritt zwei: Erstellen Sie eine neue benutzerdefinierte Apache Airflow Airflow-Rolle
<a name="limit-access-to-dags-create-new-airflow-role"></a>

**So erstellen Sie eine neue Rolle mit der Apache Airflow Airflow-Benutzeroberfläche**

1. Öffnen Sie mit Ihrer Administrator-IAM-Rolle die [Amazon MWAA-Konsole](https://console.aws.amazon.com/mwaa/home) und starten Sie die Apache Airflow Airflow-Benutzeroberfläche Ihrer Umgebung.

1. Bewegen Sie im Navigationsbereich oben den Mauszeiger auf **Sicherheit**, um die Dropdownliste zu öffnen, und wählen Sie dann **Rollen** auflisten, um auf die Standardrollen von Apache Airflow zuzugreifen.

1. Wählen Sie in der Rollenliste **Benutzer** und dann am Anfang der Seite **Aktionen aus, um das Drop-down-Menü** zu öffnen. **Wählen Sie „**Rolle kopieren**“ und bestätigen Sie „OK“**
**Anmerkung**  
Kopieren Sie die Rollen **Ops** oder **Viewer**, um mehr bzw. weniger Zugriff zu gewähren.

1. Suchen Sie in der Tabelle nach der neuen Rolle, die Sie erstellt haben, und wählen Sie **Datensatz bearbeiten** aus.

1. Gehen Sie auf der Seite **„Rolle bearbeiten**“ wie folgt vor:
   + Geben Sie unter **Name** einen neuen Namen für die Rolle in das Textfeld ein. Beispiel, **Restricted**.
   + Entfernen Sie für die Liste der **Berechtigungen** die Lese `can read on DAGs` - und Schreibberechtigungen für die Gruppe von Berechtigungen`can edit on DAGs`, für die DAGs Sie Zugriff gewähren möchten, und fügen Sie sie anschließend hinzu. Fügen Sie beispielsweise für eine DAG **`can read on DAG:example_dag`** und hinzu**`can edit on DAG:example_dag`**. `example_dag.py`

   Wählen Sie **Speichern**. Jetzt haben Sie eine neue Rolle, die den Zugriff auf eine Teilmenge der in Ihrer Amazon MWAA-Umgebung DAGs verfügbaren Funktionen beschränkt. Sie können diese Rolle allen vorhandenen Apache Airflow Airflow-Benutzern zuweisen.

## Schritt drei: Weisen Sie Ihrem Amazon MWAA-Benutzer die von Ihnen erstellte Rolle zu
<a name="limit-access-to-dags-assign-role"></a>

**Um die neue Rolle zuzuweisen**

1. Führen Sie mit den Zugangsdaten für `MWAAUser` den folgenden CLI-Befehl aus, um die Webserver-URL Ihrer Umgebung abzurufen.

   ```
   aws mwaa get-environment --name YOUR_ENVIRONMENT_NAME | jq '.Environment.WebserverUrl'
   ```

   Bei Erfolg verweisen Sie auf die folgende Ausgabe:

   ```
   "ab1b2345-678a-90a1-a2aa-34a567a8a901.c13.us-west-2.airflow.amazonaws.com"
   ```

1. Wenn Sie `MWAAUser` angemeldet sind AWS-Managementkonsole, öffnen Sie ein neues Browserfenster und greifen Sie auf Folgendes zu URl. `Webserver-URL`Ersetzen Sie es durch Ihre Informationen.

   ```
   https://<Webserver-URL>/home
   ```

   Bei Erfolg erhalten Sie eine `Forbidden` Fehlerseite, da Ihnen `MWAAUser` noch keine Zugriffsberechtigung für die Apache Airflow Airflow-Benutzeroberfläche erteilt wurde.

1. Wenn Sie `Admin` angemeldet sind AWS-Managementkonsole, öffnen Sie erneut die Amazon MWAA-Konsole und starten Sie die Apache Airflow Airflow-Benutzeroberfläche Ihrer Umgebung.

1. **Erweitern Sie im UI-Dashboard das Drop-down-Menü „**Sicherheit**“ und wählen Sie dieses Mal „Benutzer auflisten“ aus.**

1. Suchen Sie in der Benutzertabelle nach dem neuen Apache Airflow Airflow-Benutzer und wählen Sie **Datensatz bearbeiten**. Der Vorname des Benutzers entspricht Ihrem IAM-Benutzernamen im folgenden Muster:. `user/mwaa-user`

1. Fügen Sie auf der Seite **„Benutzer bearbeiten**“ im Abschnitt **Rolle** die neue benutzerdefinierte Rolle hinzu, die Sie erstellt haben, und wählen Sie dann **Speichern** aus.
**Anmerkung**  
Das Feld **Nachname** ist erforderlich, aber ein Leerzeichen erfüllt die Anforderung.

   Der `Public` IAM-Principal erteilt die `MWAAUser` Erlaubnis, auf die Apache Airflow Airflow-Benutzeroberfläche zuzugreifen, während die neue Rolle die zusätzlichen Berechtigungen bereitstellt, die erforderlich sind, um sie zu erhalten. DAGs

**Wichtig**  
Jede der 5 Standardrollen (z. B.`Admin`), die nicht von IAM autorisiert wurden und die über die Apache Airflow Airflow-Benutzeroberfläche hinzugefügt wurden, wird bei der nächsten Benutzeranmeldung entfernt.

## Nächste Schritte
<a name="limit-access-to-dags-next-up"></a>
+ Weitere Informationen zur Verwaltung des Zugriffs auf Ihre Amazon MWAA-Umgebung und Beispiele für JSON-IAM-Richtlinien, die Sie für Benutzer Ihrer Umgebung verwenden können, finden Sie unter [Zugreifen auf eine Amazon MWAA-Umgebung](access-policies.md)

## Zugehörige Ressourcen
<a name="limit-access-to-dags-related-resources"></a>
+ [Zugriffskontrolle](https://airflow.apache.org/docs/apache-airflow/stable/security/access-control.html) (Apache Airflow-Dokumentation) — Weitere Informationen zu den Standardrollen von Apache Airflow finden Sie auf der Apache Airflow Airflow-Dokumentationswebsite.

# Tutorial: Automatisieren Sie die Verwaltung Ihrer eigenen Umgebungsendpunkte auf Amazon MWAA
<a name="tutorials-customer-managed-endpoints"></a>

Wenn Sie mehrere AWS-Konten gemeinsam [AWS Organizations](https://docs.aws.amazon.com/)genutzte Ressourcen verwalten, können Sie mit Amazon MWAA Ihre eigenen Amazon VPC-Endpoints erstellen und verwalten. Das bedeutet, dass Sie strengere Sicherheitsrichtlinien verwenden können, die nur den Zugriff auf die Ressourcen ermöglichen, die für Ihre Umgebung erforderlich sind.

Wenn Sie eine Umgebung in einer gemeinsam genutzten Amazon-VPC erstellen, teilt sich das Konto, dem die Haupt-Amazon-VPC (*Eigentümer*) gehört, die beiden von Amazon MWAA benötigten privaten Subnetze mit anderen Konten (*Teilnehmern*), die derselben Organisation angehören. Teilnehmerkonten, die diese Subnetze gemeinsam nutzen, können dann Umgebungen in der gemeinsam genutzten VPC anzeigen, erstellen, ändern und löschen.

Wenn Sie eine Umgebung in einer gemeinsam genutzten oder anderweitig richtlinienbeschränkten Amazon-VPC erstellen, erstellt Amazon MWAA zunächst die Service-VPC-Ressourcen und wechselt dann in einen [https://docs.aws.amazon.com/mwaa/latest/API/API_Environment.html#mwaa-Type-Environment-Status](https://docs.aws.amazon.com/mwaa/latest/API/API_Environment.html#mwaa-Type-Environment-Status)Status für bis zu 72 Stunden.

Wenn sich der Umgebungsstatus von `CREATING` zu ändert`PENDING`, sendet Amazon MWAA eine EventBridge Amazon-Benachrichtigung über die Statusänderung. Auf diese Weise kann das Besitzerkonto die erforderlichen Endpunkte im Namen der Teilnehmer auf der Grundlage von Endpunkt-Serviceinformationen aus der Amazon MWAA-Konsole oder API oder programmgesteuert oder programmgesteuert erstellen. Im Folgenden erstellen wir neue Amazon VPC-Endpunkte mithilfe einer Lambda-Funktion und einer EventBridge Regel, die Amazon MWAA-Statusänderungsbenachrichtigungen abhört.

Hier erstellen wir die neuen Endpoints in derselben Amazon-VPC wie die Umgebung. Um eine gemeinsam genutzte Amazon VPC einzurichten, erstellen Sie die EventBridge Regel und die Lambda-Funktion würde im Besitzerkonto und in der Amazon MWAA-Umgebung im Teilnehmerkonto ausgeführt.

**Topics**
+ [Voraussetzungen](#tutorials-customer-managed-endpoints-prerequisites)
+ [Erstellen Sie die Amazon VPC](#tutorials-customer-managed-endpoints-create-vpc)
+ [So erstellen Sie die Lambda-Funktion:](#tutorials-customer-managed-endpoints-create-lambda-function)
+ [Erstellen Sie die Regel EventBridge](#tutorials-customer-managed-endpoints-create-eb-rule)
+ [Erstellen Sie die Amazon MWAA-Umgebung](#tutorials-customer-managed-endpoints-create-mwaa)

## Voraussetzungen
<a name="tutorials-customer-managed-endpoints-prerequisites"></a>

Um die Schritte in diesem Tutorial abzuschließen, benötigen Sie Folgendes:
+ ...

## Erstellen Sie die Amazon VPC
<a name="tutorials-customer-managed-endpoints-create-vpc"></a>

Verwenden Sie die folgende CloudFormation Vorlage und den folgenden AWS CLI Befehl, um eine neue Amazon VPC zu erstellen. Die Vorlage richtet die Amazon VPC-Ressourcen ein und ändert die Endpunktrichtlinie, um den Zugriff auf eine bestimmte Warteschlange einzuschränken.

1. Laden Sie die CloudFormation [Vorlage](samples/cfn-vpc-private-network.zip) herunter und entpacken Sie dann die Datei. `.yml`

1. Navigieren Sie in einem neuen Befehlszeilenfenster zu dem Ordner, in dem Sie die Vorlage gespeichert haben, und verwenden Sie ihn dann, [https://docs.aws.amazon.com/cli/latest/reference/cloudformation/create-stack.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/create-stack.html)um den Stapel zu erstellen. Das `--template-body` Flag gibt den Pfad zur Vorlage an.

   ```
   aws cloudformation create-stack --stack-name stack-name --template-body file://cfn-vpc-private-network.yml
   ```

Im nächsten Abschnitt erstellen Sie die Lambda-Funktion.

## So erstellen Sie die Lambda-Funktion:
<a name="tutorials-customer-managed-endpoints-create-lambda-function"></a>

Verwenden Sie den folgenden Python-Code und die IAM-JSON-Richtlinie, um eine neue Lambda-Funktion und Ausführungsrolle zu erstellen. Diese Funktion erstellt Amazon VPC-Endpunkte für einen privaten Apache Airflow Airflow-Webserver und eine Amazon SQS SQS-Warteschlange. Amazon MWAA verwendet Amazon SQS, um bei der Skalierung Ihrer Umgebung Aufgaben mit Celery zwischen mehreren Workern in die Warteschlange zu stellen.

1. Laden Sie den [Python-Funktionscode](./samples/mwaa-lambda-shared-vpc.zip) herunter.

1. Laden Sie die [IAM-Berechtigungsrichtlinie](./samples/lambda-mwaa-shared-vpce-policy.zip) herunter und entpacken Sie dann die Datei.

1. Öffnen Sie eine Befehlszeile und navigieren Sie dann zu dem Ordner, in dem Sie die JSON-Berechtigungsrichtlinie gespeichert haben. Verwenden Sie den [https://docs.aws.amazon.com/](https://docs.aws.amazon.com/)IAM-Befehl, um die neue Rolle zu erstellen.

   ```
   aws iam create-role --role-name function-role \
   						--assume-role-policy-document file://lambda-mwaa-vpce-policy.json
   ```

   Notieren Sie sich den Rollen-ARN aus der AWS CLI Antwort. Im nächsten Schritt geben wir diese neue Rolle mithilfe ihres ARN als Ausführungsrolle der Funktion an.

1. Navigieren Sie zu dem Ordner, in dem Sie den Funktionscode gespeichert haben, und verwenden Sie dann den [https://docs.aws.amazon.com/](https://docs.aws.amazon.com/)Befehl, um eine neue Funktion zu erstellen.

   ```
   aws lambda create-function --function-name mwaa-vpce-lambda \
   --zip-file file://mwaa-lambda-shared-vpc.zip --runtime python3.8 --role arn:aws:iam::123456789012:role/function-role --handler lambda_handler
   ```

   Notieren Sie sich die Funktion ARN aus der AWS CLI Antwort. Im nächsten Schritt geben wir den ARN an, um die Funktion als Ziel für eine neue EventBridge Regel zu konfigurieren.

Im nächsten Abschnitt erstellen Sie die EventBridge Regel, die diese Funktion aufruft, wenn die Umgebung in einen `PENDING` Zustand übergeht.

## Erstellen Sie die Regel EventBridge
<a name="tutorials-customer-managed-endpoints-create-eb-rule"></a>

Gehen Sie wie folgt vor, um eine neue Regel zu erstellen, die auf Amazon MWAA-Benachrichtigungen wartet und auf Ihre neue Lambda-Funktion abzielt.

1. Verwenden Sie den EventBridge `put-rule` Befehl, um eine neue Regel zu erstellen. EventBridge 

   ```
   aws events put-rule --name "mwaa-lambda-rule" \
   --event-pattern "{\"source\":[\"aws.airflow\"],\"detail-type\":[\"MWAA Environment Status Change\"]}"
   ```

   Das Ereignismuster wartet auf Benachrichtigungen, die Amazon MWAA sendet, wenn sich der Umgebungsstatus ändert.

   ```
   {
   					"source": ["aws.airflow"],
   					"detail-type": ["MWAA Environment Status Change"]
   					}
   ```

1. Verwenden Sie den `put-targets` Befehl, um die Lambda-Funktion als Ziel für die neue Regel hinzuzufügen.

   ```
   aws events put-targets --rule "mwaa-lambda-rule" \
   --targets "Id"="1","Arn"="arn:aws:lambda:us-east-1:123456789012:function:mwaa-vpce-lambda"
   ```

Sie sind bereit, eine neue Amazon MWAA-Umgebung mit kundenverwalteten Amazon VPC-Endpunkten zu erstellen.

## Erstellen Sie die Amazon MWAA-Umgebung
<a name="tutorials-customer-managed-endpoints-create-mwaa"></a>

Verwenden Sie die Amazon MWAA-Konsole, um eine neue Umgebung mit kundenverwalteten Amazon VPC-Endpunkten zu erstellen.

1. Öffnen Sie die [Amazon MWAA-Konsole](https://console.aws.amazon.com/mwaa/home/) und wählen Sie **Create an environment** aus.

1. Geben Sie **unter Name** einen eindeutigen Namen ein.

1. Wählen Sie für die **Airflow-Version** die neueste Version.

1. Wählen Sie einen **Amazon S3 S3-Bucket** und einen **DAGs Ordner** aus, der z. B. mit der Umgebung verwendet werden `dags/` soll, und wählen Sie dann **Weiter**.

1. Gehen Sie auf der Seite **„Erweiterte Einstellungen konfigurieren**“ wie folgt vor:

   1. Wählen Sie für **Virtual Private Cloud** die Amazon VPC aus, die Sie im [vorherigen Schritt](#tutorials-customer-managed-endpoints-create-vpc) erstellt haben.

   1. Wählen Sie für den **Webserver-Zugriff** die Option **Öffentliches Netzwerk (über das Internet zugänglich**).

   1. Wählen Sie für **Sicherheitsgruppen** die Sicherheitsgruppe aus, mit CloudFormation der Sie sie erstellt haben. Da die Sicherheitsgruppen für die AWS PrivateLink Endpoints aus dem vorherigen Schritt selbstreferenzierend sind, müssen Sie dieselbe Sicherheitsgruppe für Ihre Umgebung auswählen.

   1. Wählen Sie für **Endpoint Management** die Option Vom **Kunden** verwaltete Endgeräte aus.

1. Behalten Sie die verbleibenden Standardeinstellungen bei und wählen Sie dann **Weiter**.

1. Überprüfen Sie Ihre Auswahl und wählen Sie dann **Umgebung erstellen** aus.

**Tipp**  
Weitere Informationen zum Einrichten einer neuen Umgebung finden Sie unter [Erste Schritte mit Amazon MWAA](get-started.md).

Wenn die Umgebung vorhanden ist`PENDING`, sendet Amazon MWAA eine Benachrichtigung, die dem von Ihnen für Ihre Regel festgelegten Ereignismuster entspricht. Die Regel ruft Ihre Lambda-Funktion auf. Die Funktion analysiert das Benachrichtigungsereignis und ruft die erforderlichen Endpunktinformationen für den Webserver und die Amazon SQS SQS-Warteschlange ab. Anschließend werden die Endpunkte in Ihrer Amazon VPC erstellt.

Wenn die Endpunkte verfügbar sind, setzt Amazon MWAA die Erstellung Ihrer Umgebung fort. Wenn Sie bereit sind, ändert sich der Umgebungsstatus in `AVAILABLE` und Sie können über die Amazon MWAA-Konsole auf den Apache Airflow Airflow-Webserver zugreifen.