Authentication Providers
Before managing users, you need to configure authentication providers. Homarr supports:- Credentials: Username and password authentication
- OIDC: OpenID Connect for SSO integration
- LDAP: Active Directory and LDAP authentication
AUTH_PROVIDERS environment variable:
Creating User Accounts
Creating Users via Web Interface
Access User Management
Navigate to Settings > Users in the Homarr interface. You need admin permissions to access this section.
Enter User Details
Fill in the required information:
- Username: Must be unique and follow the username schema
- Password: Required for credentials provider (minimum requirements apply)
- Provider: Select the authentication provider (credentials, OIDC, LDAP)
Usernames must be between 3 and 20 characters and can only contain letters, numbers, underscores, and hyphens.
Assign to Groups
Select one or more groups for the user. Groups determine the user’s permissions and access levels.At minimum, users should be in the everyone group for basic access.
Creating Users via CLI
For automated user creation or when the web interface is unavailable, use the CLI.Groups and Permissions
Understanding Groups
Groups are collections of users with shared permissions. Every user belongs to at least one group, and permissions are assigned at the group level. Default Groups:- everyone: Special group that all users automatically belong to. Provides basic access rights.
Available Permissions
Homarr uses a role-based permission system:Admin Permission
Admin Permission
admin - Full system accessGrants complete control over:
- All boards and widgets
- User and group management
- System settings
- Integration configuration
Board Permissions
Board Permissions
Board-level permissions control access to specific boards:
- board-view: View the board and its widgets
- board-modify: Edit board layout and widget settings
- board-full: Complete control including deleting the board
Integration Permissions
Integration Permissions
Control access to integrations:
- integration-use: Use the integration in widgets
- integration-interact: Execute actions through the integration
- integration-full: Modify integration settings
Creating Groups
Create New Group
Click Add Group and enter:
- Group Name: Descriptive name (e.g., “Moderators”, “Family Members”)
- Position: Order in the group list (lower numbers appear first)
Assign Permissions
Select the permissions this group should have:
- Check admin for full access
- Or select specific board and integration permissions
Managing Group Memberships
Users can be added to or removed from groups at any time:- Go to Settings > Groups
- Select the group to modify
- Add or remove users from the member list
- Save changes
Permission changes take effect immediately. Users may need to refresh their browser to see updated access rights.
Setting Board Permissions
Board permissions can be configured per-board:- Open the board settings
- Navigate to the Permissions tab
- Add user or group permissions:
- Select the user/group
- Choose permission level (view, modify, full)
- Save changes
Managing User Invites
Invite links allow new users to join your Homarr instance:Create Invite Link
- Go to Settings > Invites
- Click Create Invite
- Configure invite settings:
- Expiration date (optional)
- Maximum uses (optional)
- Default groups for new users
Share Invite
Copy the generated invite link and share it with the user. They can use this link to create their account.
Using the CLI for User Operations
The Homarr CLI provides several commands for user management, particularly useful for administrative tasks or automation.Installation and Setup
The CLI is included with Homarr. Access it via: Docker:CLI Commands
reset-password
reset-password
Reset a user’s password. Useful when a user forgets their credentials.Options:The command will:
-u, --username <name>: Username of the account to reset
- Generate a new secure random password (48 characters)
- Update the user’s password in the database
- Delete all existing sessions for that user
- Display the new password
- Credentials provider must be enabled
- User must exist and use credentials provider
recreate-admin
recreate-admin
Create a new admin user when no credential-based admin exists. This is a recovery command for when you’ve lost admin access.Options:The command will:Requirements:
-u, --username <name>: Username for the new admin account
- Verify no credential-based admin exists
- Create a temporary group with admin permissions
- Generate a secure random password
- Create the user and assign to admin group
- Display the credentials
After using this command, log in and rename the temporary group to something meaningful like “Administrators”.
- Credentials provider must be enabled
- No existing credential-based admin users
- Username must not already exist
fix-usernames
fix-usernames
Fix username formatting issues that may exist in older Homarr installations.This command normalizes usernames to match the current username schema requirements.
CLI Best Practices
Security
- Always run CLI commands as a privileged user
- Save generated passwords securely
- Delete session logs that contain passwords
Recovery
- Keep CLI access available for emergencies
- Document your CLI procedures
- Test recovery commands in development first
Setting Home Boards
Users and groups can have custom home boards:User Home Board
- Go to User Settings > Preferences
- Select Home Board from the dropdown
- Choose different boards for desktop and mobile if desired
- Save changes
Group Home Board
Admins can set default home boards for groups:- Navigate to Settings > Groups
- Edit the group
- Set Default Home Board and Mobile Home Board
- Save changes
User Settings and Preferences
Users can customize their own experience:Appearance Settings
Appearance Settings
- Color scheme (light/dark/auto)
- Language preference
- Date and time format
- Animation preferences
Dashboard Settings
Dashboard Settings
- Default board on login
- Widget refresh intervals
- Notification preferences
Account Settings
Account Settings
- Change password (credentials provider)
- Update email/profile information
- Manage active sessions
- View login history
Session Management
Admins and users can manage active sessions:Viewing Active Sessions
- Go to Settings > Security
- View list of active sessions showing:
- Device information
- IP address
- Login time
- Last activity
Revoking Sessions
Revoke compromised or old sessions:- Click Revoke next to a session to end it
- Use Revoke All to log out from all devices except current
- Sessions are automatically revoked after password changes
Best Practices
Permission Structure
- Use groups instead of per-user permissions
- Follow principle of least privilege
- Create groups by role (Admin, User, Guest)
- Regular review and audit permissions
Account Security
- Enforce strong password requirements
- Use OIDC/LDAP for centralized auth when possible
- Regularly review active sessions
- Enable audit logging
User Onboarding
- Create user guides for your instance
- Use invite links with expiration
- Set appropriate default groups
- Provide initial training on features
Maintenance
- Remove inactive users periodically
- Update group structures as needs change
- Document your permission scheme
- Keep the CLI accessible for recovery
Troubleshooting
User can't log in
User can't log in
Check:
- Username and password are correct
- User account exists in the database
- Correct authentication provider is selected
- Account is not locked or disabled
reset-password CLI command if password is forgotten.User has no permissions
User has no permissions
Verify:
- User is assigned to at least one group
- Group has appropriate permissions set
- Board permissions are configured correctly
- User has refreshed their browser
Can't create admin user
Can't create admin user
If the web interface is unavailable:
- Use the
recreate-adminCLI command - Ensure credentials provider is enabled in
AUTH_PROVIDERS - Check database connectivity
CLI commands fail
CLI commands fail
Common issues:
- Credentials provider not enabled in environment variables
- Database connection issues
- Insufficient file system permissions
- User running command doesn’t have access to Homarr files
Next Steps
Authentication Setup
Configure OIDC, LDAP, and other authentication providers
Board Permissions
Learn about board-level access control
CLI Reference
Complete CLI command reference and examples
Security Best Practices
Learn about securing your Homarr instance
