Community
Questions Library
Docs
Blog
Events
Swag
Github
Slack
JupiterOne
Discussions
Release Notes
Contact Us
JFrog Artifactory - AskJ1 Community
<main> <article class="userContent"> <h2 data-id="jfrog-artifactory-jupiterone-integration-benefits">JFrog Artifactory + JupiterOne Integration Benefits</h2> <ul><li><p>Visualize Artifactory repository groups, code repositories, code modules,<br> builds, keys, permissions, code modules, user groups, and users in the<br> JupiterOne graph.</p></li> <li><p>Monitor Artifactory CI/CD activities across containers and repositories.</p></li> <li>Monitor Artifactory changes to repository groups, code repositories, code<br> modules, builds, keys, permissions, code modules, user groups, and users using<br> JupiterOne alerts.</li> </ul><h2 data-id="how-it-works">How it Works</h2> <ul><li><p>JupiterOne periodically fetches Artifactory users and data across your CI/CD<br> pipeline to update the graph.</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 the namespace of your Artifactory account. Also required<br> are a client access token, client pipeline access token, and the client<br> administrator name that granted the access tokens.</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://support.jupiterone.io">JupiterOne Support</a>.</p> <h2 data-id="integration-walkthrough">Integration Walkthrough</h2> <h3 data-id="in-jfrog-artifactory">In JFrog Artifactory</h3> <p>Configure API access tokens in Artifactory by following the instructions in the<br><a rel="nofollow" href="https://www.jfrog.com/confluence/display/JFROG/Access+Tokens#AccessTokens-CreateToken">Access Tokens</a><br> guide.</p> <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 to the <strong>Artifactory</strong> integration tile and click it.</li> <li>Click the <strong>Add Configuration</strong> button and configure the following settings:</li> </ol><ul><li><p>Enter the <strong>Account Name</strong> by which you'd like to identify this Artifactory<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.</p></li> <li><p>Enter a <strong>Description</strong> that will further assist your team when identifying<br> the integration instance.</p></li> <li><p>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.</p></li> <li><p>Enter the <strong>Client Namespace</strong> of your Artifactory account.</p></li> <li>Enter the <strong>Client Access Token</strong> configured in your Artifactory account.</li> <li><p>Enter the <strong>Client Pipeline Access Token</strong> configured in your Artifactory<br> account.</p></li> <li><p>Enter the <strong>Client Administrator Name</strong>, or username of the administrator that<br> granted the Artifactory access tokens.</p></li> </ul><ol start="4"><li>Click <strong>Create Configuration</strong> once all values are provided.</li> </ol><h2 data-id="how-to-uninstall">How to Uninstall</h2> <ol><li>From the top navigation of the J1 Search homepage, select <strong>Integrations</strong></li> <li>Scroll to the <strong>Artifactory</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><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>AccessToken</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_access_token</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">Key</code>, <code class="code codeInline" spellcheck="false" tabindex="0">AccessKey</code></td> </tr><tr><td>Account</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_account</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">Account</code></td> </tr><tr><td>ArtifactCodeModule</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_artifact_codemodule</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">CodeModule</code></td> </tr><tr><td>Build</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_build</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">Configuration</code></td> </tr><tr><td>Group</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_group</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">UserGroup</code></td> </tr><tr><td>Permission</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_permission</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">AccessPolicy</code></td> </tr><tr><td>PipelineSource</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_pipeline_source</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">CodeRepo</code></td> </tr><tr><td>Repository</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_repository</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">Repository</code></td> </tr><tr><td>RepositoryGroup</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_repository_group</code></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">Group</code></td> </tr><tr><td>User</td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_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:</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">artifactory_access_token</code></td> <td><strong>ASSIGNED</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_user</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_account</code></td> <td><strong>HAS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_access_token</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_account</code></td> <td><strong>HAS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_group</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_account</code></td> <td><strong>HAS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_pipeline_source</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_account</code></td> <td><strong>HAS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_repository</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_account</code></td> <td><strong>HAS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_repository_group</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_account</code></td> <td><strong>HAS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_user</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_build</code></td> <td><strong>CREATED</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_artifact_codemodule</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_group</code></td> <td><strong>HAS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_user</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_permission</code></td> <td><strong>ALLOWS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_build</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_permission</code></td> <td><strong>ALLOWS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_repository</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_permission</code></td> <td><strong>ALLOWS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_repository_group</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_permission</code></td> <td><strong>ASSIGNED</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_group</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_permission</code></td> <td><strong>ASSIGNED</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_user</code></td> </tr><tr><td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_repository</code></td> <td><strong>HAS</strong></td> <td><code class="code codeInline" spellcheck="false" tabindex="0">artifactory_artifact_codemodule</code></td> </tr></tbody></table><p><br></p> </article> </main>