You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Update ServiceNow connector to support both Basic Auth and OAuth 2.0
- Updated top paragraph to mention both authentication options
- Renamed section to 'Configure ServiceNow with Basic Authentication'
- Consolidated OAuth connection sections into main connection section
- Updated Prerequisites section to reference Basic Auth instructions
- Fixed reference links in troubleshooting section
- Removed duplicate notes and improved structure
Copy file name to clipboardExpand all lines: exposure-management/ServiceNow-data-connector.md
+12-22Lines changed: 12 additions & 22 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,12 +11,12 @@ ms.date: 10/23/2025
11
11
12
12
# ServiceNow data connector
13
13
14
-
To set up the ServiceNow CMDB integration, you need to provide the hostname of your ServiceNow instance and valid credentials. The connector authenticates with Basic Authentication using username and password for read only access.
14
+
To set up the ServiceNow CMDB integration, you need to provide the hostname of your ServiceNow instance and valid credentials. The connector supports both Basic Authentication and OAuth 2.0 as authentication options for read only access. Basic Authentication requires username and password to connect, and OAuth 2.0 is based on granting client credentials.
15
15
16
16
> [!Note]
17
-
> We recommend creating a dedicated user for use with data connectors in Exposure Management.
17
+
> The ServiceNow connector supports Basic Authentication and OAuth 2.0 (client credentials grant). We recommend creating a dedicated user for use with data connectors in Exposure Management with least-privilege (cmdb_read) role assignment.
18
18
19
-
## ServiceNow configuration
19
+
## Configure ServiceNow with Basic Authentication
20
20
21
21
1. Find the hostname of your ServiceNow instance. For example, "contoso.service-now.com".
22
22
1. Create a New ServiceNow user:
@@ -26,16 +26,13 @@ To set up the ServiceNow CMDB integration, you need to provide the hostname of y
26
26
1. As you create the user, check the **Web service access only** box such that the user will be of dedicated use only for this integration.
27
27
1. Assign a **cmdb_read** role to the user you have created. Detailed instructions can be found [here](https://docs.servicenow.com/bundle/vancouver-platform-administration/page/administer/users-and-groups/task/t_AssignARoleToAUser.html).
28
28
29
-
> [!Note]
30
-
> The ServiceNow connector supports Basic Authentication and OAuth 2.0 (client credentials grant). Use a dedicated integration user with least-privilege (cmdb_read) role assignment.
Use OAuth 2.0 client credentials to avoid storing a long‑lived password and to align with modern authentication standards.
35
32
36
33
### Prerequisites
37
34
38
-
1. Create (or identify) a ServiceNow user with at minimum the cmdb_read role. We recommend a dedicated integration user; admin is only required temporarily if needed to install plugins.
35
+
1. Create (or identify) a ServiceNow user with at minimum the cmdb_read role. For detailed instructions on creating a ServiceNow user and assigning roles, see the [Configure ServiceNow with Basic Authentication](#configure-servicenow-with-basic-authentication) section. We recommend a dedicated integration user; admin is only required temporarily if needed to install plugins.
39
36
1. Verify these plugins are installed (navigate to `sys_plugins.list`):
40
37
- OAuth 2.0 (`com.snc.platform.security.oauth`)
41
38
- REST API Provider (`com.glide.rest`)
@@ -66,18 +63,6 @@ Use OAuth 2.0 client credentials to avoid storing a long‑lived password and to
66
63
- Scopes: Not typically required; access is determined by the roles of the OAuth Application User.
67
64
- Required role on the integration user: `cmdb_read` (plus any additional roles needed for specific CI access, if applicable).
68
65
69
-
### Connect using OAuth in Exposure Management
70
-
71
-
In the ServiceNow CMDB connector panel:
72
-
1. Choose the OAuth 2.0 authentication option (if both Basic and OAuth are shown).
1. Select Connect. The system requests an access token via the client credentials flow and then retrieves CMDB data.
78
-
79
-
:::image type="content" source="media/service-now/oauth.png" alt-text="Screenshot of connecting ServiceNow connector" lightbox="media/service-now/oauth.png":::
80
-
81
66
### Differences vs Basic Authentication
82
67
83
68
- Credentials rotate easily (regenerate client secret without changing the integration user password).
@@ -102,7 +87,12 @@ For more background on ServiceNow OAuth, see ServiceNow documentation.
102
87
To establish a connection with ServiceNow in Exposure Management, follow these steps:
103
88
104
89
1. Open the [Data Connectors](https://security.microsoft.com/exposure-data-connectors) from the Exposure Management navigation and select **Connect** in the ServiceNow CMDB tile.
105
-
1. Enter your ServiceNow **instance details** and **credentials** (created in the ServiceNow configuration) and select **Connect**.
90
+
1. Choose your authentication method and enter the required information:
91
+
-**For Basic Authentication**: Enter your ServiceNow instance hostname and the username and password created in the Basic Authentication configuration.
92
+
-**For OAuth 2.0**: Choose the OAuth 2.0 authentication option and enter your instance hostname, Client ID, and Client Secret created in the OAuth configuration.
93
+
1. Select **Connect**. The system will authenticate using your chosen method and retrieve CMDB data.
94
+
95
+
:::image type="content" source="media/service-now/oauth.png" alt-text="Screenshot of connecting ServiceNow connector" lightbox="media/service-now/oauth.png":::
106
96
107
97
## Retrieved data
108
98
@@ -123,8 +113,8 @@ Here are some common issues that might arise when configuring the ServiceNow Con
| 'The remote server name couldn't be resolved' error message | Verify ServiceNow Instance hostname. Learn more about authentication to ServiceNow here: [Authentication (servicenow.com)](https://docs.servicenow.com/bundle/vancouver-platform-security/page/integrate/single-sign-on/concept/c_Authentication.html)|
126
-
|**Error code 401**: Authorization failure | An authorization failure indicates that credentials might not be correct, or there might not be sufficient permissions to access the ServiceNow data. Check your credentials and make sure they are correct and valid. Also check that your credentials have the required permissions. See the ServiceNow [configuration section](#servicenow-configuration) for details on how to ensure the cmdb_read role is assigned. Another possible reason for this failure is the that your ServiceNow instance is configured to accept connections only from a limited range of IP addresses. In this case, see the guidance for adding the right set of IPs to your allowlist here: [Allowlist IP addresses](configure-data-connectors.md#allowlist-ip-addresses)|
127
-
|**Error code 403:** Access forbidden error | This error indicates that the provided credentials lack the necessary permissions to run the requested APIs. Update your credentials with the proper permissions as described in the [configuration section](#servicenow-configuration), and make sure they have at minimum cmdb_read role assigned. |
116
+
|**Error code 401**: Authorization failure | An authorization failure indicates that credentials might not be correct, or there might not be sufficient permissions to access the ServiceNow data. Check your credentials and make sure they are correct and valid. Also check that your credentials have the required permissions. See the [Configure ServiceNow with Basic Authentication](#configure-servicenow-with-basic-authentication) section for details on how to ensure the cmdb_read role is assigned. Another possible reason for this failure is the that your ServiceNow instance is configured to accept connections only from a limited range of IP addresses. In this case, see the guidance for adding the right set of IPs to your allowlist here: [Allowlist IP addresses](configure-data-connectors.md#allowlist-ip-addresses)|
117
+
|**Error code 403:** Access forbidden error | This error indicates that the provided credentials lack the necessary permissions to run the requested APIs. Update your credentials with the proper permissions as described in the [Configure ServiceNow with Basic Authentication](#configure-servicenow-with-basic-authentication) section, and make sure they have at minimum cmdb_read role assigned. |
128
118
|**Error code 404:** Not found error | This error indicates that the requested endpoint wasn't found to be reachable. Verify that your ServiceNow Instance hostname is correct. |
129
119
|**Error code 429** 'Too many requests" | The system periodically pulls data from the configured external providers, which might have a limit on the number of concurrent requests. We recommend creating a dedicated user or account for the connector to avoid reaching this limit. |
130
120
| Bad URL error message | This error indicates that the requested endpoint wasn't found to be reachable. Verify that your ServiceNow Instance hostname is correct. |
0 commit comments