

 **Unterstützung für die Verbesserung dieser Seite beitragen** 

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.

Um zu diesem Benutzerhandbuch beizutragen, wählen Sie den GitHub Link **Diese Seite bearbeiten auf**, der sich im rechten Bereich jeder Seite befindet.

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.

# ACK-Berechtigungen konfigurieren
<a name="ack-permissions"></a>

ACK benötigt IAM-Berechtigungen, um AWS Ressourcen in Ihrem Namen zu erstellen und zu verwalten. In diesem Thema wird erklärt, wie IAM mit ACK zusammenarbeitet, und es finden Sie Anleitungen zur Konfiguration von Berechtigungen für verschiedene Anwendungsfälle.

## Wie funktioniert IAM mit ACK
<a name="_how_iam_works_with_ack"></a>

ACK verwendet IAM-Rollen, um sich bei Ihren Ressourcen zu authentifizieren AWS und Aktionen für sie auszuführen. Es gibt zwei Möglichkeiten, ACK Berechtigungen zu erteilen:

 **Funktionsrolle**: Die IAM-Rolle, die Sie bei der Erstellung der ACK-Fähigkeit angeben. Diese Rolle wird standardmäßig für alle ACK-Operationen verwendet.

 **IAM-Rollenselektoren**: Zusätzliche IAM-Rollen, die bestimmten Namespaces oder Ressourcen zugeordnet werden können. Diese Rollen haben Vorrang vor der Capability-Rolle für Ressourcen in ihrem Geltungsbereich.

Wenn ACK eine Ressource erstellen oder verwalten muss, bestimmt es, welche IAM-Rolle verwendet werden soll:

1. Prüfen Sie, ob ein IAMRole Selector dem Namespace der Ressource entspricht

1. Wenn eine Übereinstimmung gefunden wird, gehen Sie von dieser IAM-Rolle aus

1. Verwenden Sie andernfalls die Capability-Rolle

Dieser Ansatz ermöglicht ein flexibles Berechtigungsmanagement, von einfachen Einzelrollen-Setups bis hin zu komplexen Konfigurationen mit mehreren Konten und mehreren Teams.

## Erste Schritte: Einfache Einrichtung von Berechtigungen
<a name="_getting_started_simple_permission_setup"></a>

Für Entwicklungs-, Test- oder einfache Anwendungsfälle können Sie der Capability Role alle erforderlichen Serviceberechtigungen direkt hinzufügen.

Dieser Ansatz funktioniert gut, wenn:
+ Sie fangen mit ACK an
+ Alle Ressourcen befinden sich auf demselben AWS Konto
+ Ein einziges Team verwaltet alle ACK-Ressourcen
+ Sie vertrauen darauf, dass alle ACK-Benutzer dieselben Berechtigungen haben

## Bewährte Methode für die Produktion: IAM-Rollenselektoren
<a name="_production_best_practice_iam_role_selectors"></a>

Verwenden Sie in Produktionsumgebungen IAM-Rollenselektoren, um den Zugriff mit den geringsten Rechten und die Isolierung auf Namespace-Ebene zu implementieren.

Bei der Verwendung von IAM-Rollenselektoren benötigt die Capability Role nur die erforderlichen Berechtigungen, um die dienstspezifischen Rollen zu übernehmen. `sts:AssumeRole` `sts:TagSession` Sie müssen der Capability-Rolle selbst keine AWS Serviceberechtigungen (wie S3 oder RDS) hinzufügen — diese Berechtigungen werden den einzelnen IAM-Rollen erteilt, die die Capability-Rolle annimmt.

 **Wählen Sie zwischen Berechtigungsmodellen**:

Verwenden Sie **direkte Berechtigungen** (Hinzufügen von Serviceberechtigungen zur Capability Role), wenn:
+ Sie sind am Anfang und möchten die einfachste Einrichtung
+ Alle Ressourcen befinden sich in demselben Konto wie Ihr Cluster
+ Sie haben administrative, clusterweite Berechtigungsanforderungen
+ Alle Teams können dieselben Berechtigungen gemeinsam nutzen

