connections.json. Each entry has a name, a driver and a connection string. Timbal refers to the connection by its name only; the connection string, and any password in it, never leaves the server. File shares are separate: see File shares.
If you’re used to the Power BI gateway, this is the main difference: there is no screen in Timbal where you add a data source with its server and password. Connections are defined here, on the gateway server, and appear in Timbal by name once the service restarts.
- Windows
- Linux
- macOS
doctor really connects to every database in the file and reports, per connection, whether it worked and why not.
Fields
Use a database account with read-only permissions unless you need writes.
SQL Server authentication
Many Business Central and NAV databases only allow Windows logins, so
sql fails with Login failed for user. Use integrated with a dedicated service account:
1
Run the service as a domain account
A group managed service account (gMSA) is best because no password is stored. Note the trailing For a normal domain user, pass its password instead of
$ and the empty password:"".2
Grant it read access in SQL Server
NT AUTHORITY\NetworkService, which reaches a SQL Server on another machine as the computer account (CORP\SERVERNAME$). That account rarely has a login, hence Login failed for user 'CORP\SERVERNAME$'.
Reaching the server
Encryption
File shares
Directories the connector may read are listed inconfig.json, under filesystems. They are not entries in connections.json. The key is the name Timbal uses for that share; the path stays on the server.
On Windows and macOS the installer already created this file. Add
filesystems and leave the other keys alone (the control-plane URL and the enrollment token). On Linux those live in connector.env and config.json does not exist yet: create it with only the map.
path is the only field. It is a directory on the server: a local folder, or a share already mounted there. In JSON, double Windows backslashes ("D:\\Shares\\invoices"). Save as UTF-8 without BOM, same as connections.json.
The service account has to be able to read the directory. On Windows that is NT AUTHORITY\NetworkService unless you changed the service account. On Linux it is the timbal-connect user, and the unit sets ProtectHome=true, so a path under /home is hidden from the service.
Restart the service as above. doctor checks each share and reports whether the directory is readable. If it says a remote local-config override is active, that override replaces this map until you run timbal-connect local-config clear and restart.
Next steps
Troubleshooting
When
doctor or the service log names a failure.Network requirements
If the connector stays offline after it starts.