KPScript - Les opérations de commande uniqueComment utiliser KPScript avec des opérations de commande unique pour effectuer des opérations de base de données simples ? |
KPScript peut être appelé à l'aide de commandes uniques. En transmettant l'emplacement de la base de données, sa clé, une commande et éventuellement certains paramètres, des opérations simples comme l'ajout d'une entrée peuvent être effectuées. La syntaxe est très simple, aucune connaissance en script n'est requise. Cette méthode est idéale lorsque vous souhaitez apporter rapidement de petites modifications à la base de données. Il n'est pas recommandé lorsque vous devez effectuer de nombreuses opérations, car pour chaque commande, la base de données doit être chargée à partir du fichier, déchiffrée, modifiée, chiffrée et réécrite dans le fichier.
Les commandes sont spécifiées en passant -c:COMMAND
à KPScript, où COMMAND
est la commande à exécuter (voir ci-dessous pour une liste des commandes disponibles).
L'emplacement de la base de données est passé à KPScript en le passant simplement comme paramètre, sans aucun préfixe d'option.
La clé principale de la base de données peut être transmise à KPScript de l'une des manières suivantes :
-pw:
, -pw-enc:
, -keyfile:
et -useraccount
. Par exemple, pour transmettre "Secret" comme mot de passe, vous devez donner à KPScript le paramètre suivant : -pw:Secret
. Si le mot de passe contient des espaces ou d'autres caractères spéciaux, il doit être entouré de doubles quotes : -pw:"Mon mot de passe top secret"
. Pour -pw-enc:
, consultez le paramètre substituable {PASSWORD_ENC}
. Le paramètre -keyfile:
peut spécifier l'emplacement du fichier clé. Si -useraccount
est transmis à KPScript, alors l'accréditation du compte utilisateur de l'utilisateur actuellement connecté est utilisée, sinon non.-keyprompt
à KPScript, alors il lira le mot de passe, le chemin du fichier de clé et l'indicateur de compte utilisateur à partir du flux de l'entrée standard. Cette option est destinée à transmettre par programme la clé à KPScript. Pour entrer le mot de passe à la main, il est recommandé d'utiliser à la place la boîte de dialogue normale de la clé principale (car dans cette boîte de dialogue, le mot de passe est masqué par des puces/astérisques et il est chiffré par la protection de la mémoire du processus), voir -guikeyprompt
.-guikeyprompt
à KPScript, alors il vous demandera la clé à l'aide de la boîte de dialogue de clé principale normale de KeePass.Veuillez noter que les commandes sont ajoutées progressivement en fonction des demandes des utilisateurs. S'il vous manque une commande, alors veuillez en informer l'équipe KeePass et elle sera ajoutée à la prochaine version de KPScript.
Actuellement, les commandes suivantes sont disponibles :
Commande : ListGroups
Cette commande répertorie tous les groupes dans un format facilement lisible par la machine. La sortie n'est pas destinée à être imprimée/utilisée directement. Exemple d'utilisation :
KPScript -c:ListGroups "C:\KeePass\MaBdD.kdbx" -pw:MonMotDePasse
Cela listera tous les groupes contenus dans le fichier de base de données MaBdD.kdbx.
Commande : ListEntries
Cette commande répertorie toutes les entrées dans un format facilement lisible par la machine. La sortie n'est pas destinée à être imprimée/utilisée directement. La syntaxe d'identification d'entrée est exactement la même que dans la commande EditEntry. Exemple d'utilisation :
KPScript -c:ListEntries "C:\KeePass\MaBdD.kdbx" -pw:MonMotDePasse -keyfile:"C:\KeePass\MaBdD.key"
Ouvre la base de données MaBdD.kdbx en utilisant 'MonMotDePasse' comme mot de passe et le fichier MaBdD.key comme fichier clé. Il affichera une liste de toutes les entrées contenues dans le fichier de base de données MaBdD.kdbx.
Commande : GetEntryString
Récupère la valeur d'un champ de chaîne de caractères d'une entrée. La syntaxe d'identification de l'entrée est exactement la même que dans la commande EditEntry. Des paramètres de ligne de commande supplémentaires :
-Field:NOM
-Field
'. Les noms de champs pris en charge sont par ex. Title, UserName, Password, URL, Notes, etc.-FailIfNotExists
-FailIfNotExists
' et que le champ spécifié n'existe pas, alors l'opération est abandonnée et une erreur est renvoyée.-FailIfNoEntry
-FailIfNoEntry
' et qu'aucune entrée n'est trouvée, alors KPScript se termine avec une erreur.-Spr
Exemple d'utilisation :
KPScript -c:GetEntryString "C:\KeePass\MaBdD.kdbx" -pw:MonMotDePasse
-Field:UserName -ref-Title:"Compte de Démo"
Ouvre la base de données MaBdD.kdbx en utilisant 'MonMotDePasse' comme mot de passe.
Il affiche tous les noms d'utilisateur de toutes les entrées qui ont le titre "Compte de Démo".
Commande : AddEntry
Cette commande ajoute une entrée à la base de données. Pour spécifier les détails de l'entrée, utilisez les identificateurs de champ de chaîne de caractères standard comme noms de paramètres et leurs valeurs pour le contenu. Les champs de chaîne de caractères standard pris en charge sont : Title, UserName, Password, URL, and Notes. Exemples d'utilisation :
KPScript -c:AddEntry "C:\KeePass\MaBdD.kdbx" -pw:MonMdP -Title:"Titre de la nouvelle entrée"
KPScript -c:AddEntry "C:\KeePass\MaBdD.kdbx" -pw:MonMdP -Title:UnSiteWeb
-UserName:Don -Password:pao5j3eg -URL:https://exemple.com/
Les paramètres de ligne de commande supplémentaires :
-GroupName:NOM
-GroupName:
peut être utilisé pour spécifier le groupe dans lequel l'entrée est créée. Pour la recherche, KPScript effectue une traversée de préordre et utilise le premier groupe correspondant (le nom est sensible à la casse). Si aucun groupe avec le nom spécifié n'est trouvé, alors il sera créé dans le groupe racine.-GroupPath:CHEMIN
-GroupPath:
(utilisez '/
' comme séparateur). Si vous ne spécifiez pas de nom de groupe ou de chemin, alors l'entrée sera créée dans le groupe racine.-setx-Icon:ID
-setx-CustomIcon:ID
-setx-Expires:VALEUR
true
soit false
.-setx-ExpiryTime:VALEUR
Exemple d'utilisation :
KPScript -c:AddEntry "C:\KeePass\MaBdD.kdbx" -pw:MonMdP -Title:"Mon Fournisseur"
-GroupName:"Sites Internet"
Commande : EditEntry
Cette commande modifie les entrées existantes.
Utilisez un ou plusieurs des paramètres suivants pour identifier les entrées à modifier ; toutes les conditions spécifiées doivent correspondre :
-ref-NOMDUCHAMP:VALEURDUCHAMP
//
', alors elle est traitée comme
"https://docs.microsoft.com/en-us/dotnet/standard/base-types/regular-expression-language-quick-reference
expression régulière,
qui doit apparaître dans le champ de l'entrée pour l'entrée qui correspond.
Par exemple : -ref-Title:"//Test\d\d//"
correspond à toutes les entrées qui contiennent 'Test' suivi par au moins deux chiffres.-refx-UUID:VALEUR
-refx-Tags:VALEUR
,
'.-refx-Expires:VALEUR
true
ou false
.
Ce paramètre permet de spécifier si l'entrée expire parfois (c'est-à-dire si la case à cocher 'Expire le :' est cochée, indépendant du temps d'expiration).-refx-Expired:VALEUR
true
ou false
.
Ce paramètre permet de spécifier si l'entrée a expiré (c'est-à-dire si la case à cocher 'Expire le :' est cochée et que le temps d'expiration n'est pas dans le futur).-refx-Group:VALEUR
-refx-GroupPath:VALEUR
/
' comme séparateur de groupe.-refx-All
Utilisez un ou plusieurs des paramètres suivants pour spécifier comment l'entrée doit être modifiée :
-set-NOMDUCHAMP:VALEURDUCHAMP
-setx-Icon:ID
-setx-CustomIcon:ID
-setx-Expires:VALEUR
true
ou false
.-setx-ExpiryTime:VALEUR
Exemples d'utilisation :
KPScript -c:EditEntry "C:\KeePass\MaBdD.kdbx" -pw:MonMdP -ref-Title:"Titre d'une entrée existante" -set-UserName:"Nouveauy Nom d'utilisateur"
KPScript -c:EditEntry "C:\KeePass\MaBdD.kdbx" -pw:MonMdP -ref-UserName:MonNom
-set-UserName:NouveauNom -set-Password:"Top Secret"
Si vous transmettez en plus -CreateBackup
, alors KPScript créera d'abord des sauvegardes des entrées avant de les modifier.
Commande : MoveEntry
Cette commande déplace une ou plusieurs entrées existantes. La syntaxe d'identification d'entrée est exactement la même que dans la commande EditEntry.
-GroupPath:CHEMIN
-GroupPath:
. '/' doit être utilisé comme séparateur (par exemple : -GroupPath:Internet/Courriel
déplace les entrées spécifiées vers le sous-groupe 'Courriel' du sous-groupe 'Internet').-NomGroupe:NOM
-GroupName:
peut être utilisé (voir la commande AddEntry pour plus de détails).Commande : DeleteEntry
Cette commande supprime une ou plusieurs entrées existantes. La syntaxe d'identification de l'entrée est exactement la même que dans la commande EditEntry.
Commande : DeleteAllEntries
Cette commande supprime toutes les entrées (dans tous les sous-groupes).
Commande : Import
Cette commande importe un fichier dans la base de données.
-Format:NOM
-File:CHEMIN
-MM:VALEUR
-imp_*:VALEUR
-imp_
' (c'est-à-dire -imp_pw:
, -imp_pw-enc:
, -imp_keyfile:
, -imp_useraccount
, -imp_keyprompt
, -imp_guikeyprompt
).Exemple d'utilisation :
KPScript -c:Import "C:\KeePass\MaBdD.kdbx" -pw:MonMdP -Format:"KeePass XML (2.x)" -File:FichierSource.xml
Commande : Export
Cette commande exporte (des parties de) la base de données.
-Format:NOM
-OutFile:CHEMIN
-GroupPath:CHEMIN
/
' comme séparateur).-XslFile:PATH
Exemple d'utilisation :
KPScript -c:Export "C:\KeePass\MaBdD.kdbx" -pw:MonMdP -Format:"KeePass XML (2.x)" -OutFile:FichierCible.xml
Commande : Sync
Cette commande synchronise la base de données avec une autre. L'autre chemin de la base de données doit être spécifié à l'aide du paramètre de ligne de commande "-File". Exemple d'utilisation :
KPScript -c:Sync -guikeyprompt "C:\Chemin\A.kdbx" -File:"C:\Chemin\B.kdbx"
Commande : ChangeMasterKey
Cette commande modifie la clé principale de la base de données. Les nouvelles valeurs de clé sont spécifiées à l'aide des options standard précédées de 'new', c'est-à-dire -newpw:
, -newkeyfile:
et -newuseraccount
(toutes sont facultatives). Exemple d'utilisation :
KPScript -c:ChangeMasterKey "C:\KeePass\MaBdD.kdbx" -pw:MonMdP -newpw:MonNouveauMdP
Commande : DetachBins
Cette commande enregistre toutes les pièces jointes d'entrée (dans le répertoire de la base de données) et les supprime de la base de données. Exemple d'utilisation :
KPScript -c:DetachBins -guikeyprompt "C:\KeePass\MaBdD.kdbx"
Commande : GenPw
Génère des mots de passe :
-count:NOMBRE
-count:
.-profile:NOM
-profile:
(les noms de tous les profils disponibles peuvent être trouvés dans la boîte de dialogue du générateur de mot de passe).Exemples d'utilisation :
KPScript -c:GenPw
Génère un mot de passe en utilisant le profil du générateur par défaut.
KPScript -c:GenPw -count:5 -profile:"Hex Key - 128-Bit (built-in)"
Génère cinq mots de passe hexadécimaux sur 128 bits (quand aucune traduction n'est utilisée).
Commande : EstimateQuality
Estime la qualité (en bits) du mot de passe spécifié via le paramètre -text:
. Exemple d'utilisation :
KPScript -c:EstimateQuality -text:MonMotDePasseTopSecret
Si vous observez des caractères spéciaux brouillés dans la sortie, alors veuillez lire la page Console Character Encoding.