Stellen Sie sich vor, Sie betreiben eine Dynamics NAV 2015 Multi-Tenant-Umgebung. Der NAV Server für die Tenants ist mit dem Credential Type „NavUserPassword“ konfiguriert. Wenn Sie die SOAP Services aktivieren (z.B. für Jet Express), können Sie einen ersten Schnelltest durchführen, in dem Sie die Liste der veröffentlichten Web Services abfragen. In unserem Beispiel für den Tenant „cronus“:
https://[Servername]:[Port]/DynamicsNAV01/WS/Services?tenant=cronus
Aufgrund des Credential Types „NavUserPassword“ werden Sie nach Ihrem Benutzernamen und Kennwort gefragt:
Der Server quittiert leider diesen Anmeldeversuch mit einer Warnmeldung im Ereignisprotokoll:
...
Message: A tenant was not specified, but is needed because the system has multiple tenants. Contact your system administrator.
...
StackTrace:
at Microsoft.Dynamics.Nav.Runtime.NavTenantCollection.get_DefaultTenant()
at Microsoft.Dynamics.Nav.Runtime.NavTenantCollection.TryGetTenantById(String tenantId, NavTenant& tenant, Boolean includeSystemTenant, Boolean includeFailed)
...
Warum funktioniert die Anmeldung nicht? Und warum sagt das System, wir hätten keinen Tenant angegeben? Haben wir doch mit „?tenant=cronus“ gemacht!
Die Lösung ist denkbar einfach, aber leider nicht dokumentiert. Bei der Anmeldung müssen Sie Ihrem Benutzernamen den Namen des Tenant voranstellen: [Tenant]\[Benutzername]:
PS: Special Thanks to Arvind from Microsoft Support.