Service Account-Schlüssel erstellen, verwalten und löschen
Service Account-Schlüssel erstellen (neues Schlüsselpaar generieren)
Abschnitt betitelt „Service Account-Schlüssel erstellen (neues Schlüsselpaar generieren)“- Scrollen Sie nach unten zu IAM and Verwaltung
- Klicken Sie auf Service Accounts.
- Wählen Sie den Service Account aus, für den Sie einen Schlüssel erstellen möchten.
- Klicken Sie auf Service Account Schlüssel.
- Klicken Sie auf + Service Account Schlüssel erstellen
- Klicken Sie auf Neues Schlüsselpaar erstellen.
- Optional: Wählen Sie ein Ablaufdatum aus.
- Klicken Sie auf Erstellen.
stackit service-account key create --email my-service-account-emailLesen Sie die Dokumentation Create Service Account Keys im API-Explorer.
Wenn Sie keinen öffentlichen Schlüssel im Payload mitsenden, erstellt der Dienst ein neues Schlüsselpaar. Der Dienst antwortet dann mit dem privaten Schlüssel im Payload der Antwort.
Die Antwort hat das folgende Format:
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "publicKey": "public key", "createdAt": "2019-08-24T14:15:22Z", "validUntil": "2019-08-24T14:15:22Z", "keyType": "USER_MANAGED", "keyOrigin": "USER_PROVIDED", "keyAlgorithm": "RSA_2048", "active": true, "credentials": { "kid": "string", "iss": "my-sa@sa.stackit.cloud", "sub": "753487e7-10bc-4e69-b3b2-4da33721ea3e", "aud": "string", "privateKey": "private key when generated by the SA service" }}Wichtige Felder:
- credentials.kid: Dies ist die ID des Schlüssels. Muss als kid des selbstsignierten Tokens verwendet werden.
- credentials.iss: Dies ist die E-Mail des Service Accounts. Kann als iss (Aussteller) des selbstsignierten Tokens verwendet werden, oder Sie können stattdessen Ihre Anwendungs- oder VM-ID verwenden.
- credentials.sub: Dies ist die ID des Service Accounts. Muss als sub des selbstsignierten Tokens verwendet werden.
- credentials.aud: Dies ist die URL des Service Account-Dienstes. Muss als aud des selbstsignierten Tokens verwendet werden.
- credentials.privateKey: Existiert nur, wenn der private Schlüssel vom Service Account-Dienst generiert wurde. Wird nicht im Service Account-Dienst gespeichert. Muss vom Client sicher aufbewahrt werden.
Der private Schlüssel identifiziert den Client. Er darf nicht veröffentlicht, (vorzugsweise) nicht geteilt und muss rotiert werden. Dies ist die Aufgabe des Benutzers.
Service Account-Schlüssel erstellen (eigenen Schlüssel bereitstellen)
Abschnitt betitelt „Service Account-Schlüssel erstellen (eigenen Schlüssel bereitstellen)“- Scrollen Sie nach unten zu IAM and Verwaltung
- Klicken Sie auf Service Accounts.
- Wählen Sie den Service Account aus, für den Sie einen Schlüssel erstellen möchten.
- Klicken Sie auf Service Account Schlüssel.
- Klicken Sie auf + Service Account Schlüssel erstellen
- Klicken Sie auf Öffentlichen Schlüssel hochladen.
- Laden Sie die
.pem-Datei hoch. - Optional: Wählen Sie ein Ablaufdatum aus.
- Klicken Sie auf Erstellen.
stackit service-account key create --email my-service-account-email --public-key @./public.pemÖffentlicher Schlüssel des vom Benutzer generierten RSA 2048-Schlüsselpaars. Muss im x509-Format sein. Kann ein String oder der Pfad zur .pem-Datei sein, wenn er mit „@“ beginnt.
Lesen Sie die Dokumentation Create Service Account Keys im API-Explorer.
Ein RSA-Schlüsselpaar erstellen
openssl req -x509 -nodes -newkey rsa:2048 -days 365 \-keyout /path/to/private_key.pem \-out /path/to/public_key.pem \-subj "/CN=unused"Wenn Sie ein Schlüsselpaar wie oben beschrieben erstellt haben, fügen Sie den öffentlichen Teil zum Payload hinzu.
Die Antwort hat das folgende Format:
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "publicKey": "public key", "createdAt": "2019-08-24T14:15:22Z", "validUntil": "2019-08-24T14:15:22Z", "keyType": "USER_MANAGED", "keyOrigin": "USER_PROVIDED", "keyAlgorithm": "RSA_2048", "active": true, "credentials": { "kid": "string", "iss": "my-sa@sa.stackit.cloud", "sub": "753487e7-10bc-4e69-b3b2-4da33721ea3e", "aud": "string", "privateKey": "private key when generated by the SA service" }}Wichtige Felder:
- credentials.kid: Dies ist die ID des Schlüssels. Muss als kid des selbstsignierten Tokens verwendet werden.
- credentials.iss: Dies ist die E-Mail des Service Accounts. Kann als iss (Aussteller) des selbstsignierten Tokens verwendet werden, oder Sie können stattdessen Ihre Anwendungs- oder VM-ID verwenden.
- credentials.sub: Dies ist die ID des Service Accounts. Muss als sub des selbstsignierten Tokens verwendet werden.
- credentials.aud: Dies ist die URL des Service Account-Dienstes. Muss als aud des selbstsignierten Tokens verwendet werden.
- credentials.privateKey: Existiert nur, wenn der private Schlüssel vom Service Account-Dienst generiert wurde. Wird nicht im Service Account-Dienst gespeichert. Muss vom Client sicher aufbewahrt werden.
Der private Schlüssel identifiziert den Client. Er darf nicht veröffentlicht und (vorzugsweise) nicht geteilt werden. Er muss regelmäßig rotiert werden, was die Aufgabe des Benutzers ist.
Alle Service Account-Schlüssel auflisten
Abschnitt betitelt „Alle Service Account-Schlüssel auflisten“- Scrollen Sie nach unten zu IAM and Verwaltung
- Klicken Sie auf Service Accounts.
- Wählen Sie den Service Account aus, dessen Schlüssel Sie auflisten möchten.
- Klicken Sie auf Service Account Schlüssel.
Ihnen wird eine Übersicht der Service Account-Schlüssel, deren Ersteller und deren Ablaufdaten angezeigt.
stackit service-account key list --email my-service-account-emailLesen Sie die Dokumentation List Service Account Keys im API-Explorer.
Details eines Service Account-Schlüssels anzeigen
Abschnitt betitelt „Details eines Service Account-Schlüssels anzeigen“- Scrollen Sie nach unten zu IAM and Verwaltung
- Klicken Sie auf Service Accounts.
- Wählen Sie den Service Account aus, dessen Schlüssel Sie auflisten möchten.
- Klicken Sie auf Service Account Schlüssel.
- Wählen Sie den Service Account-Schlüssel aus, zu dem Sie detaillierte Informationen erhalten möchten.
Ihnen wird eine Übersicht des Erstellers, des Status und des Ablaufdatums angezeigt.
stackit service-account key describe <key_id> --email my-service-account-emailLesen Sie die Dokumentation Get Service Account Key Details im API-Explorer.
Einen Service Account-Schlüssel aktualisieren
Abschnitt betitelt „Einen Service Account-Schlüssel aktualisieren“- Scrollen Sie nach unten zu IAM and Verwaltung
- Klicken Sie auf Service Accounts.
- Wählen Sie den Service Account aus, dessen Schlüssel Sie auflisten möchten.
- Klicken Sie auf Service Account Schlüssel.
- Wählen Sie den Service Account-Schlüssel aus, den Sie ändern möchten.
stackit service-account key update <key_id> --email my-service-account-email --expires-in-days 30Lesen Sie die Dokumentation Update Service Account Key im API-Explorer.
Einen Service Account-Schlüssel löschen
Abschnitt betitelt „Einen Service Account-Schlüssel löschen“- Scrollen Sie nach unten zu IAM and Verwaltung
- Klicken Sie auf Service Accounts.
- Wählen Sie den Service Account aus, dessen Schlüssel Sie auflisten möchten.
- Klicken Sie auf Service Account Schlüssel.
- Klicken Sie auf die drei Punkte am Ende der Zeile des Service Account-Schlüssels, den Sie löschen möchten.
- Klicken Sie auf Löschen.
- Geben Sie die ID des Service Account-Schlüssels ein.
- Klicken Sie auf Löschen.
stackit service-account key delete <key_id> --email my-service-account-emailLesen Sie die Dokumentation Delete Service Account Key im API-Explorer.