DE
EspañolEnglishFrançaisDeutschPortuguêsItaliano
Anmelden Kostenlos starten
IAM

Einen IAM-Benutzer mit minimalen Rechten für ein externes Tool erstellen (aus CloudShell)

Erstellen Sie in AWS einen Zugriffsschlüssel, der nur das Nötigste darf (zum Beispiel Lightsail-Maschinen ansehen, starten und stoppen), um ihn einem externen Panel oder Tool zu geben, mit vier Befehlen in CloudShell und ohne Ihren Hauptbenutzer anzufassen.

⏱ 15 Minuten ◎ Mittlere Stufe Aktualisiert am 26/10/2026

Früher oder später verlangt ein externes Tool von Ihnen "einen AWS-Schlüssel": ein Kontrollpanel, ein Backup-System, ein Monitoring. Die Versuchung ist groß, den Schlüssel Ihres Administrator-Benutzers zu kopieren. Tun Sie das niemals. Wer diesen Schlüssel hat, kann alles tun, was Sie tun können, bis hin zum Löschen des ganzen Kontos. Richtig ist, einen separaten IAM-Benutzer mit einer Richtlinie, die nur die konkreten Aktionen erlaubt, die dieses Tool braucht, anzulegen und ihm seinen Schlüssel zu geben.

Wir machen das aus AWS CloudShell, dem Terminal, das in die Web-Konsole integriert ist, weil es vier Befehle zum Kopieren und Einfügen sind und das Ergebnis exakt ist. Auf Ihrem Computer muss nichts installiert werden.

Bevor Sie anfangen: was die Begriffe bedeuten

IAM
Der AWS-Dienst, der verwaltet, wer was in Ihrem Konto tun darf: Benutzer, Schlüssel und Berechtigungen.
IAM-Benutzer
Eine Identität innerhalb Ihres AWS-Kontos, getrennt von Ihrer eigenen, der Sie nur die nötigen Rechte geben. Kann für eine Person oder ein Programm sein.
Richtlinie
Die Liste der Berechtigungen, geschrieben in einem Textformat namens JSON: welche Aktionen erlaubt sind und worauf. Die Anleitung liefert sie Ihnen fertig.
Zugriffsschlüssel
Das "Benutzer und Passwort" für Programme: zwei Zeichenketten (Kennung und Geheimnis), mit denen ein Tool im Namen dieses Benutzers mit AWS spricht.
CloudShell
Ein Terminal (schwarzer Bildschirm, in den man Befehle tippt), das in die AWS-Web-Konsole integriert ist. Nichts zu installieren: öffnen, und es ist schon mit Ihrem Konto verbunden.
Minimale Rechte
Die Idee, jedem Tool nur das Nötigste zu geben. Sickert der Schlüssel durch, bleibt der Schaden darauf begrenzt.
ARN
Der vollständige und eindeutige Name von allem in AWS, in der Form arn:aws:... Dient dazu, sich ohne Verwechslung darauf zu beziehen.
Rolle
Eine Alternative zum Benutzer mit Schlüssel: das Tool "leiht sich" eine temporäre Berechtigung, ohne dass ein dauerhaftes Passwort existiert. Sicherer, wenn das Tool es unterstützt.

