GitLab allows users to set up accounts through integration with external authentication and authorization providers.
These authentication methods do not require the user to explicitly create a password for their accounts. However, to maintain data consistency, GitLab requires passwords for all user accounts.
For such accounts, we use the
friendly_token method provided by the Devise gem to generate a random, unique and secure password and sets it as the account password during sign up.
The length of the generated password is the set based on the value of maximum password length as set in the Device configuration. The default value is 128 characters.