For the complete documentation index, see llms.txt. This page is also available as Markdown.

Users and access

Heisenware gives you granular control over who can access your Apps. Each App can have its own security settings, even when several sit in the same workspace.

Users vs. members

This article covers the users of your Apps. For managing your members, the people who build and manage your Apps, see Members.

Access modes

In the Apps panel, choose from five access options to match your security requirements.

Public access

  • Option: Anyone can use the app

  • Details: The App is open. Anyone with the URL or QR code can access the interface immediately. No login is required.

Shared security

  • Option: Users must provide a master password

  • Details: You must define a master password in the settings.

  • Session: The browser stores the authentication in local storage. Users re-enter the password only on a different device, in an incognito window, or after clearing their browser data.

Individual registration

  • Option: Users have to sign up

  • Details: Heisenware manages user accounts automatically. Users can register with an email/password or their Google account.

  • Session: Like the master password, the browser keeps the login state in local storage. Users stay logged in until they log out or clear their browser cache.

Dual authentication

  • Option: Users have to sign up and provide a master password

  • Details: Combines the previous two methods. Users must have a personal account and know the shared master password to gain entry.

Private whitelist

  • Option: Only previously invited users can log in

  • Details: This opens an email invite form. Only the specific email addresses you invite can register and access the App.

  • Programmatic invite: With the users class in the backend, you can also invite users programmatically from another App.

User management

The Users card in each App gives you a real-time view of who is accessing your software.

Managing users programmatically

You can also manage users from within an App using the users class.

Anonymized sessions

For Apps using Public access or Shared security, the table shows anonymized strings, IP addresses, and session data so you can track unique device usage.

Registered profiles

For Apps using Individual registration or Dual authentication, the table shows names and usernames (email addresses). Heisenware recognizes a user logging in from different devices with the same email as the same person.

Deleting users

To remove a user, registered account or anonymous session alike, click the trash icon in the list. Deleting a user removes their record and ends their current session.

Leveraging user data in logic

Once a user is authenticated, the Backend Builder exposes their information through the $USER system variable. Use it to personalize the UI (e.g. "Welcome, [Name]"), filter database queries so users see only their own data, or log exactly who performed an action in your backend.

For example, if a table stores each row's owner in an email field, a getTableData function can filter for the logged-in user's own rows:

Last updated

Was this helpful?