You might wonder what user credentials are used to run the NAS services on Microsoft Dynamics NAV 2013.
The NAS services start when Microsoft Dynamics NAV Server starts, unconditionally of any users logging in to Microsoft Dynamics NAV server.
The credentials that are used to run the NAS services are the user account that runs Microsoft Dynamics NAV Server.
In a default installation the following user name is used: NT AUTHORITY\NETWORK SERVICE
Please note the security note about the credentials used to run Microsoft Dynamics NAV Server described in this How to: Create a Microsoft Dynamics NAV Server Instance (http://msdn.microsoft.com/en-us/library/hh168936(v=nav.70).aspx) help topic, where we recommend, for security reasons, that you always run Microsoft Dynamics NAV Server instances under a dedicated domain user account in production installations.
The user credentials that are used to run the NAS services must be created as an NAV user, and that user must be assigned the necessary permissions in order to execute the C/AL code in the NAS Services.
Example Useful in Demo Installations
NT AUTHORITY\NETWORK SERVICE created as a NAV user and assigned the SUPER Permission set:
If you haven’t created the NAV user, Microsoft Dynamics NAV Server will exit with this information in the event log:
Server instance: DynamicsNAV70Session type: NasSession ID: 0The Microsoft Dynamics NAV Server instance "DynamicsNAV70" did not start because the NAS session did not start. The user "NT AUTHORITY\NETWORK SERVICE" that is configured to start the NAS session was not identified as a user that has permissions for Microsoft Dynamics NAV. Set up a Microsoft Dynamics NAV user to run the NST, or create the NST user, such as NT AUTHORITY\NETWORK SERVICE, as a Microsoft Dynamics NAV user, and then start the NST again. Type: Microsoft.Dynamics.Nav.Types.NavDatabasePasswordExceptionMessage: The user ID and password are not valid. Please try again.
When the user hasn’t the needed permissions the Microsoft Dynamics NAV Server will exit with this information in the event log..:
Session type: NasSession ID: 1The Microsoft Dynamics NAV Application Server session has failed. Reason: Type: Microsoft.Dynamics.Nav.Types.NavPermissionExceptionMessage: You do not have the following permissions on CodeUnit ApplicationManagement: Execute
I hope this help you utilize the Microsoft Dynamics NAV 2013 NAS services. :-)
If a user needs to be created in NAV to run the NAS services,
What if we have multiple NAS instances running, do they reduce the available number of concurrent licences available for users?
Thanks for this article. It was just what I needed.
And what user is being used for Web Services?
Great,it was what I needed.
Is this behavior consistent for NAV2013R2?
While testing this I have not been able to find this message in the eventlog.
When I start an instance with only NAS enabled under domain user account that does not have enough SQL rights the server starts but does not do anything at all.
What might prevent this message from ending up in the eventlog?
SQL Profiler shows that it tries to do something with the Server Instance table but it does not write anything.
(Within SQL the user has reader and Writer Access to the NAV Database, but not dbowner)
The Service User Account also needs permissions to write to the event log and run as a service. This might be the reason that there are no messages in the event log.
Refer to the MSDN topic Provisioning the Microsoft Dynamics NAV Server Account msdn.microsoft.com/.../hh166150(v=nav.70).aspx