Verwenden Sie **IAM-Rollenselektoren** in folgenden Fällen:
+ Verwaltung von Ressourcen über mehrere Konten hinweg AWS 
+ Verschiedene Teams oder Namespaces benötigen unterschiedliche Berechtigungen
+ Sie benötigen eine differenzierte Zugriffskontrolle pro Namespace
+ Sie möchten sich an die Sicherheitsverfahren mit den geringsten Rechten halten

Sie können mit direkten Berechtigungen beginnen und später zu IAM Role Selectors migrieren, wenn Ihre Anforderungen steigen.

 **Warum sollten Sie IAM-Rollenselektoren in der Produktion verwenden:** 
+  **Geringste Rechte: Jeder Namespace erhält nur die Berechtigungen**, die er benötigt
+  **Teamisolierung**: Team A kann nicht versehentlich die Berechtigungen von Team B verwenden
+  **Einfachere Prüfung**: Klare Zuordnung, welcher Namespace welche Rolle verwendet
+  **Kontoübergreifende Unterstützung**: Erforderlich für die Verwaltung von Ressourcen in mehreren Konten
+  **Trennung der Anliegen**: Verschiedene Dienste oder Umgebungen verwenden unterschiedliche Rollen

### Grundlegende Einrichtung des IAM-Rollenauswahlsystems
<a name="_basic_iam_role_selector_setup"></a>

 **Schritt 1: Erstellen Sie eine dienstspezifische IAM-Rolle** 

Erstellen Sie eine IAM-Rolle mit Berechtigungen für bestimmte Dienste: AWS 

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:*"
      ],
      "Resource": "*"
    }
  ]
}
```

Konfigurieren Sie die Vertrauensrichtlinie so, dass sie von der Capability Role übernommen wird:

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::111122223333:role/ACKCapabilityRole"
      },
      "Action": ["sts:AssumeRole", "sts:TagSession"]
    }
  ]
}
```

 **Schritt 2: Erteilen Sie der Capability-Rolle die AssumeRole Berechtigung** 

Fügen Sie der Capability-Rolle die Erlaubnis hinzu, die dienstspezifische Rolle anzunehmen:

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": ["sts:AssumeRole", "sts:TagSession"],
      "Resource": "arn:aws:iam::111122223333:role/ACK-S3-Role"
    }
  ]
}
```

 **Schritt 3: Selektor erstellen IAMRole** 

Ordnen Sie die IAM-Rolle einem Namespace zu:

```
apiVersion: services.k8s.aws/v1alpha1
kind: IAMRoleSelector
metadata:
  name: s3-namespace-config
spec:
  arn: arn:aws:iam::111122223333:role/ACK-S3-Role
  namespaceSelector:
    names:
      - s3-resources
```

 **Schritt 4: Ressourcen im zugewiesenen Namespace erstellen** 

Ressourcen im `s3-resources` Namespace verwenden automatisch die angegebene Rolle:

```
apiVersion: s3.services.k8s.aws/v1alpha1
kind: Bucket
metadata:
  name: my-bucket
  namespace: s3-resources
spec:
  name: my-production-bucket
```

## Verwaltung mehrerer Konten
<a name="_multi_account_management"></a>

Verwenden Sie IAM-Rollenauswahlen, um Ressourcen für mehrere Konten zu verwalten. AWS 

 **Schritt 1: Erstellen Sie eine kontoübergreifende IAM-Rolle** 

Erstellen Sie im Zielkonto (444455556666) eine Rolle, die der Capability-Rolle des Quellkontos vertraut:

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::111122223333:role/ACKCapabilityRole"
      },
      "Action": ["sts:AssumeRole", "sts:TagSession"]
    }
  ]
}
```

Ordnen Sie dieser Rolle dienstspezifische Berechtigungen zu.

 **Schritt 2: Erteilen Sie die Erlaubnis AssumeRole ** 

