Community
Questions Library
Docs
Blog
Events
Swag
Github
Slack
JupiterOne
Discussions
Release Notes
Contact Us
Bitbucket Integration with JupiterOne - AskJ1 Community
<main> <article class="userContent"> <h2 data-id="bitbucket-jupiterone-integration-benefits">Bitbucket + JupiterOne Integration Benefits</h2> <ul><li>Visualize Bitbucket workspaces, projects, repositories, pull requests, and users in the JupiterOne graph.</li> <li>Bitbucket users will be mapped to employees in your JupiterOne account.</li> <li>Monitor changes to Bitbucket users using JupiterOne alerts.</li> <li>Produce compliance evidence using Bitbucket Pull Requests ingested into<br> JupiterOne.</li> </ul><h2 data-id="how-it-works">How it Works</h2> <ul><li><p>JupiterOne periodically fetches workspaces, projects, repositories, pull<br> requests, and users from Bitbucket to update the graph.</p></li> <li><p>The Bitbucket user will be mapped to employees by matching<br><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_user.nickname === Person.bitbucketNickname</code>.</p></li> <li><p>Write JupiterOne queries to review and monitor updates to the graph.</p></li> <li>Configure alerts to take action when the JupiterOne graph changes.</li> </ul><h2 data-id="requirements">Requirements</h2> <ul><li><p>JupiterOne requires a Bitbucket OAuth Consumer in the target Workspace. You<br> need permission to create an OAuth Consumer.</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, please contact<br><a rel="nofollow" href="https://community.askj1.com">JupiterOne Support</a>.</p> <h2 data-id="integration-walkthrough">Integration Walkthrough</h2> <h3 data-id="in-bitbucket">In Bitbucket</h3> <ol><li><p>From your profile avatar in the bottom left, click on the workspace in the<br> Recent workspaces list or click All workspaces to open an entire list from<br> which to choose.</p></li> <li><p>Click Settings on the left sidebar to open the Workspace settings.</p></li> <li><p>Click OAuth consumers under Apps and features on the left navigation.</p></li> <li><p>Click the Add consumer button.</p></li> </ol><p><img src="https://us.v-cdn.net/6035534/uploads/6CM9PROC7T28/integration-bitbucket-oauth-consumer-settings.png" alt="BitBucket OAuth Example Config" class="embedImage-img importedEmbed-img"></img></p> <p>Pull requests read permission is needed to ingest PRs. The PR entities serve as<br> code review records for security and compliance.</p> <ol start="5"><li>Click Save.</li> </ol><p>The system generates a key and a secret for you. Toggle the consumer name to see<br> the generated Key and Secret value for your consumer.</p> <h3 data-id="in-jupiterone">In JupiterOne</h3> <ol><li>From the configuration <strong>Gear Icon</strong>, select <strong>Integrations</strong>.</li> <li>Scroll to the <strong>Bitbucket</strong> integration tile and click it.</li> <li>Click the <strong>Add Configuration</strong> button.</li> <li>Enter the <strong>Account Name</strong> by which you'd like to identify this Bitbucket<br> account in JupiterOne. Ingested entities will have this value stored in<br><code class="code codeInline" spellcheck="false" tabindex="0">tag.AccountName</code> when <strong>Tag with Account Name</strong> is checked.</li> <li>Enter a <strong>Description</strong> that will further assist your team when identifying<br> the integration instance.</li> <li>Select a <strong>Polling Interval</strong> that you feel is sufficient for your monitoring<br> needs. You may leave this as <code class="code codeInline" spellcheck="false" tabindex="0">DISABLED</code> and manually execute the integration.</li> <li>Enter the <strong>Bitbucket OAuth Consumer credentials</strong> generated for use by<br> JupiterOne.</li> <li>Click <strong>Create Configuration</strong> once all values are provided.</li> </ol><h1 data-id="how-to-uninstall">How to Uninstall</h1> <ol><li>From the configuration <strong>Gear Icon</strong>, select <strong>Integrations</strong>.</li> <li>Scroll to the <strong>Bitbucket</strong> integration tile and click it.</li> <li>Identify and click the <strong>integration to delete</strong>.</li> <li>Click the <strong>trash can</strong> icon.</li> <li>Click the <strong>Remove</strong> button to delete the integration.</li> </ol><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>Workspace</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_workspace</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">Account</code></td> </tr><tr><td>Project</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_project</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">Project</code></td> </tr><tr><td>Pull Request</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_pull_request</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">Review</code>, <code class="code codeInline" spellcheck="false" tabindex="0">PR</code></td> </tr><tr><td>Repository</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_repo</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">CodeRepo</code></td> </tr><tr><td>User</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_user</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">User</code></td> </tr></tbody></table><h3 data-id="relationships">Relationships</h3> <p>The following relationships are created/mapped:</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">bitbucket_workspace</code></td> <td><strong>OWNS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_project</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_workspace</code></td> <td><strong>OWNS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_repo</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_workspace</code></td> <td><strong>HAS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_user</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_project</code></td> <td><strong>HAS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_repo</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_repo</code></td> <td><strong>HAS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_pull_request</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_user</code></td> <td><strong>OPENED</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_pull_request</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_user</code></td> <td><strong>REVIEWED</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_pull_request</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_user</code></td> <td><strong>APPROVED</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">bitbucket_pull_request</code></td> </tr></tbody></table> </article> </main>