keys-admin.git

commit 396ef2f75d9197909926a91ba0e0aa7dc7e0aa56

Author: Paolo Lulli <paolo@lulli.net>

It edits existing secrets as well

 nyckel | 17 +++++++++++++++++


diff --git a/nyckel b/nyckel
index 4a8a7126ae56608d786cb52f52afa65a1259358b..823f0f806e744b615bd10f33ec3ed19a2ea5cf2f 100755
--- a/nyckel
+++ b/nyckel
@@ -77,6 +77,17 @@
   keepassxc-cli add --key-file ${KEEPASS_FILE} --no-password ${KEEPASS_DB} -u ${entry_user} ${entry}  --password-prompt
 }
 
+update_secret(){
+  profile=$1
+  entry=$2
+  source "$CONFIG_DIR/$profile/config"
+
+  echo "Username"
+  read entry_user
+
+  keepassxc-cli edit --key-file ${KEEPASS_FILE} --no-password ${KEEPASS_DB} -u ${entry_user} ${entry}  --password-prompt
+}
+
 add_random_secret(){
   profile=$1
   entry=$2
@@ -119,6 +130,7 @@   echo "${program} -C              : Create db "
   echo "${program} -L                       : List profiles"
   echo "${program} <profile> -l             : List keys in db <profile>"
   echo "${program} <profile> -W <secret>    : Write <secret> into <profile> db"
+  echo "${program} <profile> -U <secret>    : Update <secret> into <profile> db"
   echo "${program} <profile> -G <secret>    : Generate a random secret and write as <secret> into <profile> db"
   echo "${program} <profile> -s <secret>    : Show <secret> from <profile> db"
   echo "${program} <profile> -c <secret>    : Copy to clipboard <secret> from <profile> db"
@@ -164,6 +176,11 @@   profile_name=$1
   entryname=$3
   if [ "$2" == "-W" ]; then
     add_secret "${profile_name}" "${entryname}"
+    exit
+  fi
+
+  if [ "$2" == "-U" ]; then
+    update_secret "${profile_name}" "${entryname}"
     exit
   fi