Schritt für Schritt

  1. Entscheiden Sie, welche Aktionen das Tool braucht

    Bevor Sie etwas schreiben, machen Sie die Liste. Ein Panel, das Lightsail-Maschinen verwaltet, braucht zum Beispiel: die Maschinen und ihren Status ansehen, starten, stoppen und neu starten, und vielleicht Snapshots erstellen und ansehen. Es muss keine Maschinen erstellen oder löschen, keine Abrechnung sehen und keine Benutzer anfassen. Jede Aktion, die nicht auf der Liste steht, ist eine Aktion, die Sie nicht erlauben. Wenn das Tool seriös ist, sagt es Ihnen genau, welche Rechte es verlangt; verlangt es "AdministratorAccess", seien Sie misstrauisch.

  2. Öffnen Sie CloudShell

    Klicken Sie in der AWS-Konsole auf das Terminal-Symbol in der oberen Leiste (CloudShell) oder suchen Sie es über den Namen. Es braucht einige Sekunden zum Starten. Sie haben dann ein Linux-Terminal mit dem Werkzeug aws, das mit Ihren aktuellen Anmeldedaten konfiguriert ist; alles, was Sie dort tun, tun Sie also als der Benutzer, mit dem Sie in der Konsole angemeldet sind (und der IAM verwalten dürfen muss).

  3. Schreiben Sie die Richtlinie

    Legen Sie eine Datei mit der Richtlinie im JSON-Format an. Dieses Beispiel erlaubt, Lightsail-Maschinen anzusehen, zu starten, zu stoppen und neu zu starten sowie ihre Snapshots zu verwalten, sonst nichts. Fügen Sie den ganzen Block in CloudShell ein:

    cat > politica.json <<'FIN'
    {
      "Version": "2012-10-17",
      "Statement": [{
        "Effect": "Allow",
        "Action": [
          "lightsail:GetInstances", "lightsail:GetInstance", "lightsail:GetInstanceState",
          "lightsail:GetInstanceMetricData", "lightsail:GetRegions",
          "lightsail:StartInstance", "lightsail:StopInstance", "lightsail:RebootInstance",
          "lightsail:GetInstanceSnapshots", "lightsail:GetInstanceSnapshot",
          "lightsail:CreateInstanceSnapshot", "lightsail:DeleteInstanceSnapshot"
        ],
        "Resource": "*"
      }]
    }
    FIN

    Jede Aktion heißt servicio:Operación. Soll das Tool nur ansehen dürfen, entfernen Sie die Zeilen mit Start, Stop, Reboot, Create und Delete. Für EC2, S3 oder RDS haben die Aktionen andere Namen, aber die Mechanik ist identisch. In Lightsail lassen sich die meisten Aktionen nicht auf eine bestimmte Maschine beschränken, deshalb ist Resource hier *; in EC2 oder S3 können Sie die genaue Kennung der Ressource angeben.

  4. Erstellen Sie Richtlinie und Benutzer und verbinden Sie sie

    Drei Befehle. Ändern Sie den Namen, wenn Sie wollen, aber er sollte sagen, wofür er dient:

    aws iam create-policy --policy-name PanelMaquinas --policy-document file://politica.json
    aws iam create-user --user-name panel-maquinas
    CUENTA=$(aws sts get-caller-identity --query Account --output text)
    aws iam attach-user-policy --user-name panel-maquinas \
      --policy-arn arn:aws:iam::$CUENTA:policy/PanelMaquinas

    Der erste Befehl gibt den ARN der Richtlinie zurück; der dritte setzt ihn mit Ihrer Kontonummer wieder zusammen, damit Sie ihn nicht kopieren müssen. Beachten Sie, dass wir dem Benutzer kein Konsolenpasswort geben: er existiert nur für den Zugriffsschlüssel.

  5. Erzeugen Sie den Zugriffsschlüssel

    aws iam create-access-key --user-name panel-maquinas

    Die Antwort enthält zwei Werte: AccessKeyId (beginnt mit AKIA) und SecretAccessKey. Das Geheimnis wird nur dieses eine Mal angezeigt. Kopieren Sie es direkt in das Tool, das es verwenden wird. Fügen Sie es nicht in eine E-Mail, einen Chat oder ein geteiltes Dokument ein. Wenn Sie es verlieren, ist das kein Problem: Sie löschen diesen Schlüssel und erstellen einen neuen.

  6. Löschen Sie die Datei und prüfen Sie

    rm politica.json
    aws iam list-attached-user-policies --user-name panel-maquinas

    Es darf nur PanelMaquinas erscheinen. Konfigurieren Sie das Tool mit dem Schlüssel und testen Sie eine erlaubte Aktion (Maschinen ansehen) und eine nicht erlaubte (eine erstellen): die zweite muss mit "not authorized" fehlschlagen. Dieser Fehler ist der Beweis, dass Sie gute Arbeit geleistet haben.

