Create an admin user. You'll need this user to get back into Influx once auth is enabled.
CREATE USER <admin_user> WITH PASSWORD '<admin_password>' WITH ALL PRIVILEGES
Modify InfluxDB's configuration to enable HTTP authentication, then restart InfluxDB
sed -i 's/# auth-enabled = false/auth-enabled = true/' /etc/influxdb/influxdb.conf && \
systemctl restart influxdb.service
Create a normal user
CREATE USER <user> WITH PASSWORD '******************'
Changing a user's password
SET PASSWORD FOR "<user>" = '*********'
Granting admin rights
CREATE USER <username> WITH PASSWORD '<password>' WITH ALL PRIVILEGES
Revoking privileges
REVOKE ALL PRIVILEGES FROM <username>
Show users admin status
SHOW USERS
Granting privileges
GRANT [READ,WRITE,ALL] ON <database_name> TO <username>
Revoking privileges
REVOKE [READ,WRITE,ALL] ON <database_name> FROM <username>
Viewing grants
SHOW GRANTS FOR <user>