Erlauben Sie der Capability Role im Quellkonto (111122223333), die Rolle des Zielkontos anzunehmen:

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": ["sts:AssumeRole", "sts:TagSession"],
      "Resource": "arn:aws:iam::444455556666:role/ACKTargetAccountRole"
    }
  ]
}
```

 **Schritt 3: Selektor erstellen IAMRole** 

Ordnen Sie die kontoübergreifende Rolle einem Namespace zu:

```
apiVersion: services.k8s.aws/v1alpha1
kind: IAMRoleSelector
metadata:
  name: production-account-config
spec:
  arn: arn:aws:iam::444455556666:role/ACKTargetAccountRole
  namespaceSelector:
    names:
      - production
```

 **Schritt 4: Ressourcen erstellen** 

Ressourcen im `production` Namespace werden im Zielkonto erstellt:

```
apiVersion: s3.services.k8s.aws/v1alpha1
kind: Bucket
metadata:
  name: my-bucket
  namespace: production
spec:
  name: my-cross-account-bucket
```

## Sitzungs-Tags
<a name="_session_tags"></a>

Die EKS-ACK-Fähigkeit legt automatisch Sitzungs-Tags für alle AWS API-Anfragen fest. Diese Tags ermöglichen eine detaillierte Zugriffskontrolle und Prüfung, indem sie die Quelle jeder Anfrage identifizieren.

### Verfügbare Sitzungs-Tags
<a name="_available_session_tags"></a>

Die folgenden Sitzungs-Tags sind in jedem AWS API-Aufruf von ACK enthalten:


| Tag-Schlüssel | Description | 
| --- | --- | 
|   `eks:eks-capability-arn`   |  Der ARN der EKS-Funktion, die die Anfrage stellt  | 
|   `eks:kubernetes-namespace`   |  Der Kubernetes-Namespace der verwalteten Ressource  | 
|   `eks:kubernetes-api-group`   |  Die Kubernetes-API-Gruppe der Ressource (zum Beispiel) `s3.services.k8s.aws`  | 

### Verwenden von Sitzungs-Tags für die Zugriffskontrolle
<a name="_using_session_tags_for_access_control"></a>

Sie können diese Sitzungs-Tags in den IAM-Richtlinienbedingungen verwenden, um einzuschränken, welche Ressourcen ACK verwalten kann. Dies bietet eine zusätzliche Sicherheitsebene, die über die auf Namespaces basierenden IAM-Rollenselektoren hinausgeht.

 **Beispiel: Nach Namespace einschränken** 

Erlauben Sie ACK, S3-Buckets nur zu erstellen, wenn die Anfrage aus dem Namespace stammt: `production`

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "s3:CreateBucket",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "aws:PrincipalTag/eks:kubernetes-namespace": "production"
        }
      }
    }
  ]
}
```

 **Beispiel: Nach Fähigkeit einschränken** 

Nur Aktionen von einer bestimmten ACK-Fähigkeit aus zulassen:

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "s3:*",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "aws:PrincipalTag/eks:eks-capability-arn": "arn:aws:eks:us-west-2:111122223333:capability/my-cluster/ack/my-ack"
        }
      }
    }
  ]
}
```

**Anmerkung**  
Sitzungs-Tags unterscheiden sich von selbstverwaltetem ACK, bei dem diese Tags nicht standardmäßig festgelegt werden. Dies ermöglicht eine detailliertere Zugriffskontrolle mit der verwalteten Funktion.

## Erweiterte IAM-Rollenauswahlmuster
<a name="_advanced_iam_role_selector_patterns"></a>

[Eine erweiterte Konfiguration mit Labelselektoren, ressourcenspezifischer Rollenzuweisung und weiteren Beispielen finden Sie in der ACK IRSA-Dokumentation.](https://aws-controllers-k8s.github.io/community/docs/user-docs/irsa/)

## Nächste Schritte
<a name="_next_steps"></a>
+  [ACK-Konzepte](ack-concepts.md)- Verstehen Sie die ACK-Konzepte und den Ressourcenlebenszyklus
+  [ACK-Konzepte](ack-concepts.md)- Erfahren Sie mehr über Richtlinien für die Einführung und Löschung von Ressourcen
+  [Sicherheitsüberlegungen für EKS-Funktionen](capabilities-security.md)- Machen Sie sich mit bewährten Sicherheitsmethoden für Funktionen vertraut