# salt.modules.webutil

Support for htpasswd command. Requires the apache2-utils package for Debian-based distros.

Added in version 2014.1.0.

The functions here will load inside the webutil module. This allows other functions that don't use htpasswd to use the webutil module name.

salt.modules.webutil.useradd(pwfile, user, password, opts='', runas=None)

  Add a user to htpasswd file using the htpasswd command. If the htpasswd file does not exist, it will be created.

  pwfile

    Path to htpasswd file

  user

    User name

  password

    User password

  opts

    Valid options that can be passed are:

    > - n Don't update file; display results on stdout.

    > - m Force MD5 encryption of the password (default).

    > - d Force CRYPT encryption of the password.

    > - p Do not encrypt the password (plaintext).

    > - s Force SHA encryption of the password.

  runas

    The system user to run htpasswd command with

  CLI Examples:

      salt '*' webutil.useradd /etc/httpd/htpasswd larry badpassword
      salt '*' webutil.useradd /etc/httpd/htpasswd larry badpass opts=ns

salt.modules.webutil.userdel(pwfile, user, runas=None, all_results=False)

  Delete a user from the specified htpasswd file.

  pwfile

    Path to htpasswd file

  user

    User name

  runas

    The system user to run htpasswd command with

  all_results

    Return stdout, stderr, and retcode, not just stdout

  CLI Examples:

      salt '*' webutil.userdel /etc/httpd/htpasswd larry

salt.modules.webutil.verify(pwfile, user, password, opts='', runas=None)

  Return True if the htpasswd file exists, the user has an entry, and their password matches.

  pwfile

    Fully qualified path to htpasswd file

  user

    User name

  password

    User password

  opts

    Valid options that can be passed are:

    > - m Force MD5 encryption of the password (default).

    > - d Force CRYPT encryption of the password.

    > - p Do not encrypt the password (plaintext).

    > - s Force SHA encryption of the password.

  runas

    The system user to run htpasswd command with

  CLI Examples:

      salt '*' webutil.verify /etc/httpd/htpasswd larry maybepassword
      salt '*' webutil.verify /etc/httpd/htpasswd larry maybepassword opts=ns