Users in Documenso

Users in Documenso

This article goes through user management in Documenso, an open source alternative to Docusign etc. It explores user authentication, user roles, default users, in a simple way how users are setup in the postgres database, and finally managing users via the documenso admin panel. Let’s dive.

User Authentication

Documenso comes with three user authentication mechanisms as of July 2024. A built-in Documenso auth mechanism, Google, and OIDC. Currently there is no way to manage OIDC and Google auth via the admin panel, all Google and OIDC configurations must be done via the .env file when setting up Documenso.

User Roles

Documenso users can have one or both of two roles assigned to them. “USER” and “ADMIN”. Users can sign and upload docs to be signed etc., while admins can manage users, and more. 

Default Users

Documenso comes with a default ADMIN account / user along with three default USER accounts / users.

NOTE: The default admin credentials are admin@documenso.com with a password of “password”. It is heavily advised to either change the credentials or entirely delete the default admin user and create a new one.

A Look into the Documenso Postgres "User" Table

In the Postgres database we can see that users have multiple values, some required, some not. If we run the following sql command from within the documenso database:

							
							
					SELECT column_name, data_type, character_maximum_length, is_nullable
FROM information_schema.columns
WHERE table_name = 'User';
				
			

We should get:

							
							
					     column_name      |          data_type          | character_maximum_length | is_nullable 
----------------------+-----------------------------+--------------------------+-------------
 id                   | integer                     |                          | NO
 emailVerified        | timestamp without time zone |                          | YES
 identityProvider     | USER-DEFINED                |                          | NO
 roles                | ARRAY                       |                          | YES
 createdAt            | timestamp without time zone |                          | NO
 lastSignedIn         | timestamp without time zone |                          | NO
 updatedAt            | timestamp without time zone |                          | NO
 twoFactorEnabled     | boolean                     |                          | NO
 avatarImageId        | text                        |                          | YES
 twoFactorSecret      | text                        |                          | YES
 customerId           | text                        |                          | YES
 name                 | text                        |                          | YES
 email                | text                        |                          | NO
 url                  | text                        |                          | YES
 password             | text                        |                          | YES
 source               | text                        |                          | YES
 twoFactorBackupCodes | text                        |                          | YES
 signature            | text                        |                          | YES
(18 rows)				
			

Here we can see what user values Documenso expects / requires, their data type, and whether the value is nullable.

User Management Via the Frontend Admin Panel

Of course we can manage users via the Documenso admin panel, if you are running Documenso locally navigate to localhost:3000 > log in as an admin user (email: admin@documenso.com, password: password) > go to the admin panel > and go to the users tab. You should see:

Here we can see users’ names, ID’s, emails, Roles, Subscriptions, & Documents. If you wish to edit a user click “Edit” and you will see: 

Here we can edit a user’s name, email, roles, and also delete the user’s account. To add another user, such as to create a second admin account, we need to log out and sign up the new user, then log back in as admin and edit the new user to grant them admin privileges.

This rounds up our post, as Documenso is quickly improving and developing, the info provided here will likely be outdated within a month or two, so if you are reading this after August 2024, just be aware. Thanks for reading!

Walter Miely is a tech entrepreneur and CEO of Phoenix Ignited Tech You can find him on Linkedin. This material is licensed under the CC BY 4.0 License LEGAL DISCLAIMER: The content provided here is provided AS IS, and part of, or the entirety of this content may be incorrect. Please read the entireLegal Disclaimer here.