ServiceNow
Description
This dashboard allows your teams to have a quick view of all their current Incidents / Requests / Changes / Problems (thanks to the ServiceNow integration) and Incidents escalation based on timeframe (thanks to PowerShell).
How do I import and configure this dashboard?
Ensure you're using SquaredUp DS v5.4 or above.
Already a SquaredUp customer?
Get the latest version of SquaredUp DS for Azure
New to SquaredUp?
- You need a ServiceNow provider for this dashboard.
If you already have a ServiceNow provider, you can use your existing provider, but you'll need to update the tiles in the dashboard. The tiles expect a provider called "ServiceNow - Prod", so you'll need to change the provider in the tiles to your provider.
If you don't have a ServiceNow provider yet, create one with the following settings:NameServiceNow - ProdNote: The name is case-sensitive and must be entered exactly as given here for the tiles to recognize the profile automatically. If you name it differently, you will need to select the profile manually for each tile on the dashboard.
- The SquaredUp server must have access to your ServiceNow instance on port 443 (HTTPS), since it is the server that connects to ServiceNow, and not your users' browser.
- If you use a proxy server you may need to configure the proxy How to configure SquaredUp DS to use a proxy.
- A ServiceNow account. It depends on the roles of the ServiceNow account you use for the ServiceNow provider what functions are available in the ServiceNow tile.
How the ServiceNow account affects the ServiceNow tile
The permissions of the ServiceNow account you are using for your ServiceNow providerplugin affect what you can see and do in the ServiceNow tile.We recommend using a service account, which means you create an account specifically to use with the ServiceNow providerplugin. You have different options for setting up this service account:
- ServiceNow permissions assignment with roles
Give the ServiceNow account the ITIL and rest_api_explorer roles. - ServiceNow permissions assignment with ACLs, in place of roles
If you don't want to use the ITIL role (for licensing or security reasons) give the ServiceNow account only the rest_api_explorer role and use ACLs to give the account more rights. This will limit the functionality of the ServiceNow tile.Using accounts without the ITIL role may cause data streams to error.When you are using an account without the roles specified in this article, then the functionality of the ServiceNow tileplugin is limited:.
- You'll see an error if you used a scope for your tile
- In the View dropdown, only the non-admin default view is available (contains a default set of columns)
- Under Filter, default filters are not available, only user-created ones are visible
You can grant the specific permissions required more granularly by creating a custom role and assigning the specific ACLs or assigning the ACLs themselves directly to a user account:
ACLs can be added in two ways:
- Adding them directly to a user account, meaning you are adding the ACLs to the service account you are using for the ServiceNow providerplugin.
- Adding them to a role. We recommend that you create a new role specifically just for adding the ACLs to it. Then you need to assign the role to the service account you are using for the ServiceNow providerplugin.
A benefit of adding the ACLs to a role is that it makes them easier to manage and you can assign the role to different users (in this case, service accounts) if you want to use different service accounts for different instances of the ServiceNow providersplugin.
You need to add the following ACLs:
sys_filter
sys_dictionary.*
sys_dictionary
sys_db_object
sys_ui_list
sys_db_object.*
sys_ui_list.*
What tile functions do those ACLs add when I use a non-admin ServiceNow account?
- The tile can be scoped
- Under Filter, all default filters are visible
- The ACLs don't affect the views. The View dropdown still shows only the non-admin default view. You need to use an admin Service account to see all the views.
In SquaredUp DS navigate to the right-hand menu ☰ > system > Integrations
- Under Integrations click on ServiceNow and type in a suitable name, e.g. ServiceNow.
- instance url:
The instance URL should look something likehttps://instancename.service-now.com/api/now/
whereinstancename
is your instance. If/api/now/
is not included as part of the instance URL then it will be automatically appended to this URL when the provider is created. If ServiceNow is installed on-premises, this may be something different.
Note: This URL is prepended to every request URL. - client id and secret:
To get a client ID and secret from ServiceNow, you need to create an OAuth API endpoint for external clients in your ServiceNow account.
Note: If you already are using ServiceNow in SquaredUp DS, you can re-use the client ID and secret you previously created. In this case, you can skip this step.- In your ServiceNow account in the Application Navigator (left-hand menu) go to System OAuth and click Application Registry.
- Click Create an OAuth API endpoint for external clients.
- Give it an easy to remember name like
SquaredUp DS
and leave the other default settings as they are. - Once you've created the endpoint, open the entry to view the client ID and client secret. Click the padlock next to the client secret to see it.
- Copy client ID and client secret into a notepad for use later.
- username and password of the ServiceNow account you want to use.
How the ServiceNow account affects the ServiceNow tile
The permissions of the ServiceNow account you are using for your ServiceNow providerplugin affect what you can see and do in the ServiceNow tile.We recommend using a service account, which means you create an account specifically to use with the ServiceNow providerplugin. You have different options for setting up this service account:
- ServiceNow permissions assignment with roles
Give the ServiceNow account the ITIL and rest_api_explorer roles. - ServiceNow permissions assignment with ACLs, in place of roles
If you don't want to use the ITIL role (for licensing or security reasons) give the ServiceNow account only the rest_api_explorer role and use ACLs to give the account more rights. This will limit the functionality of the ServiceNow tile.Using accounts without the ITIL role may cause data streams to error.When you are using an account without the roles specified in this article, then the functionality of the ServiceNow tileplugin is limited:.
- You'll see an error if you used a scope for your tile
- In the View dropdown, only the non-admin default view is available (contains a default set of columns)
- Under Filter, default filters are not available, only user-created ones are visible
You can grant the specific permissions required more granularly by creating a custom role and assigning the specific ACLs or assigning the ACLs themselves directly to a user account:
ACLs can be added in two ways:
- Adding them directly to a user account, meaning you are adding the ACLs to the service account you are using for the ServiceNow providerplugin.
- Adding them to a role. We recommend that you create a new role specifically just for adding the ACLs to it. Then you need to assign the role to the service account you are using for the ServiceNow providerplugin.
A benefit of adding the ACLs to a role is that it makes them easier to manage and you can assign the role to different users (in this case, service accounts) if you want to use different service accounts for different instances of the ServiceNow providersplugin.
You need to add the following ACLs:
sys_filter
sys_dictionary.*
sys_dictionary
sys_db_object
sys_ui_list
sys_db_object.*
sys_ui_list.*
What tile functions do those ACLs add when I use a non-admin ServiceNow account?
- The tile can be scoped
- Under Filter, all default filters are visible
- The ACLs don't affect the views. The View dropdown still shows only the non-admin default view. You need to use an admin Service account to see all the views.
- ServiceNow permissions assignment with roles
- Click Save.
If the configuration is correct you will see a green tick.
If the provider is not authorized it could be that some of the provider configuration is incorrect (for example the username, password, secret etc), or if you use a proxy it could be that the proxy is not configured. See How to configure SquaredUp DS to use a proxy.
- Create a PowerShell profile in SquaredUp DS with the following settings: NameServiceNow
Note: The name is case-sensitive and must be entered exactly as given here for the tiles to recognize the profile automatically. If you name it differently, you will need to select the profile manually for each tile on the dashboard.
Description (optional)Used to connect to ServiceNowScriptCopy and paste the contents of the PowerShell script below.Note: You will need to change the following values:$User
and$Pass
- the same username and password you used for the ServiceNow provider$BaseUrl
- the base URL of your ServieNow instance$User = '###UserName###' $Pass = '###Password###' $Headers = @{ Authorization = 'Basic ' + [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $user, $pass)))} $Content = 'application/json'; $Body = @{}; $BaseUrl = "###BaseURL###" functionConvert-DateEuropeToUS { [cmdletbinding()]param ( [parameter(mandatory=$true,position=0,valuefrompipeline=$true)] [ValidatePattern("[0-9]{2}[-]{1}[0-9]{2}[-]{1}[0-9]{4}")]$Date) begin { } process { foreach ($Din$Date) { $D = $D.replace('-','/') $a = [regex]::Replace($D,"(\\w)(\\w)(/)(\\w)(\\w)(/)(\\w)(\\w)(\\w)(\\w)",'$4$5/$1$2/$7$8$9$10') ([datetime]$a).ToShortDateString() } } end { } }
- From the top right hand menu ☰ click system.
- Go to the PowerShell tab.
- Click add new profile.
- Enter a name and a description for the new profile.
- Enter the profile script.
- Click add profile.
The profile is now saved and can be used in a PowerShell tile.
For more help creating a PowerShell profile see How to use the PowerShell tile
Download and import this dashboard pack.
- Download the dashboard pack zip file for the dashboard pack you wish to import.
There may be additional steps before or after the import to get the dashboard working in your environment.
- In DS for Azure go to the top right hand menu ☰ > Import Dashboard Packs and drag the zip file into the Manual Import box.
- The dashboard pack is imported and if the pack contains top-level dashboards, these will automatically appear in the navigation bar, usually in a folder called 'Community Dashboards' for dashboard packs from the SquaredUp Community.
- Carry out any additional steps required to make the dashboard work in your environment. These steps will be described on the download page for each dashboard. For example, you may need to create the correctly named Web API provider, create a PowerShell profile, or edit tile scopes.
- Edit the imported dashboard as required.
- Download the dashboard pack zip file for the dashboard pack you wish to import.
- If you used an existing ServiceNow provider (meaning a provider that isn't named "ServiceNow - Prod"), edit the tiles that use a ServiceNow provider and change the provider to the one you're using.
- Edit the tiles by clicking the Edit button.
- Open the provider panel.
- Select your ServiceNow provider.
Publish the dashboard.
A newly created dashboard will not be visible to others until it is published.
If you made changes to an existing dashboard, the changes will only be visible to others after you published the dashboard again.
You can identify a dashboard that has not been published yet or has unpublished changes by the unpublished button at the top:
When you click on the unpublished button, you'll have two options:
- Publish will make the dashboard or changes visible to others.
Note: A newly created dashboard will appear on the menu where you created it. To move the dashboard to a different place on the navigation bar see How to edit the Navigation Bar. - Discard will delete your draft dashboard if it has never been published or, if you made changes to an already published dashboard, discard the changes.
Publishing dashboards to different audiences
Find out how to publish dashboards to a subset of users using Team Folders or visible to anyone even unlicensed users with Open Access (Sharing Dashboards with anyone - Open Access).
- Publish will make the dashboard or changes visible to others.