Visit Azul.com Support

Email

Azul Intelligence On-Premises sends two kinds of email: invitations and password resets. Email is never a prerequisite. A deployment without it stays fully functional, and every invitation and reset still produces a link that can be shared by hand.

Email has two halves, split between the Operator and the Admin:

  • The Operator supplies the transport in the environment. The relay address, port, sender, and credentials are set in /etc/ljvmi/ljvmi.env and are not editable in the web interface.

  • An Admin selects and tests in the web interface, under Settings > Email: choose which configured provider is used, send a test, and edit the message texts.

Email is deployment-level rather than per tenant for the transport: one relay serves every tenant on the installation. The provider choice and the message texts are saved per tenant.

Configuring the Transport

Set the transport in /etc/ljvmi/ljvmi.env, then restart the service with sudo systemctl restart ljvmi.

 
LJVMI_WEB_PUBLIC_BASE_URL=https://intelligence.example.com LJVMI_EMAIL_PROVIDER=smtp LJVMI_EMAIL_FROM_ADDRESS=[email protected] LJVMI_EMAIL_SMTP_HOST=smtp.example.com LJVMI_EMAIL_SMTP_PORT=587 LJVMI_EMAIL_SMTP_USERNAME=intelligence LJVMI_EMAIL_SMTP_PASSWORD='replace-with-the-relay-password'

systemd takes the values in this file literally and does not expand $ in them, so a password with dollar signs needs no escaping. Protect the file like your other secrets, and back it up separately from the data directory.

Variable Default Meaning

LJVMI_WEB_PUBLIC_BASE_URL

unset

Set it in every deployment, although the application starts without it. The absolute public address of your installation, without a trailing slash, for example https://intelligence.example.com. Every invitation and reset link is built from it. Without it, self-service password reset stays off and links fall back to the address of the request that produced them, which a caller can influence.

LJVMI_EMAIL_PROVIDER

unset

smtp. The default provider for a tenant that has not saved a choice. Unset means links are delivered by hand until an Admin selects a provider.

LJVMI_EMAIL_FROM_ADDRESS

unset

The From address of every message.

LJVMI_EMAIL_SMTP_HOST

unset

The hostname of your SMTP relay.

LJVMI_EMAIL_SMTP_PORT

25

The port of your SMTP relay.

LJVMI_EMAIL_SMTP_USERNAME

unset

The relay username.

LJVMI_EMAIL_SMTP_PASSWORD

unset

The relay password.

Setting the variables never activates the relay: the active provider is the one an Admin selects, or LJVMI_EMAIL_PROVIDER where nobody has chosen yet.

Authenticated SMTP

Set the host, the port, a From address, and the username and password the relay expects.

  • The port defaults to 25.

  • A relay that needs no authentication is allowed: omit both the username and the password. If you set one, set both.

  • A relay that is not on the loopback address must support STARTTLS with a certificate your installation trusts. Implicit TLS, usually port 465, is not supported. A loopback host may use plain text, which is convenient for a local test relay.

Selecting the Provider

Under Settings > Email, an Admin sees the SMTP provider with its effective, read-only parameters, and whether every required value is present. A password is shown only as Set or Not set. SMTP marked Configured has complete parameters, which does not prove that the relay is reachable or that delivery works. That is what the test is for.

An Admin selects SMTP or None - deliver links manually for the tenant. SMTP can be selected only when it is completely configured. The saved choice takes effect on the next send, without a restart, and a saved choice, including None, overrides LJVMI_EMAIL_PROVIDER.

If the active provider later loses its configuration, sending fails with a clear error and the invitation or reset still returns a link. Your installation never switches providers by itself.

Send a Test

The screen offers a send-test, and it is worth using every time you change anything. It uses the saved selection, so save a changed selection before testing it. The result is one of:

  • Sent

  • Not configured: no provider is active, which is a deployment choice.

  • Failed, with the relay’s own error, such as an unreachable host or a rejected credential.

What the Messages Say

Each message renders from a template that you can view and edit under Settings > Email: a subject and a body for each of the two messages.

Template Purpose

Invitation

Carries the one-time link with which the invitee accepts the invitation and sets their own credentials.

Password reset

Carries the one-time link with which a person sets a new password.

A body must contain {link}, and it may not use any other variable. Saving a template that omits the link, or names another variable, is refused with the reason. Substitution is a literal replacement of {link} and nothing else.

The shipped text is the default for each template. A template nobody has edited follows the text of the installed version, and an edited one can be restored to that default at any time. Template changes and provider selection are tenant-scoped and recorded in the Audit Log, without any transport credentials.

When No Email Is Sent

Every capability keeps working without a provider.

  • An invitation produces a one-time link that the Admin shares by hand. The dialog always shows that link, whether or not email is configured, because a configured provider can still deliver into a mailbox nobody reads.

  • An Admin-triggered password reset produces the same kind of link, the same way.

  • On the sign-in page, Forgot password? appears only when LJVMI_WEB_PUBLIC_BASE_URL is set and at least one tenant can send mail. Otherwise sign-in tells people to ask an Admin.

The dialog says separately what became of the email, and three outcomes are distinguished everywhere email is used: emailed; not configured, which is a deployment choice; and send failed, which means a provider is selected and the attempt did not work. A mail outage never blocks user administration, because the invitation or reset already exists when delivery is attempted.

See Users and Roles for invitations and resets.

Upgrading From Transport Settings Entered in the Web Interface

Earlier builds stored the relay connection in the application database. Those values are no longer used, and no stored password is decrypted. Before relying on email after an upgrade, copy the old host, port, and credentials into the matching environment variables above. Provider choices already saved are kept.

The relay parameters live in your deployment environment, while provider choices and customized templates live in the application database. Back up both. See Backup and Restore.