.env file of any Lerian product or plugin where you want it active.
Enabling Access Manager only turns on authorization enforcement in a product or plugin. Access data such as users, groups, applications, providers, roles, and permissions is managed separately through Access Manager.
4026 by default:
MULTI_TENANT_URL at an HTTPS endpoint so MULTI_TENANT_SERVICE_API_KEY does not travel over cleartext HTTP. In-cluster HTTP (http://tenant-manager.<namespace>.svc.cluster.local:4026) is for local, non-production clusters only and requires the explicit opt-in MULTI_TENANT_ALLOW_INSECURE_HTTP=true.
In Helm deployments, Midaz also needs MULTI_TENANT_SERVICE_API_KEY, normally supplied through a Secret or an existing Secret. The flag alone is not a complete multi-tenant configuration; follow the deployment documentation for the product you are configuring. If your Tenant Manager SERVER_ADDRESS or Kubernetes Service overrides the default port, use that deployed address instead.
Once Access Manager is enabled, protected API requests must include an
Authorization header with a valid Bearer access token.Without this header, protected requests will be rejected, even for endpoints that were previously accessible without authentication.Learn how to generate and use access tokens.Where to update
You’ll find the relevant
.env files in these locations:
- Midaz
/midaz/components/ledgerusesPLUGIN_AUTH_HOST. The CRM component usesPLUGIN_AUTH_ADDRESSin its own configuration./midaz/components/tracerusesPLUGIN_AUTH_ADDRESS
- Other products and plugins
- Use the
.envfile in the product or plugin root, or in the component directory when the repository is split into components. - Reporter, Flowker, Bank Transfer, and Fetcher use
PLUGIN_AUTH_ADDRESS. - Pix Indirect BTG uses
PLUGIN_AUTH_ADDRESSin itspixservice andPLUGIN_AUTH_HOSTin itsinboundandoutboundworkers. - Pix Direct JD uses
PLUGIN_AUTH_HOST.
- Use the
Rebuild after changes
After updating a
.env file, rebuild and restart from the root of the repository that owns that file. Lifecycle commands differ by repository: in the Midaz repository root, run make rebuild-up, because its make up target starts services without rebuilding them. For other products and plugins, use the lifecycle command documented in that repository. The Access Manager source uses the following commands:
1
In your terminal, go to the Access Manager repository root.
2
If Docker is running, stop it:
3
Then build and start the stack:
Deployment lifecycle
Access Manager setup has two phases, and bootstrap differs by deployment mode:
- Single-tenant bootstrap seeds a new environment with the base organization, roles, groups, applications, and permission sets required by the platform.
- Multi-tenant bootstrap prepares shared certificate material only. It does not seed tenant organizations, users, groups, applications, or permission sets; create and manage tenant access data after the tenant exists.
- Operation starts after the environment is running. From that point on, manage access through the Identity APIs or Lerian Console.