Was schiefgehen kann

Das Tool meldet, es habe kein Recht für etwas, das Sie erlauben wollen

In der Richtlinie fehlt eine Aktion. Die Fehlermeldung von AWS sagt genau, welche (User ... is not authorized to perform: lightsail:GetBundles). Fügen Sie sie dem JSON hinzu und aktualisieren Sie die Richtlinie mit aws iam create-policy-version --set-as-default, oder bearbeiten Sie sie in der IAM-Konsole. Fügen Sie nur diese eine Aktion hinzu, öffnen Sie die Tür nicht weiter.

Ich habe das Geheimnis an einer Stelle eingefügt, an der es nicht sein sollte

Betrachten Sie es als durchgesickert. In CloudShell: aws iam delete-access-key --user-name panel-maquinas --access-key-id AKIA... und erstellen Sie einen neuen. Da der Benutzer minimale Rechte hat, war der mögliche Schaden gering; genau das ist der Witz an der ganzen Sache.

Der dritte Befehl schlägt beim ARN fehl

Vielleicht hat Ihr Konsolenbenutzer kein Recht für sts:GetCallerIdentity (selten) oder der Name der Richtlinie hat einen Tippfehler. Kopieren Sie den ARN, den der erste Befehl zurückgegeben hat, und fügen Sie ihn von Hand in --policy-arn ein.

Wäre eine Rolle nicht besser als ein Benutzer?

Ja, wenn das Tool es unterstützt: eine IAM-Rolle, die das Tool aus seinem eigenen AWS-Konto übernimmt, hat keinen Schlüssel, der durchsickern könnte, und die Anmeldedaten laufen von selbst ab. Fragen Sie Ihren Anbieter, ob er "Zugriff per Rolle" oder "cross-account role" unterstützt. Wenn nicht, ist der Benutzer mit minimalen Rechten die zweitbeste Option, und viel besser als der Administrator-Schlüssel.

In Simplio

In Simplio müssen Sie die Richtlinie nicht schreiben: in der Hilfe kreuzen Sie an, was Sie erlauben wollen (nur ansehen, ohne Firewall, ohne Terminal, eine Region ...), und Simplio erzeugt das JSON und das komplette Skript zum Einfügen in CloudShell, das den fertigen Schlüssel zurückgibt. Und wenn Sie Schlüssel lieber vermeiden, unterstützt Simplio die Verbindung per Rolle, mit temporären Anmeldedaten, die nach einer Stunde ablaufen. Der Schlüssel wird verschlüsselt gespeichert und nie wieder angezeigt.

Dasselbe, in AWS und in Simplio

In der AWS-KonsoleIn Simplio
Die Richtlinie schreibenDen genauen Namen jeder AWS-Aktion und das JSON-Format kennenKästchen ankreuzen (nur ansehen, ohne Firewall, ohne Terminal, eine Region): das JSON entsteht von selbst
Benutzer, Richtlinie und Schlüssel erstellenCloudShell, 4 Befehle, 15 Minuten beim ersten MalDas von der Hilfe erzeugte Skript in CloudShell einfügen: 2 Minuten
Wenn Sie keine Schlüssel wollenEine kontoübergreifende Rolle von Hand entwerfenVerbindung per Rolle mit einem ARN, den Simplio für Sie erzeugt

15 Tage kostenlos testen So funktioniert es

All das, ohne die AWS-Konsole

Simplio ist ein Panel zur Verwaltung Ihrer AWS-Konten: Maschinen, geplante Kopien, Datenbanken, Domains, E-Mail und was AWS Ihnen berechnet, mit Berechtigungen pro Person und Zwei-Faktor-Authentifizierung. Ohne etwas auf Ihren Servern zu installieren.

15 Tage kostenlos starten, ohne Karte

Sind Sie bereits Kunde? Kundenzugang.