Azure DevOps PAT scopes for DevOps
Summarize
Summary of Azure DevOps PAT scopes for DevOps
This guidance explains the required scope access levels when using a Personal Access Token (PAT) to connect ServiceNow DevOps with Azure DevOps. Properly configuring these scopes ensures seamless integration capabilities such as discovering boards, repositories, pipelines, and managing service connections without manual webhook or service connection setup by Azure DevOps administrators.
Show less
Note that to onboard a project or organization, the PAT owner must belong to specific administrative groups in Azure DevOps: Project Administrators group for projects and Project Collection Administrators group for organizations.
Scope Access Levels and Their Practical Use
Each Azure DevOps capability requires specific PAT scopes and access levels to function correctly within ServiceNow DevOps:
- Boards (Work items): Read access is needed to discover boards and receive work items through import, polling, or webhooks.
- Repos (Code): Read access allows discovering repositories and receiving branches, commits, and tags.
- Build pipelines: Read & Execute access is required. Read enables discovery and retrieval of build details; Execute enables controlling pipeline states such as pause/resume.
- Release pipelines and gates: Read, Write & Execute access is necessary. Read access supports pipeline discovery and details retrieval. Write and Execute allow controlling pipeline execution during change control steps.
- Test management (build and release pipelines): Read access enables receipt of test results.
- Service Connections: Read, Query, and Manage access permits automatic creation and management of service connections that configure ServiceNow tasks like change acceleration and artifact registration.
- Packaging: Read access allows discovery of artifact repositories and feeds, supporting package management.
Important: To ensure pipeline features work seamlessly, the user must have the "Update build information" permission on their Azure DevOps pipeline. Customers should contact their Azure DevOps Project Administrator if this permission is missing.
Key Considerations and Limitations
- If a tool is created with a custom-defined access level and later reconfigured due to integration user credential changes, existing service hooks for releases are not updated but duplicated. To prevent duplicate service hooks, it is recommended to create the tool with full access level.
Scope access levels are required when using a personal access token (PAT) to access Azure DevOps during setup.
Scope access level settings are based on the capability you have configured. Set the corresponding access level for seamless functionality. For information on creating a PAT, see Personal access token (PAT).
- 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.
| Capability | Scope | Access level | Impact |
|---|---|---|---|
| Boards | Work item | Read | Required to discover the boards and receive the work items either through import/polling or real time with a configured webhook. |
| Repos | Code | Read | Required to discover repositories and receive branches, commits, and tags either through import/polling or real time with a configured webhook. |
| Build pipelines | Build | Read & Execute |
|
| Release pipelines and gates | Release | Read, write and execute |
|
| Test build and release pipelines | Test management | Read | Required to receive test results for pipeline execution. |
| Service Connections | Service connection | Read, query, and manage | Required to create Service connection automatically which is used to configure ServiceNow tasks like change acceleration, artifact and package registration, etc. |
| Packaging | 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. |
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.