Install and configure workflow for SharePoint Server

Summary: Learn how to install and configure workflow in SharePoint Server.

This article contains the information and procedures required to configure workflow in SharePoint Server.

Important

The steps in this article apply to SharePoint Server. The SharePoint 2013 Workflow platform is not supported in SharePoint Foundation 2013.

Note

You can watch a video series that walks through the process of installing and configuring the SharePoint 2013 Workflow platform. To view the videos, see Video series: Install and configure Workflow in SharePoint Server 2013

Overview

A new option exists when you build a workflow for SharePoint Server. This option is called Platform Type. The figure shows the Platform Type option when you are creating a new workflow by using SharePoint Designer 2013.

Figure: SharePoint Server includes three workflow platform options.

Three workflow platforms in SharePoint 2013.

The only platform available when you first install SharePoint Server is the SharePoint 2010 Workflow platform. The SharePoint 2013 Workflow platform and the Project Server platform require additional steps. The three workflow platforms are outlined in the following table.

Workflow Platform types available in SharePoint Server

Platform Type Platform Framework Requirements
SharePoint 2010 Workflow
Windows Workflow Foundation 3
Installs automatically with SharePoint Server.
SharePoint 2013 Workflow
Windows Workflow Foundation 4
Requires SharePoint Server and Workflow Manager.
> [!NOTE]> Workflow Manager must be downloaded and installed separately from SharePoint Server. It does not install automatically when you install SharePoint Server.
SharePoint 2013 Workflow - Project Server
Windows Workflow Foundation 4
Requires SharePoint Server, Workflow Manager, and Project Server.

Install and configure SharePoint Server

You must install and configure SharePoint Server. To do so, see Install and deploy SharePoint 2013.

Note

The SharePoint 2010 Workflow platform installs automatically when you install SharePoint Server. The SharePoint 2013 Workflow platform requires Workflow Manager and must be installed separately and then configured to work with your SharePoint Server farm. > To function correctly SharePoint 2013 Workflows require to have App Management Service and Site Subscription Service provisioned. It is not required to setup a wildcard certificate and DNS registration but both instances need to be running.

Install and configure Workflow Manager

You must install and configure Workflow Manager. To do so, see Installing and Configuring Workflow Manager 1.0.

Configure Workflow Manager to work with the SharePoint Server farm

You must consider the following two key factors before configuring Workflow Manager to work with SharePoint Server.

  • Is Workflow Manager installed on a server that is part of the SharePoint farm?

  • Will communication between Workflow Manager and SharePoint Server use HTTP or HTTPS ?

These factors translate into four scenarios. Each scenario configures a SharePoint Server farm to communicate and function with the Workflow Manager farm. Follow the scenario that matches your circumstance.

1: Workflow Manager is installed on a server that is part of the SharePoint Server farm. Communication takes place by using HTTP.
2: Workflow Manager is installed on a server that is part of the SharePoint Server farm. Communication takes place by using HTTPS.
3: Workflow Manager is installed on a server that is NOT part of the SharePoint Server farm. Communication takes place by using HTTP.
4: Workflow Manager is installed on a server that is NOT part of the SharePoint Server farm. Communication takes place by using HTTPS.

Note

For security reasons, we recommend HTTPS for a production environment.

Tip

For information about least-privilege configuration, see Least Privilege Configuration for Workflow Manager with SharePoint Server 2013.

