Bitwarden-Kommandozeile
Die Bitwarden Kommandozeilen-Schnittstelle (CLI) ist ein leistungsstarkes, voll ausgestattetes Werkzeug zum Zugreifen auf und Verwalten Ihres Tresors. Die meisten Funktionen, die Sie in anderen Bitwarden Client-Anwendungen (Desktop, Browser-Erweiterung usw.) finden, sind auch über die CLI verfügbar.
Die Bitwarden CLI ist selbst dokumentiert. Vom Befehlszeileninterface aus, erfahren Sie mehr über die verfügbaren Befehle mit:
Bashbw --help
Oder geben Sie --help
als Option bei jedem bw
Befehl ein, um verfügbare Optionen und Beispiele zu sehen:
Bashbw list --help
bw move --help
Die meisten Informationen, die Sie benötigen, können Sie mit --help
abrufen, jedoch repliziert dieser Artikel all diese Informationen und geht bei einigen Themen mehr ins Detail.
Die CLI kann plattformübergreifend auf Windows, macOS und Linux-Distributionen verwendet werden. Um das Bitwarden CLI herunterzuladen und zu installieren:
Hinweis
Für arm64 Geräte, installieren Sie die CLI mit npm
.
In jeder Plattform sind nativ verpackte Versionen der CLI verfügbar und haben keine Abhängigkeiten. Laden Sie herunter, indem Sie einen dieser Links verwenden:
Beachten Sie, dass Sie, wenn Sie die heruntergeladene native ausführbare Datei verwenden, die ausführbare Datei zu Ihrem PATH hinzufügen müssen oder sonst Befehle aus dem Verzeichnis ausführen müssen, in das die Datei heruntergeladen wurde.
Tipp
Auf UNIX-Systemen erhalten Sie möglicherweise die Meldung Permission denied
. Wenn dies der Fall ist, erteilen Sie die Erlaubnis, indem Sie folgenden Befehl ausführen:
Bashchmod +x </path/to/executable>
Wenn Sie Node.js auf Ihrem System installiert haben, können Sie die CLI mit NPM installieren. Die Installation mit NPM ist die einfachste Möglichkeit, Ihre Installation auf dem neuesten Stand zu halten und sollte die bevorzugte Methode für diejenigen sein, die bereits mit NPM vertraut sind:
Bashnpm install -g @bitwarden/cli
Betrachten Sie das Paket auf npmjs.org.
Hinweis
Die Installation des Bitwarden CLI auf Linux-Systemen mit npm
kann erfordern, dass zuerst die Abhängigkeit build-essential (oder das entsprechende Äquivalent der Distribution) installiert wird. Zum Beispiel:
Bashapt install build-essential
Zur Installation mit Chocolatey:
Bashchoco install bitwarden-cli
Betrachten Sie das Paket auf community.chocolatey.org.
Bevor Sie sich anmelden, stellen Sie sicher, dass Ihre CLI mit dem richtigen Server verbunden ist (zum Beispiel EU-Cloud oder selbst gehostet) mit dem config-Befehl (mehr erfahren). Es gibt drei Methoden, um sich mit dem Zugangsdaten
Befehl in der Bitwarden CLI anzumelden, von denen jede für verschiedene Situationen geeignet ist. Bitte überprüfen Sie die folgenden Optionen, um zu bestimmen, welche Methode Sie verwenden sollten:
Verwendung von E-Mail-Adresse und Master-Passwort
Verwendung eines API-Schlüssels
Verwendung von SSO
Unabhängig davon, welche Option Sie verwenden, stellen Sie immer sicher, dass Sie die Befehle bw sperren
oder bw abmelden
verwenden, wenn Sie fertig sind.
Tipp
Bei der Anmeldung mit E-Mail-Adresse und Master-Passwort wird Ihr Master-Passwort verwendet, sodass die Befehle login
und unlock
zum Anmelden und Entsperren miteinander verknüpft werden können, um Ihre Identität zu authentifizieren und Ihren Tresor gleichzeitig zu entschlüsseln. Bei der Verwendung eines API-Schlüssels oder von SSO müssen Sie dem login
-Befehl einen expliziten bw unlock
-Befehl folgen lassen, wenn Sie direkt mit Tresordaten arbeiten wollen.
Das liegt daran, dass Ihr Master-Passwort die Quelle des Schlüssels ist, der zur Entschlüsselung der Tresordaten benötigt wird. Es gibt jedoch einige Befehle, für die Ihr Tresor nicht entschlüsselt werden muss, darunter config
, encode
, generate
, update
und status
.
Für interaktive Sitzungen wird die Anmeldung mit E-Mail und Passwort empfohlen . Um sich mit E-Mail-Adresse und Passwort anzumelden:
Bashbw login
Dies wird eine Aufforderung für Ihre E-Mail-Adresse, Master-Passwort und (falls aktiviert) bei Zwei-Schritt-Login-Code initiieren. Die CLI unterstützt derzeit die zweistufige Anmeldung über Authentifizierung, E-Mail-Adresse oder YubiKey.
Sie können diese Faktoren zu einem einzigen Befehl zusammenfügen, wie im folgenden Beispiel, jedoch wird dies aus Sicherheitsgründen nicht empfohlen:
Bashbw login [email] [password] --method <method> --code <code>
Siehe Enums für zweistufige Zugangsdaten Werte.
Tipp
Sie werden zur zusätzlichen Authentifizierung aufgefordert oder erhalten eine Fehlermeldung, wonach Ihre Authentifizierungsanfrage von einem Bot zu kommen scheint? Verwenden Sie
client_secret
für Ihren API-Schlüssel, um die Authentifizierungsanforderung zu beantworten. Mehr erfahren.
Es wird empfohlen, sich mit dem persönlichen API-Schlüssel anzumelden für automatisierte Arbeitsabläufe, um einem externen Anwendung Zugang zu gewähren, oder wenn Ihr Konto eine 2FA-Methode verwendet, die von der CLI nicht unterstützt wird (FIDO2 oder Duo). Um sich mit dem API-Schlüssel anzumelden:
Bashbw login --apikey
Dies wird eine Aufforderung für Ihre persönliche client_id
und client_secret
initiieren. Sobald Ihre Sitzung mit diesen Werten authentifiziert ist, können Sie den Befehl entsperren
verwenden. Erfahren Sie mehr.
Tipp
Wenn Ihre Organisation SSO erfordert, können Sie sich trotzdem mit --apikey
über die Kommandozeile anmelden.
Verwendung von API-Schlüssel-Umgebungsvariablen
In Szenarien, in denen automatisierte Arbeiten mit der Bitwarden CLI durchgeführt werden, können Sie Umgebungsvariablen speichern, um die Notwendigkeit einer manuellen Eingriff bei der Authentifizierung zu vermeiden.
Name der Umgebungsvariable | Erforderlicher Wert |
---|---|
BW_CLIENTID |
|
BW_CLIENTGEHEIMNIS |
|
Es wird empfohlen, sich mit SSO anzumelden, wenn eine Organisation eine SSO-Authentifizierung erfordert. Um sich mit SSO anzumelden:
Bashbw login --sso
Dies wird den SSO-Authentifizierungsfluss in Ihrem Web-Browser initiieren. Sobald Ihre Sitzung authentifiziert ist, können Sie den Befehl entsperren
verwenden. Erfahren Sie mehr.
Tipp
Wenn Ihre Organisation SSO erfordert, können Sie alternativ --apikey
verwenden, um sich über die Kommandozeile anzumelden.
Wie bei der Verwendung von Kontowechsel auf anderen Bitwarden-Apps hat die CLI die Möglichkeit, sich gleichzeitig bei mehreren Konten anzumelden, indem sie die BITWARDENCLI_APPDATA_DIR
Umgebungsvariable verwendet, die auf den Speicherort einer bw
Konfigurationsdatei zeigt, normalerweise benannt als data.json
. Sie können beispielsweise Aliase in einem .bashrc
Profil für zwei separate Einstellungen setzen:
Bashalias bw-personal="BITWARDENCLI_APPDATA_DIR=~/.config/Bitwarden\ CLI\ Personal /path/to/bw $@"
alias bw-work="BITWARDENCLI_APPDATA_DIR=~/.config/Bitwarden\ CLI\ Work /path/to/bw $@"
Mit diesem Beispiel könnten Sie dann die Zugangsdaten für zwei Konten verwenden, indem Sie zuerst source /path/to/.bashrc
ausführen, gefolgt von bw-personal Zugangsdaten
und bw-work Zugangsdaten
.
Die Verwendung eines API-Schlüssels oder SSO zum Anmelden erfordert, dass Sie den Zugangsdaten
-Befehl mit einem expliziten bw entsperren
befolgen, wenn Sie direkt mit Tresor-Daten arbeiten werden.
Das Entsperren Ihres Tresors generiert einen Sitzungsschlüssel, der als Entschlüsselungsschlüssel dient, um mit Daten in Ihrem Tresor zu interagieren. Der Sitzungsschlüssel muss verwendet werden, um einen Befehl auszuführen, der die Tresor Daten berührt (zum Beispiel, auflisten
, erhalten
, bearbeiten
). Sitzungsschlüssel sind gültig, bis sie mit bw sperren
oder bw abmelden
ungültig gemacht werden, sie bleiben jedoch nicht bestehen, wenn Sie ein neues Terminalfenster öffnen. Generieren Sie jederzeit einen neuen Sitzungsschlüssel mit:
Bashbw unlock
Wenn Sie fertig sind, beenden Sie immer Ihre Sitzung mit dem Befehl bw sperren
.
Sie können die Optionen --passwordenv
oder --passwordfile
zusammen mit bw entsperren
verwenden, um Ihr Master-Passwort abzurufen, anstatt es manuell einzugeben, zum Beispiel:
Das Folgende wird nach einer Umgebungsvariable
BW_PASSWORD
suchen. WennBW_PASSWORD
nicht leer ist und korrekte Werte hat, wird die CLI erfolgreich entsperren und einen Sitzungsschlüssel zurückgeben:Bashbw unlock --passwordenv BW_PASSWORD
Das Folgende sucht nach der Datei
~Users/Me/Documents/mp.txt
(die Ihr Master-Passwort als erste Zeile haben muss). Wenn die Datei nicht leer ist und einen korrekten Wert hat, wird die CLI erfolgreich entsperren und einen Sitzungsschlüssel zurückgeben:Bashbw unlock --passwordfile ~/Users/Me/Documents/mp.txt
Warnung
Wenn Sie die Option --passwordfile
verwenden, schützen Sie Ihre Passwortdatei, indem Sie den Zugriff ausschließlich auf den Benutzer beschränken, der bw unlock
ausführen muss, und nur diesem Benutzer Lesezugriff gewähren.
Wenn Sie Ihren Tresor mit bw Zugangsdaten
mit E-Mail-Adresse und Passwort oder bw entsperren
entsperren, gibt die CLI sowohl einen Export BW_SITZUNG
(Bash) als auch einen env:BW_SITZUNG
(PowerShell) Befehl zurück, einschließlich Ihres Sitzungsschlüssels. Kopieren und einfügen Sie den relevanten Eintrag, um die erforderliche Umgebungsvariable zu speichern.
Mit der gesetzten BW_SESSION Umgebungsvariable, werden bw
Befehle auf diese Variable verweisen und können sauber ausgeführt werden, zum Beispiel:
Bashexport BW_SESSION="5PBYGU+5yt3RHcCjoeJKx/wByU34vokGRZjXpSH7Ylo8w=="
bw list items
Alternativ, wenn Sie die Umgebungsvariable nicht setzen, können Sie den Sitzungsschlüssel als Option mit jedem bw
Befehl übergeben:
Bashbw list items --session "5PBYGU+5yt3RHcCjoeJKx/wByU34vokGRZjXpSH7Ylo8w=="
Tipp
Wenn Sie fertig sind, beenden Sie Ihre Sitzung immer mit den Befehlen bw lock
oder bw logout
. Dadurch wird der aktive Sitzungsschlüssel ungültig.
Der erstellen
Befehl erstellt ein neues Objekt (Eintrag
, Anhang
, und mehr) in Ihrem Tresor:
Bashbw create (item|attachment|folder|org-collection) <encodedJson> [options]
Der Befehl erstellen
nimmt kodiertes JSON entgegen. Ein typischer Arbeitsablauf zur Erstellung eines Objekts könnte etwa so aussehen:
Verwenden Sie den Befehl
Vorlage holen
(siehe Kernbefehle holen für Details), um die entsprechende JSON-Vorlage für den Objekt-Typ auszugeben.Verwenden Sie einen Befehlszeilen-JSON-Prozessor wie jq, um die ausgegebene Vorlage nach Bedarf zu manipulieren.
Verwenden Sie den
encode
Befehl (siehe Details), um das manipulierte JSON zu kodieren.Verwenden Sie den
create
Befehl, um ein Objekt aus dem codierten JSON zu erstellen.
Zum Beispiel:
Bashbw get template folder | jq '.name="My First Folder"' | bw encode | bw create folder
oder
Bashbw get template item | jq ".name=\"My Login Item\" | .login=$(bw get template item.login | jq '.username="jdoe" | .password="myp@ssword123"')" | bw encode | bw create item
Nach erfolgreicher Erstellung wird das neu erstellte Objekt als JSON zurückgegeben.
Erstellen Sie andere Eintragstypen
Der Befehl "Erstellen" erstellt standardmäßig einen Eintrag für Zugangsdaten, aber Sie können einen Befehlszeilen-JSON-Prozessor wie jq verwenden, um ein .Typ=
Attribut zu ändern und andere Eintragstypen zu erstellen:
Name | Wert |
---|---|
Zugangsdaten |
|
Sichere Notiz |
|
Karte |
|
Identität |
|
Zum Beispiel wird der folgende Befehl eine sichere Notiz erstellen:
Bashbw get template item | jq '.type = 2 | .secureNote.type = 0 | .notes = "Contents of my Secure Note." | .name = "My Secure Note"' | bw encode | bw create item
Hinweis
Beachten Sie im obigen Beispiel, dass sichere Notizen eine untergeordnete Vorlage (.secureNote.type
) erfordern. Sie können die untergeordneten Vorlagen des Elementtyps mit bw get template
anzeigen (siehe hier für Details).
Anhang erstellen
Der Befehl Dateianhang erstellen
hängt eine Datei an einen vorhandenen Eintrag an.
Im Gegensatz zu anderen Erstellungs-
Operationen, müssen Sie keinen JSON-Prozessor verwenden oder kodieren
, um einen Anhang zu erstellen. Verwenden Sie stattdessen die Option --file
, um die anzuhängende Datei anzugeben, und die Option --itemid
, um den Eintrag anzugeben, an den sie angehängt werden soll. Zum Beispiel:
Bashbw create attachment --file ./path/to/file --itemid 16b15b89-65b3-4639-ad2a-95052a6d8f66
Tipp
Wenn Sie die genaue itemid
, die Sie verwenden möchten, nicht kennen, verwenden Sie bw get item
, um das Element (siehe Details) einschließlich seiner id
auszugeben.
Der get
Befehl ruft ein einzelnes Objekt (Eintrag
, Benutzername
, Passwort
und mehr) aus Ihrem Tresor ab:
Bashbw get (item|username|password|uri|totp|exposed|attachment|folder|collection|organization|org-collection|template|fingerprint) <id> [options]
Der get
Befehl nimmt einen Eintrag id
oder eine Zeichenkette als Argument. Wenn Sie eine Zeichenkette verwenden (zum Beispiel alles andere als eine genaue id
), wird get
Ihre Tresorobjekte durchsuchen, um eines mit einem übereinstimmenden Wert zu suchen. Zum Beispiel würde der folgende Befehl ein Github-Passwort zurückgeben:
Bashbw get password Github
Hinweis
Der get
-Befehl kann nur ein Ergebnis ausgeben, Sie sollten also konkrete Suchbegriffe verwenden. Wenn mehrere Ergebnisse gefunden werden, gibt die Kommandozeile einen Fehler aus.
Anhang erhalten
Der Befehl Anhang holen
lädt einen Dateianhang herunter:
Bashbw get attachment <filename> --itemid <id>
Der Befehl Anhang holen
nimmt einen Dateinamen
und eine genaue ID
. Standardmäßig lädt Anhang holen
den Anhang in das aktuelle Arbeitsverzeichnis herunter. Sie können die Option --output
verwenden, um ein anderes Ausgabeverzeichnis anzugeben, zum Beispiel:
Bashbw get attachment photo.png --itemid 99ee88d2-6046-4ea7-92c2-acac464b1412 --output /Users/myaccount/Pictures/
Hinweis
Bei der Verwendung von --output
muss der Pfad mit einem Schrägstrich (/
) enden, um ein Verzeichnis oder einen Dateinamen anzugeben (/Users/myaccount/Pictures/photo.png
).
Notizen bekommen
Der Befehl Notizen abrufen
ruft die Notiz für jeden Tresor-Eintrag ab:
Bashbw get notes <id>
Der Befehl Notizen holen
nimmt eine genaue Eintrag id
oder Zeichenkette. Wenn Sie eine Zeichenkette verwenden (zum Beispiel alles andere als eine genaue id
), wird Notizen holen
Ihre Tresorobjekte durchsuchen, um eines mit einem übereinstimmenden Wert zu suchen. Zum Beispiel würde der folgende Befehl eine Github Notiz zurückgeben:
Bashbw get notes Github
Vorlage bekommen
Der Befehl get template
gibt das erwartete JSON-Format für ein Objekt zurück (Eintrag
, Eintrag.Feld
, Eintrag.Anmeldung
und mehr):
Bashbw get template (item|item.field|item.login|item.login.uri|item.card|item.identity|item.securenote|folder|collection|item-collections|org-collection)
Während Sie get template
verwenden können, um das Format auf Ihrem Bildschirm auszugeben, ist der häufigste Anwendungsfall, die Ausgabe in eine bw create
Operation zu leiten, unter Verwendung eines Befehlszeilen-JSON-Prozessors wie jq und bw encode
, um die aus der Vorlage abgerufenen Werte zu manipulieren, zum Beispiel:
Bashbw get template folder | jq '.name="My First Folder"' | bw encode | bw create folder
Hinweis
Jede item.xxx
-Vorlage sollte als untergeordnetes Objekt zu einer item
-Vorlage verwendet werden, z. B:
Bashbw get template item | jq ".name=\"My Login Item\" | .login=$(bw get template item.login | jq '.username="jdoe" | .password="myp@ssword123"')" | bw encode | bw create item
Der bearbeiten
Befehl bearbeitet ein Objekt (Eintrag
, Eintrag-Sammlungen
, usw.) in Ihrem Tresor:
Bashbw edit (item|item-collections|folder|org-collection) <id> [encodedJson] [options]
Der bearbeiten
Befehl nimmt eine genaue id
(das zu bearbeitende Objekt) und codiertes JSON (zu machende Änderungen) entgegen. Ein typischer Arbeitsablauf könnte etwa so aussehen:
Verwenden Sie den
get
Befehl (siehe Details), um das Objekt auszugeben, das zu bearbeiten ist.Verwenden Sie einen Befehlszeilen-JSON-Prozessor wie jq, um das ausgegebene Objekt nach Bedarf zu manipulieren.
Verwenden Sie den
encode
Befehl (siehe Details), um das manipulierte JSON zu kodieren.Verwenden Sie den Befehl
bearbeiten
(einschließlich des Objektsid
), um das Objekt zu bearbeiten.
Zum Beispiel, um das Passwort eines Zugangsdaten-Eintrags zu bearbeiten:
Bashbw get item 7ac9cae8-5067-4faf-b6ab-acfd00e2c328 | jq '.login.password="newp@ssw0rd"' | bw encode | bw edit item 7ac9cae8-5067-4faf-b6ab-acfd00e2c328
Oder, um die Sammlung(en), in der ein Eintrag enthalten ist, zu bearbeiten:
Bashecho '["5c926f4f-de9c-449b-8d5f-aec1011c48f6"]' | bw encode | bw edit item-collections 28399a57-73a0-45a3-80f8-aec1011c48f6 --organizationid 4016326f-98b6-42ff-b9fc-ac63014988f5
Oder, eine Sammlung zu bearbeiten:
Bashbw get org-collection ee9f9dc2-ec29-4b7f-9afb-aac8010631a1 --organizationid 4016326f-98b6-42ff-b9fc-ac63014988f5 | jq '.name="My Collection"' | bw encode | bw edit org-collection ee9f9dc2-ec29-4b7f-9afb-aac8010631a1 --organizationid 4016326f-98b6-42ff-b9fc-ac63014988f5
Der Befehl bearbeiten
führt eine ersetzen Operation auf dem Objekt aus. Sobald abgeschlossen, wird das aktualisierte Objekt als JSON zurückgegeben.
Der Befehl Liste
ruft ein Array von Objekten (Einträge
, Ordner
, Sammlungen
und mehr) aus Ihrem Tresor ab:
Bashbw list (items|folders|collections|organizations|org-collections|org-members) [options]
Optionen für den list
Befehl sind Filter, die bestimmen, was zurückgegeben wird, einschließlich --url
, --folderid
, --collectionid
, --organizationid
und --trash
. Jeder Filter akzeptiert null
oder nichtnull
. Die Kombination mehrerer Filter in einem Befehl führt eine ODER-Operation aus, zum Beispiel:
Bashbw list items --folderid null --collectionid null
Dieser Befehl gibt Einträge zurück, die sich nicht in einem Ordner oder einer Sammlung befinden.
Zusätzlich können Sie nach spezifischen Objekten suchen, indem Sie --suchen
verwenden. Die Kombination von Filter und Suche in einem Befehl führt eine UND-Operation aus, zum Beispiel:
Bashbw list items --search github --folderid 9742101e-68b8-4a07-b5b1-9578b5f88e6f
Dieser Befehl wird nach Einträgen mit der Zeichenkette github
im angegebenen Ordner suchen.
Der löschen
Befehl löscht ein Objekt aus Ihrem Tresor. löschen
nimmt nur eine genaue id
als Argument.
Bashbw delete (item|attachment|folder|org-collection) <id> [options]
Standardmäßig wird löschen
einen Eintrag an den Papierkorb senden, wo er 30 Tage verbleiben wird. Sie können einen Eintrag dauerhaft löschen, indem Sie die Option -p, --permanent
verwenden.
Bashbw delete item 7063feab-4b10-472e-b64c-785e2b870b92 --permanent
Um eine org-Sammlung
zu löschen, müssen Sie auch --organizationid
angeben. Siehe Organisations-IDs.
Warnung
Während Elemente, die mit delete
gelöscht werden, bis zu 30 Tage lang mit dem Befehl restore wiederhergestellt werden können (siehe Details
), werden Elemente, die mit delete --permanent gelöscht werden, vollständig entfernt und können nicht wiederhergestellt werden
.
Der wiederherstellen
Befehl stellt ein gelöschtes Objekt aus Ihrem Papierkorb wieder her. wiederherstellen
benötigt nur eine genaue ID
als Argument.
Bashbw restore (item) <id> [options]
Zum Beispiel:
Bashbw restore item 7063feab-4b10-472e-b64c-785e2b870b92
Der senden
Befehl erstellt ein Bitwarden Send Objekt für ephemeres Teilen. Dieser Abschnitt wird einfache senden
Operationen im Detail darstellen, jedoch ist senden ein äußerst flexibles Werkzeug und wir empfehlen, den speziellen Artikel über Senden von CLI zu konsultieren.
Um einen einfachen Text zu senden:
Bashbw send -n "My First Send" -d 7 --hidden "The contents of my first text Send."
Um eine einfache Datei zu erstellen, senden Sie:
Bashbw send -n "A Sensitive File" -d 14 -f /Users/my_account/Documents/sensitive_file.pdf
Der empfangen
Befehl greift auf ein Bitwarden senden Objekt zu. Ein Send-Objekt empfangen:
Bashbw receive --password passwordforaccess https://vault.bitwarden.com/#/send/yawoill8rk6VM6zCATXv2A/9WN8wD-hzsDJjfnXLeNc2Q
Der Zugriff auf eine Organisation über die CLI erfordert die Kenntnis einer ID für Ihre Organisation, sowie IDs für einzelne Mitglieder und Sammlungen.
Rufen Sie diese Informationen direkt über die CLI mit bw list
ab, zum Beispiel:
Bashbw list organizations
bw list org-members --organizationid 4016326f-98b6-42ff-b9fc-ac63014988f5
bw list org-collections --organizationid 4016326f-98b6-42ff-b9fc-ac63014988f5
Tipp
Sie können sowohl bw list
als auch Sammlungen
und org-Sammlungen
auflisten. Der Befehl bw list collections
listet alle Sammlungen auf, unabhängig davon, zu welcher Organisation sie gehören. bw list org-collections
listet nur Sammlungen auf, die zur mit --organizationid
angegebenen Organisation gehören.
Hinweis
August 2021: Der Befehl share
wurde in move
geändert. Erfahren Sie mehr.
Der move
-Befehl überträgt einen Tresor-Eintrag an eine Organisation:
Bashbw move <itemid> <organizationid> [encodedJson]
Der Bewegen
-Befehl erfordert, dass Sie eine Sammlungs-ID kodieren
, und nimmt eine genaue ID
(das zu teilende Objekt) und eine genaue Organisations-ID
(die Organisation, mit der das Objekt geteilt werden soll) an. Zum Beispiel:
Bashecho '["bq209461-4129-4b8d-b760-acd401474va2"]' | bw encode | bw move ed42f44c-f81f-48de-a123-ad01013132ca dfghbc921-04eb-43a7-84b1-ac74013bqb2e
Sobald abgeschlossen, wird der aktualisierte Eintrag zurückgegeben.
Der bestätigen
Befehl bestätigt eingeladene Mitglieder in Ihrer Organisation, die ihre Einladung angenommen haben:
Bashbw confirm org-member <id> --organizationid <orgid>
Der bestätigen
Befehl benötigt eine genaue Mitglied ID
und eine genaue OrganisationsID
, zum Beispiel:
Bashbw confirm org-member 7063feab-4b10-472e-b64c-785e2b870b92 --organizationid 310d5ffd-e9a2-4451-af87-ea054dce0f78
Der config
Befehl gibt die Einstellungen an, die Bitwarden CLI verwenden soll:
Bashbw config server <setting> [value]
Ein Hauptverwendungszweck von bw config
besteht darin, Ihre CLI mit einem selbst gehosteten Bitwarden-Server zu verbinden:
Bashbw config server https://your.bw.domain.com
Tipp
Verbinden Sie sich mit dem Bitwarden EU-Server, indem Sie den folgenden Befehl ausführen:
Bashbw config server https://vault.bitwarden.eu
Geben Sie bw config server
ohne einen Wert ein, um den Server zu lesen, mit dem Sie verbunden sind.
Benutzer mit einzigartigen Setups können sich dafür entscheiden, die URL jedes Dienstes unabhängig anzugeben. Beachten Sie, dass jede nachfolgende Verwendung des Config-Befehls alle vorherigen Spezifikationen überschreibt, daher muss dies jedes Mal als einzelner Befehl ausgeführt werden, wenn Sie eine Änderung vornehmen:
Bashbw config server --web-vault <url> \
--api <url> \
--identity <url> \
--icons <url> \
--notifications <url> \
--events <url> \
--key-connector <url>
Hinweis
Der Befehl bw config server --key-connector
ist erforderlich, wenn Ihre Organisation Key Connector verwendet und Sie sich mit der Option --apikey
anmelden, nachdem Sie Ihr Master-Passwort entfernt haben#login-using-sso.
Wenden Sie sich an den Besitzer der Organisation, um die erforderliche URL zu erhalten.
Der Synchronisation
-Befehl lädt Ihren verschlüsselten Tresor vom Bitwarden-Server herunter. Dieser Befehl ist am nützlichsten, wenn Sie etwas in Ihrem Bitwarden-Tresor auf einer anderen Client-Anwendung (zum Beispiel Web-Tresor, Browser-Erweiterung, mobile App) geändert haben, seit Sie sich anmelden auf dem CLI.
Bashbw sync
Sie können die Option --last
übergeben, um nur den Zeitstempel (ISO 8601) der letzten durchgeführten Synchronisation zurückzugeben.
Tipp
Es ist wichtig zu wissen, dass sync nur einen Pull-Vorgang
am Server durchführt. Die Daten werden automatisch auf den Server übertragen, sobald Sie eine Änderung an Ihrem Tresor vornehmen (z. B. create
, edit
, delete
).
Der encode
Befehl kodiert stdin in Base 64. Dieser Befehl wird typischerweise in Kombination mit einem Befehlszeilen-JJSON-Prozessor wie jq verwendet, wenn Erstellungs-
und Bearbeitungs-
operationen durchgeführt werden, zum Beispiel:
Bashbw get template folder | jq '.name="My First Folder"' | bw encode | bw create folder
bw get item 7ac9cae8-5067-4faf-b6ab-acfd00e2c328 | jq '.login.password="newp@ssw0rd"' | bw encode | bw edit item 7ac9cae8-5067-4faf-b6ab-acfd00e2c328
Der Import
-Befehl importiert Daten aus einem Bitwarden-Export oder einer anderen unterstützten Passwort-Manager-Anwendung. Der Befehl muss auf eine Datei zeigen und die folgenden Argumente enthalten:
Bashbw import <format> <path>
Zum Beispiel:
Bashbw import lastpasscsv /Users/myaccount/Documents/mydata.csv
Tipp
Bitwarden unterstützt viele Formate für den Import – zu viele, um sie hier aufzulisten! Verwenden Sie bw import --formats
, um die Liste in Ihrer Kommandozeile anzuzeigen, oder lesen Sie hier mehr.
Wenn Sie eine verschlüsselte .json-Datei importieren, die Sie mit einem Passwort erstellt haben, werden Sie aufgefordert, das Passwort einzugeben, bevor der Import abgeschlossen ist.
Der Export
-Befehl exportiert TresorDaten
als eine .json
oder .csv, oder verschlüsselte .json Datei:
Bashbw export [--output <filePath>] [--format <format>] [--password <password>] [--organizationid <orgid>]
Standardmäßig wird der Export
-Befehl eine .csv
Datei generieren (entspricht der Angabe von --format csv
) im aktuellen Arbeitsverzeichnis, jedoch können Sie spezifizieren:
--format json
zum Export einer.json
Datei--format encrypted_json
zum Export einer verschlüsselten .json Datei--Passwort
um ein Passwort anzugeben, das zur Verschlüsselung vonverschlüsselten_json
Exporten anstelle Ihres Konto-Verschlüsselungsschlüssels verwendet wird.
--output
zum Export an einen bestimmten Ort--raw
, um den Export an stdout zurückzugeben, anstatt an eine Datei
Export aus einem Organisationstresor
Mit dem Export
Befehl und der Option --organizationid
können Sie einen Organisationstresor exportieren:
Bashbw export --organizationid 7063feab-4b10-472e-b64c-785e2b870b92 --format json --output /Users/myaccount/Downloads/
Der generieren
Befehl generiert ein starkes Passwort oder eine Passphrase:
Bashbw generate [--lowercase --uppercase --number --special --length <length> --passphrase --separator <separator> --words <words>]
Standardmäßig wird der Befehl generieren
ein 14-Zeichen-Passwort mit Großbuchstaben, Kleinbuchstaben und Nummern generieren. Dies entspricht dem Bestehen:
Bashbw generate -uln --length 14
Sie können komplexere Passwörter generieren, indem Sie die dem Befehl zur Verfügung stehenden Optionen nutzen, einschließlich:
--Großbuchstaben
,-G
(Großbuchstaben einbeziehen)--kleinschreibung
,-k
(Kleinschreibung einbeziehen)--Nummer
,-n
(Nummern einbeziehen)--speziell
,-s
(beinhaltet Sonderzeichen)--Länge
(Länge des Passworts, mindestens 5)
Generiere ein Passwort
Mit dem generieren
Befehl und der --passphrase
Option können Sie eine Passphrase anstelle eines Passworts generieren:
Bashbw generate --passphrase --words <words> --separator <separator>
Standardmäßig wird bw generieren --passphrase
ein dreiwörtiges Passwort generieren, das durch einen Bindestrich (-
) getrennt ist. Dies entspricht dem Bestehen:
Bashbw generate --passphrase --words 3 --separator -
Sie können ein komplexes Passwort generieren, indem Sie die dem Befehl zur Verfügung stehenden Optionen nutzen, einschließlich:
--Wörter
(Anzahl der Wörter)--Trennzeichen
(Trennzeichen)--kapitalisieren
,-c
(einschließen, um das Passwort in den Titelkasten zu setzen)--includeNumber
(Nummern in der Passphrase einbeziehen)
Der Befehl Aktualisierung
überprüft, ob Ihre Bitwarden CLI die neueste Version ausführt. Aktualisierung
aktualisiert die CLI nicht automatisch für Sie.
Bashbw update
Wenn eine neue Version erkannt wird, müssen Sie die neue Version der CLI mit der gedruckten URL für die ausführbare Datei herunterladen oder die für den Paketmanager, den Sie zum Herunterladen der CLI verwendet haben, verfügbaren Tools verwenden (zum Beispiel, npm install -g @bitwarden/cli
).
Der Befehl Status
gibt Statusinformationen über die Bitwarden CLI zurück, einschließlich der konfigurierten Server-URL, des Zeitstempels für die letzte Synchronisation (ISO 8601), der E-Mail-Adresse und ID des Benutzers sowie des Status des Tresors.
Bashbw status
Der Status wird Informationen als JSON-Objekt zurückgeben, zum Beispiel:
Bash{
"serverUrl": "https://bitwarden.example.com",
"lastSync": "2020-06-16T06:33:51.419Z",
"userEmail": "user@example.com",
"userId": "00000000-0000-0000-0000-000000000000",
"status": "unlocked"
}
Status
kann einer der folgenden sein:
„unlocked“
bedeutet, dass Sie angemeldet sind und Ihr Tresor entsperrt ist (eineBW_SESSION-
Schlüsselumgebungsvariable wird mit einem aktiven Sitzungsschlüssel gespeichert).„locked“
bedeutet, dass Sie angemeldet sind, aber Ihr Tresor gesperrt ist ( keineBW_SESSION-
Schlüsselumgebungsvariable wird mit einem aktiven Sitzungsschlüssel gespeichert).„unauthenticated“
bedeutet, dass Sie nicht angemeldet sind
Tipp
Wenn gilt "status": "unauthenticated"
, geben lastSync
, userEmail
und userID
immer null
aus.
Der serve
-Befehl startet einen lokalen Express-Webserver, der verwendet werden kann, um alle Aktionen, die über die CLI zugänglich sind, in Form von RESTful-API-Aufrufen über eine HTTP-Schnittstelle auszuführen.
Bashbw serve --port <port> --hostname <hostname>
Standardmäßig startet serve
den Webserver auf Port 8087, jedoch können Sie mit der Option --port
einen alternativen Port angeben.
Standardmäßig bindet serve
Ihren API-Webserver an localhost
, jedoch können Sie mit der Option --hostname
einen alternativen Hostnamen angeben. API-Anfragen können nur vom gebundenen Hostnamen gemacht werden.
Standardmäßig blockiert serve
jede Anfrage mit einem Origin
-Header. Sie können diesen Schutz mit der Option --disable-origin-protection
umgehen, jedoch wird dies nicht empfohlen.
Warnung
Sie können --hostname all
angeben, um keine Hostnamenbindung zu haben, dies wird jedoch jeder Maschine im Netzwerk erlauben, API-Anfragen zu stellen.
Sehen Sie sich die API-Spezifikation an , um Hilfe beim Tätigen von Anrufen mit serve
zu erhalten.
Die folgenden Optionen stehen weltweit zur Verfügung:
Option | Beschreibung |
---|---|
| Formatausgabe. JSON ist mit zwei Leerzeichen getabt. |
| Geben Sie rohe Ausgabe zurück, anstatt einer beschreibenden Nachricht. |
| Geben Sie eine JSON-formatierte Version der Antwortausgabe zurück. |
| Geben Sie nichts an stdout zurück. Sie könnten diese Option beispielsweise verwenden, wenn Sie einen Anmeldeinformationswert in eine Datei oder Anwendung leiten. |
| Fordern Sie keine interaktive Benutzereingabe auf. |
| Übergeben Sie den Sitzungsschlüssel anstelle des Lesens aus einer Umgebungsvariable. |
| Geben Sie die Bitwarden CLI-Version Nummer aus. |
| Zeige Hilfetext für den Befehl an. |
Die Bitwarden CLI beinhaltet Unterstützung für ZSH Shell-Vervollständigung. Um die Shell-Vervollständigung einzurichten, verwenden Sie eine der folgenden Methoden:
Vanilla ZSH: Fügen Sie die folgende Zeile zu Ihrer
.zshrc
Datei hinzu:Basheval "$(bw completion --shell zsh); compdef _bw bw;"
Vanilla (Anbieter-Vervollständigungen): Führen Sie den folgenden Befehl aus:
Bashbw completion --shell zsh | sudo tee /usr/share/zsh/vendor-completions/_bw
zinit: Führen Sie die folgenden Befehle aus:
Bashbw completion --shell zsh > ~/.local/share/zsh/completions/_bw zinit creinstall ~/.local/share/zsh/completions
Wenn Ihr selbst gehosteter Bitwarden-Server ein selbstsigniertes TLS-Zertifikat kompromittiert, geben Sie die Node.js-Umgebungsvariable NODE_EXTRA_CA_CERTS an:
Bash
Bashexport NODE_EXTRA_CA_CERTS="absolute/path/to/your/certificates.pem"
PowerShell
Bash$env:NODE_EXTRA_CA_CERTS="absolute/path/to/your/certificates.pem"
Die folgenden Tabellen listen die Werte auf, die in dokumentierten Szenarien benötigt werden:
Zwei-Stufen-Zugangsdaten-Methoden
Wird verwendet, um anzugeben, welche Zwei-Schritt-Zugangsdaten-Methode beim Anmelden verwendet werden soll:
Name | Wert |
---|---|
Authentifikator | 0 |
1 | |
YubiKey | 3 |
Hinweis
FIDO2 und Duo werden nicht von der Kommandozeile unterstützt.
Eintragstypen
Wird mit dem create
-Befehl verwendet, um einen Tresor Eintrag Typ zu spezifizieren:
Name | Wert |
---|---|
Zugangsdaten | 1 |
Sichere Notiz | 2 |
Karte | 3 |
Identität | 4 |
Zugangsdaten URI Übereinstimmungs-Typen
Wird mit dem Erstellen
und Bearbeiten
Befehl verwendet, um das URI Übereinstimmungsverhalten für einen Zugangsdaten-Eintrag zu spezifizieren:
Name | Wert |
---|---|
Domain | 0 |
Server | 1 |
Beginnt mit | 2 |
Exakt | 3 |
Regulärer Ausdruck | 4 |
Niemals | 5 |
Feldtypen
Wird mit den Befehlen erstellen
und bearbeiten
verwendet, um benutzerdefinierte Felder zu konfigurieren:
Name | Wert |
---|---|
Text | 0 |
Versteckt | 1 |
Ja/Nein | 2 |
Organisation Benutzertypen
Zeigt einen Typ des Benutzers an:
Name | Wert |
---|---|
Besitzer | 0 |
Administrator | 1 |
Benutzer | 2 |
Verwalter | 3 |
Benutzerdefiniert | 4 |
Organisation Benutzerstatus
Zeigt den Status eines Benutzers innerhalb der Organisation an:
Name | Wert |
---|---|
Eingeladen | 0 |
Akzeptiert | 1 |
Bestätigt | 2 |
Widerrufen | -1 |
Änderungen an dieser Seite vorschlagen
Wie können wir diese Seite für Sie verbessern?
Bei technischen, Rechnungs- und Produktfragen wenden Sie sich bitte an den Support