Skip to content

Latest commit

 

History

History
91 lines (58 loc) · 9.5 KB

web-server-overview.md

File metadata and controls

91 lines (58 loc) · 9.5 KB
title description ms.date ms.topic author ms.custom
Deploy the Web Server Components
Understand the network architecture, users, security, deployment phases for installing and configuring the Business Central Web Server Components.
10/11/2021
overview
jswymer
bap-template

[!INCLUDEwebserver] Overview

[!INCLUDEazure-ad-to-microsoft-entra-id]

Giving users access to data from the [!INCLUDEnav_web], companion app, and Outlook add-in requires a Internet Information Services (IIS) website as part of your deployment. The website, which we refer to as [!INCLUDEwebserver] instance, hosts the files that provide content and services to client users over the Internet. This article highlights several factors to consider to help you set up [!INCLUDEwebserver] instances that suit your deployment requirements.

If you just want to get started installing the [!INCLUDEwebservercomponents], see Install Business Central Using Setup.

ASP .NET Core on IIS

[!INCLUDEwebserver] instances run on ASP.NET Core on IIS, which in part dictates the directory structure of the instances. For more information about ASP .NET Core, see Introduction to ASP.NET Core.

Network Topology

The following illustration shows the component infrastructure that supports [!INCLUDEwebserver] instances on your network.

Installation on one computer.

Each [!INCLUDEwebserver] instance must connect to a [!INCLUDEserver], which in turn connects to the database that contains the application and business data. Multiple [!INCLUDEwebserver] instances can connect to the same [!INCLUDEserver]. You can deploy these components on one computer or on separate computers. For example, you can install the [!INCLUDEwebserver] instance on one computer and the [!INCLUDEserver] and SQL Server database on another computer. The topology that you choose depends on the network resources and the infrastructure of the [!INCLUDEprod_short] components. The installation and configuration process is different for each scenario.

For information about the common deployment scenarios, see Deployment Topologies.

Important

[!INCLUDEprod_short] doesn't support Microsoft Entra application Proxy, because Application Proxy doesn't fully support web sockets.

Creating a [!INCLUDEwebserver] instance

There are two ways to create a [!INCLUDEwebserver] instance. You can use the [!INCLUDEprodsetup] Setup or the [!INCLUDEwebserver] PowerShell cmdlets.

Using [!INCLUDEprodsetup] Setup

Setup is the quickest way to get a web server instance up and running, and is typically how you install the first [!INCLUDEwebserver] instance in your deployment.

  • Setup installs the [!INCLUDEwebservercomponents], which does the following:

    • Installs and configure IIS with the required prerequisites, including Microsoft .NET Core - Windows Server Hosting
    • Installs a web server instance on IIS. This instance has a name that matches name of the [!INCLUDEserver] instance.
    • Installs components and files in a WebPublish folder that enables you to add additional web server instances without having to use the [!INCLUDEprod_short] installation media (DVD).
  • You can only use Setup to install a single [!INCLUDEwebserver] instance.

  • Setup does not let you choose the site deployment type for the web server instance. By default, it creates a SubSite instance. For more information, see Site Deployment Types.

For information about how to install the [!INCLUDEwebservercomponents], see Install Business Central Using Setup.

Note

[!INCLUDEupgrade_known_issues]

Using [!INCLUDEwebserver] PowerShell cmdlets

There are several PowerShell cmdlets that enable you to create, configure, and remove [!INCLUDEwebserver] instances from a command line interface. To create a web server instance, you use the New-NAVWebServerInstance cmdlet, which has the following advantages over Setup:

  • You can create multiple web server instances.

  • You have more flexibility regarding the site deployment type of the [!INCLUDEwebserver] instances on IIS. For example, you can create a root-level website instance or a subsite application instance under a container website.

Important

Using New-NAVWebServerInstance cmdlet requires that Microsoft .NET Core Windows Server Hosting is installed and IIS is installed and configured with the prerequisites. So unless you have previously installed the [!INCLUDEwebservercomponents] by using Setup, you will have to install and configure the prerequisites manually. For more information about the prerequisites, see Configure Internet Information Services.

For information about how to create a [!INCLUDEwebserver] instance by using the New-NAVWebServerInstance cmdlet, see [Creating and Managing [!INCLUDEwebserver] Instances Using PowerShell](../deployment/configure-multiple-web-server-instances.md).

Deployment Phases

Typically, you will deploy the [!INCLUDEnav_web] in phases, which can influence the network topology and security settings that you deploy. For example, in the development phase, you develop, test, and fine-tune the application. In this phase, you might consider deploying the [!INCLUDEnav_web] in a single-computer scenario. When you move to the production phase, you deploy the [!INCLUDEnav_web] in the full network infrastructure.

Security

User Authentication

[!INCLUDEprod_short] supports four methods for authenticating users who try to access the [!INCLUDEnav_web]: Windows, UserName, NavUserPassword, and AccessControlService. Windows authentication is configured by default. For more information, see Users and Credential Types and Authentication and User Credential Type.

Service Account for [!INCLUDEserver] and [!INCLUDEprod_short] Database Access

When you install [!INCLUDEserver] and [!INCLUDEprod_short] database components, you must identify an Active Directory account to provide credentials for the servers. By default, Setup runs [!INCLUDEserver] and the [!INCLUDEprod_short] database under the Network Service account, a predefined local account that is used by the service control manager.

Tip

We recommend that you create and use a domain user account for running [!INCLUDEserver] and accessing the [!INCLUDEprod_short] database. The Network Service account is considered less secure because it is a shared account that can be used by other unrelated network services.

For more information, see Provisioning a Service Account.

Securing the Connection to Microsoft Dynamics NAV Web Client With SSL

You can help secure [!INCLUDEprod_short] data that is transmitted over the Internet by enabling Secure Sockets Layer (SSL) on the connection to the [!INCLUDEnav_web]. You can configure SSL when you install the [!INCLUDEwebservercomponents] or after the installation.

For more information, see Configure SSL to Secure the Web Client Connection.

See Also

Configure Internet Information Services
Configuring-the Business Central Web Server