To configure Workflow Manager on a server that is part of the SharePoint Server farm and on which communication takes place by using HTTP

  1. Log on to the computer in the SharePoint Server farm where Workflow Manager was installed.

  2. Open the SharePoint Management Shell as an administrator. This is accomplished by right-clicking the SharePoint Management Shell and choosing Run as administrator.

  3. Run the Register-SPWorkflowService cmdlet.

    Example:

    Register-SPWorkflowService -SPSite "http://myserver/mysitecollection" -WorkflowHostUri "http://workflow.example.com:12291" -AllowOAuthHttp
    
  4. Log on to each server in the SharePoint Server farm.

    Each server in the SharePoint Server farm must have the Workflow Manager Client installed.

    Note

    When you install Workflow Manager on a server it automatically installs the Workflow Manager Client on that server. You will still need to install the Workflow Manager Client on any additional servers. For example, if you have a farm that contains five servers and you install Workflow Manager on one of those servers you will still need to install the Workflow Manager Client on the four additional servers.

  5. Install the Workflow Manager Client on each server in the SharePoint farm.

    Download and install the Workflow Manager Client here: http://go.microsoft.com/fwlink/p/?LinkID=268376

    To configure Workflow Manager on a server that is part of the SharePoint Server farm and on which communication takes place by using HTTPS

  6. Determine if you need to install Workflow Manager certificates in SharePoint.

    Under some circumstances, you have to obtain and install Workflow Manager certificates. If your installation requires that you obtain and install these certificates, you must complete that step before continuing. To learn whether you need to install certificates, and for instructions, see Install Workflow Manager certificates in SharePoint Server.

  7. Log into the computer in the SharePoint Server farm where Workflow Manager was installed.

  8. Open the SharePoint Management Shell as an administrator. This is accomplished by right-clicking the SharePoint Management Shell and choosing Run as administrator.

  9. Run the Register-SPWorkflowService cmdlet.

    Example:

    Register-SPWorkflowService -SPSite "https://myserver/mysitecollection" -WorkflowHostUri "https://workflow.example.com:12290"
    
  10. Log on to each server in the SharePoint Server farm.

    Each server in the SharePoint Server farm must have the Workflow Manager Client installed.

    Note

    When you install Workflow Manager on a server it automatically installs the Workflow Manager Client on that server. You will still have to install the Workflow Manager Client on any additional servers. For example, if you have a farm that contains five servers and you install Workflow Manager on one of those servers you will still need to install the Workflow Manager Client on the four additional servers.

  11. Install the Workflow Manager Client on each server in the SharePoint farm.

    Download and install the Workflow Manager Client here: http://go.microsoft.com/fwlink/p/?LinkID=268376

    To configure Workflow Manager on a server that is NOT part of the SharePoint Server farm and on which communication takes place by using HTTP

  12. Log on to each server in the SharePoint Server farm.

  13. Install the Workflow Manager Client on each server in the SharePoint farm.

    Before you can run the workflow pairing cmdlet, you must install Workflow Manager Client on each of the servers in the SharePoint farm.

    Download and install the Workflow Manager Client here: http://go.microsoft.com/fwlink/p/?LinkID=268376

  14. Open the SharePoint Management Shell as an administrator. This is accomplished by right-clicking the SharePoint 2013 Management Shell command and choosing Run as administrator.

  15. Run the Register-SPWorkflowService cmdlet. The cmdlet should be run only once and can be run from any of the servers in the SharePoint farm.

    Example:

    Register-SPWorkflowService -SPSite "http://myserver/mysitecollection" -WorkflowHostUri "http://workflow.example.com:12291" -AllowOAuthHttp
    

    Important

    You must install the Workflow Manager Client on each server in the SharePoint farm before you run the pairing cmdlet.

    To configure Workflow Manager on a server that is NOT part of the SharePoint Server farm and on which communication takes place by using HTTPS

  16. Determine whether you need to install Workflow Manager certificates in SharePoint 2013.

    Under some circumstances, you have to obtain and install Workflow Manager certificates. If your installation requires that you obtain and install these certificates, you must complete that step before continuing. To learn whether you need to install certificates, and for instructions, see Install Workflow Manager certificates in SharePoint Server.

  17. Log on to each server in the SharePoint Server farm.

  18. Install the Workflow Manager Client on each server in the SharePoint farm.

    Before you can run the workflow pairing cmdlet, you must install Workflow Manager Client on each of the servers in the SharePoint farm.

    Download and install the Workflow Manager Client here: http://go.microsoft.com/fwlink/p/?LinkID=268376

  19. Open the SharePoint Management Shell as an administrator. This is accomplished by right-clicking the SharePoint Management Shell command and choosing Run as administrator.

  20. Run the Register-SPWorkflowService cmdlet.

    Example:

    Register-SPWorkflowService -SPSite "https://myserver/mysitecollection" -WorkflowHostUri "https://workflow.example.com:12290"
    

    Important

    You must install the Workflow Manager Client on each server in the SharePoint farm before you run the pairing cmdlet.

Validate the installation

Use these steps to validate that you have successfully installed and configured the required components.

To validate the installation

  1. Add a user to your SharePoint site, and grant the user Site Designer permissions.

  2. Install SharePoint Designer 2013 and create a workflow based on the SharePoint 2013 Workflow platform. For more information, see Creating a workflow by using SharePoint Designer 2013 and the SharePoint 2013 Workflow platform.

  3. Run this workflow from the SharePoint user interface.

Troubleshooting

For security reasons, the Setup account cannot be used to create a workflow based on the SharePoint 2013 Workflow platform. If you try to create a workflow based on the SharePoint 2013 Workflow platform by using SharePoint Designer 2013, you receive a warning that the list of workflow actions do not exist, and the workflow is not created.

The user who deploys and runs a workflow must be added to the User Profile service. Check the User Profile service application page in Central Administration to confirm that the user you are using to validate workflow installation is in the User Profile service.

You can determine which ports SharePoint Server and Workflow Manager are using for both HTTP and HTTPS by using IIS Manager as shown in the figure.

Figure: Use IIS Manager to view the ports used by Workflow Manager

View ports in IIS Manager.

Workflow Manager communicates by using TCP/IP or Named Pipes. Make sure that the appropriate communication protocol is enabled on the SQL Server instance that hosts the Workflow Manager databases.

The SQL Browser Service must be running on the SQL Server instance that hosts the Workflow Manager databases.

The System Account cannot be used to develop a workflow.

To troubleshoot SharePoint Server, see Troubleshooting SharePoint Server.