¿Se puede usar `sudo` solo para cambiar a otro con una contraseña?

¿Se puede usar `sudo` solo para cambiar a otro con una contraseña?

Actualmente estoy escribiendo un programa en Go e intentando implementar una funcionalidad de cambio de usuario. Sin embargo, no puedo encontrar una manera limpia de enviar una contraseña a través de stdin a su. sudo -Spermite la entrada de contraseña estándar, pero como esto requiere la configuración de reglas sudo, no es ideal. Entonces:

  • ¿Existe una forma limpia de utilizar su mediante programación? O
  • ¿Se puede usar sudo solo para cambiar de usuario?

información relacionada