Community
Questions Library
Docs
Blog
Events
Swag
Github
Slack
JupiterOne
Discussions
Release Notes
Contact Us
Azure DevOps - AskJ1 Community
<main> <article class="userContent"> <h2 data-id="azure-devops-jupiterone-integration-benefits">Azure DevOps + JupiterOne Integration Benefits</h2> <ul><li>Visualize Azure DevOps projects, teams, and users in the JupiterOne graph.</li> <li>Map Azure DevOps users to employees in your JupiterOne account.</li> <li>Monitor changes to Azure DevOps users using JupiterOne alerts.</li> </ul><h2 data-id="how-it-works">How it Works</h2> <ul><li><p>JupiterOne periodically fetches projects, teams, and users from Azure DevOps<br> to update the graph.</p></li> <li><p>Write JupiterOne queries to review and monitor updates to the graph, or<br> leverage existing queries.</p></li> <li><p>Configure alerts to take action when a JupiterOne graph changes, or leverage<br> existing alerts.</p></li> </ul><h2 data-id="requirements">Requirements</h2> <ul><li><p>The Azure DevOps + JupiterOne integration uses a read-only, personal access<br> token to ingest data from the Azure DevOps platform. You must have the<br> necessary permissions to generate a personal access token in Azure DevOps.</p></li> <li><p>You must have permission in JupiterOne to install new integrations.</p></li> </ul><h2 data-id="support">Support</h2> <p>If you need help with this integration, contact<br><a rel="nofollow" href="https://support.jupiterone.io">JupiterOne Support</a>.</p> <h2 data-id="how-to-use-the-integration">How to Use the Integration</h2> <h3 data-id="in-azure-devops">In Azure DevOps</h3> <ol><li><a rel="nofollow" href="https://docs.microsoft.com/en-us/azure/devops/organizations/accounts/use-personal-access-tokens-to-authenticate">Generate a Personal Access Token (PAT)</a></li> <li>Grant the following permissions to your PAT: <ul><li>Project and Team [read]</li> <li>Work Items [read]</li> </ul></li> </ol><h3 data-id="in-jupiterone">In JupiterOne</h3> <ol><li>From the top navigation of the J1 Search homepage, select <strong>Integrations</strong>.</li> <li>Scroll down to <strong>Azure DevOps</strong> and click it.</li> <li>Click <strong>Add Configuration</strong> and configure the following settings:</li> </ol><ul><li><p>Enter the account name by which you want to identify this Azure DevOps account<br> in JupiterOne. Select <strong>Tag with Account Name</strong> to store this value in<br><code class="code codeInline" spellcheck="false" tabindex="0">tag.AccountName</code> of the ingested assets.</p></li> <li><p>Enter a description to help your team identify the integration.</p></li> <li><p>Select a polling interval that is sufficient for your monitoring requirements.<br> You can leave this as <code class="code codeInline" spellcheck="false" tabindex="0">DISABLED</code> and manually execute the integration.</p></li> <li><p>Enter your account URL (<em>Example: "<a href="https://dev.azure.com/jupiterone" rel="nofollow">https://dev.azure.com/jupiterone</a>"</em>)</p></li> <li>Enter the personal access token generated for use by JupiterOne.</li> </ul><ol start="4"><li>Click <strong>Create Configuration</strong> after you have entered all the values.</li> </ol><h1 data-id="how-to-uninstall">How to Uninstall</h1> <ol><li>From the top navigation of the J1 Search homepage, select <strong>Integrations</strong>.</li> <li>Scroll down to <strong>Azure DevOps</strong> and click it.</li> <li>Identify and click the <strong>integration to delete</strong>.</li> <li>Click the trash can icon.</li> <li>Click <strong>Remove</strong> to delete the integration.</li> </ol><p><br></p> <h2 data-id="data-model">Data Model</h2> <h3 data-id="entities">Entities</h3> <p>The following entities are created:</p> <table><thead><tr><th>Resources</th> <th>Entity <code class="code codeInline" spellcheck="false" tabindex="0">_type</code></th> <th>Entity <code class="code codeInline" spellcheck="false" tabindex="0">_class</code></th> </tr></thead><tbody><tr><td>ADO Project</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_project</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">Project</code></td> </tr><tr><td>ADO Team</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_team</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">UserGroup</code></td> </tr><tr><td>ADO User</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_user</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">User</code></td> </tr><tr><td>ADO WorkItem</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_work_item</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">Record</code></td> </tr><tr><td>Azure Devops Account</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_account</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">Account</code></td> </tr><tr><td>Repository</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_repo</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">Repository</code></td> </tr></tbody></table><h3 data-id="relationships">Relationships</h3> <p>The following relationships are created:</p> <table><thead><tr><th>Source Entity <code class="code codeInline" spellcheck="false" tabindex="0">_type</code></th> <th>Relationship <code class="code codeInline" spellcheck="false" tabindex="0">_class</code></th> <th>Target Entity <code class="code codeInline" spellcheck="false" tabindex="0">_type</code></th> </tr></thead><tbody><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_account</code></td> <td><strong>HAS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_project</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_account</code></td> <td><strong>HAS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_team</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_account</code></td> <td><strong>HAS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_user</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_project</code></td> <td><strong>HAS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_team</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_project</code></td> <td><strong>HAS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_work_item</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_project</code></td> <td><strong>USES</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_repo</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_team</code></td> <td><strong>HAS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_user</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_user</code></td> <td><strong>ASSIGNED</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_work_item</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_user</code></td> <td><strong>CREATED</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_work_item</code></td> </tr></tbody></table><h3 data-id="mapped-relationships">Mapped Relationships</h3> <p>The following mapped relationships are created:</p> <table><thead><tr><th>Source Entity <code class="code codeInline" spellcheck="false" tabindex="0">_type</code></th> <th>Relationship <code class="code codeInline" spellcheck="false" tabindex="0">_class</code></th> <th>Target Entity <code class="code codeInline" spellcheck="false" tabindex="0">_type</code></th> <th>Direction</th> </tr></thead><tbody><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">azure_devops_project</code></td> <td><strong>USES</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">*github_repo*</code></td> <td>FORWARD</td> </tr></tbody></table><p><br></p> </article> </main>