# Configuring SASL You can either configure SASL through `!serverset sasl` from an registered and identified admin account or directly through sqlite. ## USERPASS Mechanism BitBot supports a special SASL mechanism name: `USERPASS`. This internally represents "pick the strongest username:password algorithm" ## !serverset sasl These commands are to be executed from a registered admin account #### USERPASS > !serverset sasl userpass <username>:<password> #### PLAIN > !serverset sasl plain <username>:<password> #### SCRAM-SHA-1 > !serverset sasl scram-sha-1 <username>:<password> #### SCRAM-SHA-256 > !serverset sasl scram-sha-256 <username>:<password> #### EXTERNAL > !serverset sasl external ## sqlite Execute these against the current bot database file (e.g. `$ sqlite3 databases/bot.db`) #### USERPASS > INSERT INTO server_settings (<serverid>, 'sasl', '{"mechanism": "userpass", "args": "<username>:<password>"}'); #### PLAIN > INSERT INTO server_settings (<serverid>, 'sasl', '{"mechanism": "plain", "args": "<username>:<password>"}'); #### SCRAM-SHA-1 > INSERT INTO server_settings (<serverid>, 'sasl', '{"mechanism": "scram-sha-1", "args": "<username>:<password>"}'); #### SCRAM-SHA-256 > INSERT INTO server_settings (<serverid>, 'sasl', '{"mechanism": "scram-sha-256", "args": "<username>:<password>"}'); #### external > INSERT INTO server_settings (<serverid>, 'sasl', '{"mechanism": "external"}');