Permissions required for DevOps tools
Summarize
Summary of Permissions required for DevOps tools
This document outlines the specific permissions needed in various third-party DevOps tools to enable seamless integration with ServiceNow DevOps Change Velocity. Proper permission settings allow automated discovery, data import, polling, real-time updates via webhooks, and pipeline control from within ServiceNow, facilitating effective change acceleration and artifact management.
Show less
Azure DevOps Permissions
- Access Level: Full access level is recommended to avoid duplication of service hooks during credential reconfiguration.
- Key Object Permissions:
- Work Items (Read): Discover boards and work items.
- Code (Read): Discover repositories, branches, commits, and tags.
- Build (Read, Execute): Discover build pipelines, view execution details, and control pipeline execution.
- Release (Read, Write, Execute): Discover release pipelines, receive execution details, and control pipeline execution.
- Test Management (Read): Access test results.
- Service Connections (Read, Query, Manage): Automatically create service connections for ServiceNow tasks.
- Packaging (Read): Discover artifact repositories and feeds.
- Project Administrators: Required to create webhooks and service connections automatically. The PAT owner must be a member of the Project Administrators or Project Collection Administrators group depending on onboarding scope.
Bitbucket Permissions
- Account and Projects (Read): Discover repositories and related data.
- Webhooks (Read and Write): Manage webhooks for real-time data reception.
- Pull Requests (Read): Access pull request information.
GitHub Permissions
- Basic Authentication:
- repo: Discover repositories and workflows.
- admin:repohook (read/write): Manage webhooks for real-time data.
- user:email: Identify pull request actors.
- OAuth 2.0 Authentication:
- Actions (Read-only): Access workflows.
- Contents (Read-only): Discover repositories and workflows.
- Deployments (Read and Write): Resume workflows linked to ServiceNow changes.
- Environments, Metadata, Secrets (Read-only): Access environment secrets and metadata for change creation.
- Webhooks (Read and Write): Automatically configure webhooks from ServiceNow.
- Pull Requests and Checks (Read-only): Access pull request details and workflow events.
GitLab Permissions
- api (Read and Write): Discover plans, repositories, pipelines, branches, commits, and control pipelines based on change control.
Jenkins Permissions
- Overall and Job (Read): Discover pipelines and receive detailed pipeline execution data through the ServiceNow DevOps Jenkins plugin.
JFrog Permissions
- Roles Administer Platform: Access artifact details including name, repository, and version.
Jira Permissions
- Groups jira-software-users: Discover plans and fetch features and stories.
- Jira Administrators: Required to create webhooks automatically for real-time feature and story updates.
Practical Implications for ServiceNow Customers
By ensuring these permissions are correctly set in your DevOps tools, you enable ServiceNow to automatically discover relevant artifacts, track changes, and control pipeline execution without manual configuration of webhooks or service connections. This integration streamlines change management processes, accelerates delivery, and improves visibility across your DevOps lifecycle.
Permissions required in your third-party tool to connect to DevOps Change Velocity.
Azure DevOps permissions
- When onboarding a Project, the Project Administrators privilege requires the owner of the PAT to be a member of the project's Project Administrators group.
- When onboarding an Organization, the Project Administrators privilege requires the owner of the PAT to be a member of the organization's Project Collection Administrators group.
| Object | Permissions required | Impact |
|---|---|---|
| Work Items | Read | Required to discover the boards and receive the work items either through import, polling, or real time with a configured webhook. |
| Code | Read | Required to discover repositories and receive branches, commits, and tags either through import, polling, or real time with a configured webhook. |
| Build | Read and execute |
Read: Required to discover the build pipelines and receive pipeline execution details like stages, artifacts, test results, code security results, and so on, either through import, polling, or real time with a configured webhook. Execute: Required to pause or resume the pipelines based on the change control step. |
| Release | Read, write, and execute |
Read: Required to discover the release pipelines and receive pipeline execution details like stages, artifacts, test results, code security results, and so on, either through import, polling, or real time with a configured webhook. Write and Execute: Required to pause or resume the pipelines based on change control step. |
| Test Management | Read | Required to receive test results for pipeline execution. |
| Service Connections | Read, query, and manage | Required to create Service connection automatically which is used to configure ServiceNow tasks like change acceleration, artifact, and package registration, and so on. |
| Packaging | Read | Required to discover the artifact repositories and receive the feeds and packages either through import, polling, or real-time with a configured webhook. |
| Permissions | Project Administrators | Required to create webhooks automatically to receive data in real-time and to create Service connections automatically which is used to configure ServiceNow tasks like change acceleration, artifact and package registration, and so on. |
- Limitation of Azure DevOps
- If you create an Azure tool with custom defined access level, and you reconfigure such a tool because of change in your Integration user credentials, then the existing service hooks for release created and release deployment are not updated. Instead, two new service hooks are created with new configuration details. To avoid the duplication of these service hooks, you must create the tool with full access level.
Bitbucket
| Object | Permissions required | Impact |
|---|---|---|
| Account | Read | Required to discover repos and fetch branches, commit, pull requests, and tags either through import, polling, or configured webhook. |
| Projects | Read | Required to discover repos and fetch branches, commit, pull requests, and tags either through import, polling, or configured webhook. |
| Webhooks | Read and write | Required to discover repos and fetch branches, commit, pull requests, and tags either through import, polling, or configured webhook. |
| Pull requests | Read | Required to discover repos and fetch branches, commit, pull requests, and tags either through import, polling, or configured webhook. |
GitHub permissions
The following table lists the GitHub permissions for basic authentication.
| Object | Permissions required | Impact |
|---|---|---|
| repo | repo | Required to discover repositories and their respective workflows and receive branches, commits, pull requests, and tags either through import, polling, or real-time with a configured webhook. |
| admin:repo_hook | write:repo_hook | Required to create webhooks automatically to receive repo data in real time. |
| admin:repo_hook | read:repo_hook | Required to lookup already existing webhooks before any new webhook is automatically created to receive repo data in real time. |
| user | user:email | Required to discover pull requests actors like approvers, raised by, merged by, reviewers, and assignees either through import, polling, or real time with a configured webhook. |
The following table lists the GitHub permissions required for OAuth 2.0 authentication.
| Object | Permissions required | Impact |
|---|---|---|
| Actions | Read-only | Required to receive workflows associated to the respective repos real time with a configured webhook. |
| Contents | Read-only | Required to discover repositories and its respective workflows and receive branches, commits, and tags either through import/polling or real time with a configured webhook. |
| Deployments | Read and write | Required to resume the workflow which has environment with ServiceNow change as an environment secret. |
| Environments | Read-only | Required to lookup for existing environment secrets for change creation. |
| Metadata | Read-only | Required to discover repositories and its respective workflows. |
| Secrets | Read-only | Required to get access to environment secrets (to create change). |
| Webhooks | Read and write Note: Read and write permissions are required to configure webhooks from ServiceNow. |
Required to create webhook automatically to receive repo data in real time. |
| Pull requests | Read-only | Required to discover pull requests and receive related details like pull request ID, commits, raised by, approvers, comments, reviewers, etc., either through import/polling or real time with a configured webhook. |
| Checks | Read-only | Required to process workflow events associated with private repositories. |
GitLab permissions
| Object | Permissions required | Impact |
|---|---|---|
| api | Read and write | Required to discover plans, repos, and pipelines and receive branches, commit, and tags, and pipeline execution details (like stages, artifacts, test results, code security results), work items, tags, branches, and commits either through import, polling, or real time with a configured webhook. Also, to pause or resume the pipelines based on change control step. |
Jenkins permissions
| Object | Permissions required | Impact |
|---|---|---|
| Overall | Read | Required to discover the pipelines and receive pipeline execution details like jobs or stages, artifacts, test results, code security results, and so on, either through import, polling, or real time with ServiceNow DevOps Jenkins plugin. |
| Job | Read | Required to discover the pipelines and receive pipeline execution details like jobs or stages, artifacts, test results, code security results, and so on, either through import, polling, or real time with ServiceNow DevOps Jenkins plugin. |
JFrog permissions
| Object | Permissions required | Impact |
|---|---|---|
| Roles | Administer Platform | Required to access artifact details like artifact name, artifact repo, and artifact version. |
Jira permissions
| Object | Permissions required | Impact |
|---|---|---|
| Groups | jira-software-users | Required to discover plans and fetch features, stories, and so on, either through import, polling, or configured webhook. |
| Permissions | Jira Administrators | Required to create webhooks automatically for fetching features and stories in real time. |