Zum Hauptinhalt springen

Daten abrufen (get)

Daten aus Einträgen und Shortcuts abrufen

Dieses Beispiel zeigt, wie Sie Einträge und Shortcuts aus Passwork im get-Modus abrufen und bestimmte Felder daraus extrahieren können.

Anwendungsfälle

Der get-Befehl bietet zahlreiche Anwendungsfälle für die sichere Arbeit mit Daten aus Passwork:

  1. Bestimmte Felder extrahieren — einzelne Werte abrufen (Name, Passwort, Login, URL, Beschreibung, Tags oder benutzerdefinierte Felder)
  2. Verwendung in Skripten — Integration in Bash-Skripte und andere Automatisierungstools für sichere Passwortverarbeitung
  3. CI/CD-Pipelines — Geheimnisse an Build- und Bereitstellungsprozesse übergeben, ohne sie in Konfigurationsdateien zu speichern
  4. TOTP-Code-Generierung — Erstellen von Einmalpasswörtern für die Zwei-Faktor-Authentifizierung aus Geheimnissen, die in benutzerdefinierten Feldern gespeichert sind
  5. Benutzerdefinierte Daten abrufen — API-Schlüssel, Zugriffstoken und andere benutzerdefinierte Felder aus Einträgen extrahieren
  6. Arbeiten mit Shortcuts — Daten über Shortcuts abrufen, um auf Einträge aus anderen Tresoren zuzugreifen
  7. Sichere Passwortverwaltung — Passwörter abrufen, ohne sie auf der Festplatte oder im Befehlszeilenverlauf zu speichern

Identifikation von Einträgen/Shortcuts

Geben Sie die Datenquelle an, einer der Parameter ist erforderlich:

ParameterBeschreibung
--password-idEintrags-ID
--shortcut-idShortcut-ID

Ausgabemodi und Extraktion

ParameterBeschreibung
--fieldZeigt das angegebene Feld eines Eintrags oder Shortcuts an
--jsonGibt alle verfügbaren Daten für den Eintrag/Shortcut im JSON-Format aus
--totp-codeGeneriert und gibt einen TOTP-Code aus einem Feld mit einem Geheimnis in Base32 oder otpauth:// aus

Von --field unterstützte Felder:

  • name, login, password, url, description, tags
  • Benutzerdefinierte Felder nach Name, zum Beispiel API_KEY, SERVICE_ACCOUNT

Grundlegende Verwendung

Passwort eines Eintrags per ID abrufen

passwork-cli get \
--host "https://passwork.example.com" \
--token "your_access_token" \
--master-key "your_master_key" \
--password-id "68793e13dfc88d879e0f2e39" \

Standardmäßig wird das Passwort abgerufen. Wenn das Passwortfeld leer ist, wird ein Fehler angezeigt.

Verwendung von Umgebungsvariablen

Sie können Passwork-Daten als Umgebungsvariablen exportieren:

export PASSWORK_HOST="https://passwork.example.com"
export PASSWORK_TOKEN="your_access_token"
export PASSWORK_MASTER_KEY="your_master_key"

# Then retrieve without specifying credentials
passwork-cli get --password-id "68793e13dfc88d879e0f2e39"

Dies ist nützlich für Automatisierungsskripte und CI/CD-Pipelines, bei denen Anmeldedaten sicher als Umgebungsvariablen gespeichert werden können.

Bestimmte Felder extrahieren

# Item name
passwork-cli get --password-id "68793e13dfc88d879e0f2e39" --field name

# Custom field (e.g., API_KEY)
passwork-cli get --password-id "68793e13dfc88d879e0f2e39" --field API_KEY

TOTP-Code-Generierung

Sie können TOTP-Codes (Time-based One-Time Password) aus Geheimnissen generieren, die in benutzerdefinierten Feldern gespeichert sind. Dies ist nützlich für die Zwei-Faktor-Authentifizierung.

TOTP-Geheimnisfeld verwenden

# Generate TOTP code from a custom field containing a secret
passwork-cli get \
--password-id "68793e13dfc88d879e0f2e39" \
--totp-code "TOTP_SECRET" \

Der Parameter --totp-code erwartet den Namen eines Feldes (benutzerdefiniert), das Folgendes enthält:

  • Rohes TOTP-Geheimnis (String in Base32-Kodierung)
  • Oder eine otpauth://-URL, zum Beispiel:
otpauth://totp/Service:[email protected]?secret=JBSWY3DPEHPK3PXP&issuer=Service

Der TOTP-Code wird an stdout ausgegeben, wodurch er einfach in Skripten verwendet oder kopiert werden kann.

Arbeiten mit Shortcuts

Beispiele für Shortcuts:

# Password from shortcut
passwork-cli get --shortcut-id "68d6c94bec3a3fe41209546e"

# Name field from shortcut
passwork-cli get --shortcut-id "68d6c94bec3a3fe41209546e" --field name

# TOTP from totp_secret field
passwork-cli get --shortcut-id "68d6c94bec3a3fe41209546e" --totp-code "totp_secret"

Funktionsweise

  1. CLI verbindet sich mit Passwork unter Verwendung der bereitgestellten Daten
  2. Ruft einen Eintrag oder Shortcut per ID ab
  3. Der Eintrag wird mit dem Masterschlüssel entschlüsselt (bei Verwendung clientseitiger Verschlüsselung)
  4. Wenn --totp-code angegeben ist, wird ein TOTP-Code aus dem angegebenen Feld generiert und ausgegeben
  5. Wenn --field angegeben ist, wird nur der Wert dieses Feldes ausgegeben
  6. Wenn weder --totp-code noch --field angegeben ist, wird der Passwortwert ausgegeben (oder ein Fehler, wenn er leer ist)

Verwendung in Skripten

Der get-Befehl eignet sich für Automatisierungsskripte, bei denen Sie bestimmte Werte aus einem Eintrag abrufen müssen:

#!/bin/bash
DB_PASSWORD=$(passwork-cli get \
--password-id "68d6c94bec3a3fe41209546e")

echo "Connecting to database..."
mysql -u admin -p"$DB_PASSWORD" mydatabase