Tutorial: Microsoft Entra single sign-on (SSO) integration with Upwork Enterprise

In this tutorial, you'll learn how to integrate Upwork Enterprise with Microsoft Entra ID. When you integrate Upwork Enterprise with Microsoft Entra ID, you can:

  • Control in Microsoft Entra ID who has access to Upwork Enterprise.
  • Enable your users to be automatically signed-in to Upwork Enterprise with their Microsoft Entra accounts.
  • Manage your accounts in one central location.

Prerequisites

To get started, you need the following items:

  • A Microsoft Entra subscription. If you don't have a subscription, you can get a free account.
  • Upwork Enterprise single sign-on (SSO) enabled subscription.

Scenario description

In this tutorial, you configure and test Microsoft Entra SSO in a test environment.

  • Upwork Enterprise supports SP and IDP initiated SSO.
  • Upwork Enterprise supports Just In Time user provisioning.

Note

Identifier of this application is a fixed string value so only one instance can be configured in one tenant.

To configure the integration of Upwork Enterprise into Microsoft Entra ID, you need to add Upwork Enterprise from the gallery to your list of managed SaaS apps.

  1. Sign in to the Microsoft Entra admin center as at least a Cloud Application Administrator.
  2. Browse to Identity > Applications > Enterprise applications > New application.
  3. In the Add from the gallery section, type Upwork Enterprise in the search box.
  4. Select Upwork Enterprise from results panel and then add the app. Wait a few seconds while the app is added to your tenant.

Alternatively, you can also use the Enterprise App Configuration Wizard. In this wizard, you can add an application to your tenant, add users/groups to the app, assign roles, as well as walk through the SSO configuration as well. Learn more about Microsoft 365 wizards.

Configure and test Microsoft Entra SSO for Upwork Enterprise

Configure and test Microsoft Entra SSO with Upwork Enterprise using a test user called B.Simon. For SSO to work, you need to establish a link relationship between a Microsoft Entra user and the related user in Upwork Enterprise.

To configure and test Microsoft Entra SSO with Upwork Enterprise, perform the following steps:

  1. Configure Microsoft Entra SSO - to enable your users to use this feature.
    1. Create a Microsoft Entra test user - to test Microsoft Entra single sign-on with B.Simon.
    2. Assign the Microsoft Entra test user - to enable B.Simon to use Microsoft Entra single sign-on.
  2. Configure Upwork Enterprise SSO - to configure the single sign-on settings on application side.
    1. Create Upwork Enterprise test user - to have a counterpart of B.Simon in Upwork Enterprise that is linked to the Microsoft Entra representation of user.
  3. Test SSO - to verify whether the configuration works.

Configure Microsoft Entra SSO

Follow these steps to enable Microsoft Entra SSO.

  1. Sign in to the Microsoft Entra admin center as at least a Cloud Application Administrator.

  2. Browse to Identity > Applications > Enterprise applications > Upwork Enterprise > Single sign-on.

  3. On the Select a single sign-on method page, select SAML.

  4. On the Set up single sign-on with SAML page, click the pencil icon for Basic SAML Configuration to edit the settings.

    Edit Basic SAML Configuration

  5. On the Basic SAML Configuration section, the application is pre-configured and the necessary URLs are already pre-populated with Azure. The user needs to save the configuration by clicking the Save button.

  6. Click Set additional URLs and perform the following step if you wish to configure the application in SP initiated mode:

    In the Sign-on URL text box, type the URL: https://www.upwork.com/ab/account-security/login

  7. Click Save.

  8. Upwork Enterprise application expects the SAML assertions in a specific format, which requires you to add custom attribute mappings to your SAML token attributes configuration. The following screenshot shows the list of default attributes.

    image

  9. In addition to above, Upwork Enterprise application expects few more attributes to be passed back in SAML response which are shown below. These attributes are also pre populated but you can review them as per your requirements.

    Name Source Attribute
    FirstName user.givenname
    LastName user.surname
    Country user.country
    Email user.userprincipalname
  10. On the Set up single sign-on with SAML page, in the SAML Signing Certificate section, find Federation Metadata XML and select Download to download the certificate and save it on your computer.

    The Certificate download link

  11. On the Set up Upwork Enterprise section, copy the appropriate URL(s) based on your requirement.

    Copy configuration URLs

Create a Microsoft Entra test user

In this section, you'll create a test user called B.Simon.

  1. Sign in to the Microsoft Entra admin center as at least a User Administrator.
  2. Browse to Identity > Users > All users.
  3. Select New user > Create new user, at the top of the screen.
  4. In the User properties, follow these steps:
    1. In the Display name field, enter B.Simon.
    2. In the User principal name field, enter the username@companydomain.extension. For example, B.Simon@contoso.com.
    3. Select the Show password check box, and then write down the value that's displayed in the Password box.
    4. Select Review + create.
  5. Select Create.

Assign the Microsoft Entra test user

In this section, you'll enable B.Simon to use single sign-on by granting access to Upwork Enterprise.

  1. Sign in to the Microsoft Entra admin center as at least a Cloud Application Administrator.
  2. Browse to Identity > Applications > Enterprise applications > Upwork Enterprise.
  3. In the app's overview page, select Users and groups.
  4. Select Add user/group, then select Users and groups in the Add Assignment dialog.
    1. In the Users and groups dialog, select B.Simon from the Users list, then click the Select button at the bottom of the screen.
    2. If you are expecting a role to be assigned to the users, you can select it from the Select a role dropdown. If no role has been set up for this app, you see "Default Access" role selected.
    3. In the Add Assignment dialog, click the Assign button.

Configure Upwork Enterprise SSO

To configure single sign-on on Upwork Enterprise side, you need to send the downloaded Federation Metadata XML and appropriate copied URLs from the application configuration to Upwork Enterprise support team. They set this setting to have the SAML SSO connection set properly on both sides.

Create Upwork Enterprise test user

In this section, a user called B.Simon is created in Upwork Enterprise. Upwork Enterprise supports just-in-time user provisioning, which is enabled by default. There is no action item for you in this section. If a user doesn't already exist in Upwork Enterprise, a new one is created after authentication.

Test SSO

In this section, you test your Microsoft Entra single sign-on configuration with following options.

SP initiated:

  • Click on Test this application, this will redirect to Upwork Enterprise Sign on URL where you can initiate the login flow.

  • Go to Upwork Enterprise Sign-on URL directly and initiate the login flow from there.

IDP initiated:

  • Click on Test this application, and you should be automatically signed in to the Upwork Enterprise for which you set up the SSO.

You can also use Microsoft My Apps to test the application in any mode. When you click the Upwork Enterprise tile in the My Apps, if configured in SP mode you would be redirected to the application sign on page for initiating the login flow and if configured in IDP mode, you should be automatically signed in to the Upwork Enterprise for which you set up the SSO. For more information about the My Apps, see Introduction to the My Apps.

Next steps

Once you configure Upwork Enterprise you can enforce session control, which protects exfiltration and infiltration of your organization’s sensitive data in real time. Session control extends from Conditional Access. Learn how to enforce session control with Microsoft Defender for Cloud Apps.