Advertisement
Guest User

Untitled

a guest
Jan 20th, 2017
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.63 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. case "${1}" in
  4. add)
  5. set -e
  6. shift; SERVICE="${1}"
  7. [ -n "${SERVICE}" ] || { echo "Usage $0 add <service>" >&2; exit 1; }
  8. echo "Adding keychain stoken service '${SERVICE}' token password data"
  9. /usr/bin/security add-generic-password -s "${SERVICE}" -a "${SERVICE}.token" -w || exit $?
  10. echo "Adding keychain stoken service ${SERVICE} token PIN data..."
  11. /usr/bin/security add-generic-password -s "${SERVICE}" -a "${SERVICE}.pin" -w || exit $?
  12. ;;
  13. remove)
  14. shift; SERVICE="${1}"
  15. [ -n "${SERVICE}" ] || { echo "Usage $0 remove <service>" >&2; exit 1; }
  16. echo "Removing keychain stoken service '${SERVICE}'"
  17. /usr/bin/security delete-generic-password -s "${SERVICE}" -a "${SERVICE}.token" &>/dev/null
  18. /usr/bin/security delete-generic-password -s "${SERVICE}" -a "${SERVICE}.pin" &>/dev/null
  19. exit 0
  20. ;;
  21. generate)
  22. set -e
  23. shift; SERVICE="${1}"
  24. [ -n "${SERVICE}" ] || { echo "Usage $0 generate <service> [generate [options [...]]]"; exit 1; }
  25. TOKEN="$(/usr/bin/security find-generic-password -s "${SERVICE}" -a "${SERVICE}.token" -w)"
  26. if [ $# -eq 1 ]; then
  27. /usr/bin/security find-generic-password -s "${SERVICE}" -a "${SERVICE}.pin" -w \
  28. | stoken --token="${TOKEN}" -s
  29. else
  30. shift
  31. echo "Adding generated stoken service '${SERVICE}'"
  32. /usr/bin/security add-generic-password "$@" -w "$(${0} generate "${SERVICE}")"
  33. fi
  34. ;;
  35. *) echo "Usage: $0 <add|remove|generate> <service> [generate [options [...]]]" >&2; exit 1 ;;
  36. esac
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement