matrix-docker-ansible-deploy/docs/updating-users-passwords.md
Suguru Hirahara b04b658735
Add "Web" to Element and SchildiChat web application (#3755)
* Replace "Element" with "Element Web"

- If Element indicates the web application, then it is changed to Element Web.
- If it indicates clients branded with Element such as Element desktop, web, mobile clients, then it is changed to Element clients.
- If it is combined with location sharing functionality, it is not changed.

with other some changes, including:

- Change "app.element.io" anchor link to "https://github.com/element-hq/element-web" on README.md, following other documentation files

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Replace "SchildiChat" with "SchildiChat Web"

- If SchildiChat indicates the web application, then it is changed to SchildiChat Web.
- If it indicates clients branded with SchildiChat such as SchildiChat desktop, web, mobile clients, then it is changed to SchildiChat clients.
- If it is combined with location sharing functionality, it is not changed.

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Rename configuring-playbook-client-schildichat.md to configuring-playbook-client-schildichat-web.md

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Rename configuring-playbook-client-element.md to configuring-playbook-client-element-web.md

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

---------

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
Co-authored-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-11-07 16:31:26 +02:00

2.1 KiB

Updating users passwords

Option 1 (if you are using the integrated Postgres database):

You can reset a user's password via the Ansible playbook (make sure to edit the <your-username> and <your-password> part below):

ansible-playbook -i inventory/hosts setup.yml --extra-vars='username=<your-username> password=<your-password>' --tags=update-user-password

Note: <your-username> is just a plain username (like john), not your full @<username>:example.com identifier.

You can then log in with that user via Element Web that this playbook has created for you at a URL like this: https://element.example.com/.

Option 2 (if you are using an external Postgres server):

You can manually generate the password hash by using the command-line after SSH-ing to your server (requires that all services have been started):

docker exec -it matrix-synapse /usr/local/bin/hash_password -c /data/homeserver.yaml

and then connecting to the postgres server and executing:

UPDATE users SET password_hash = '<password-hash>' WHERE name = '@someone:example.com';

where <password-hash> is the hash returned by the docker command above.

Option 3:

Use the Synapse User Admin API as described here: https://github.com/element-hq/synapse/blob/master/docs/admin_api/user_admin_api.rst#reset-password

This requires an access token from a server admin account. This method will also log the user out of all of their clients while the other options do not.

If you didn't make your account a server admin when you created it, you can learn how to switch it now by reading about it in Adding/Removing Administrator privileges to an existing Synapse user.

Example:

To set @user:example.com's password to correct_horse_battery_staple you could use this curl command:

curl -XPOST -d '{ "new_password": "correct_horse_battery_staple" }' "https://matrix.example.com/_matrix/client/r0/admin/reset_password/@user:example.com?access_token=MDA...this_is_my_access_token