Skip to main content
Applies to BloodHound Enterprise and CE

Prerequisites

Before you begin, ensure that the following prerequisites are met:
PrerequisiteDescription
Ensure graph database is PostgreSQLFor best performance, BloodHound requires PostgreSQL as the graph database rather than Neo4j
Configure and run the collectorCollects data from your JAMF Pro tenant and generates JSON files for upload to BloodHound

Register the Extension (BloodHound Enterprise Only)

The BloodHound extension feature is currently available in preview exclusively for BloodHound Enterprise customers. To get started, contact your account team. The JamfHound extension includes a schema that tells BloodHound how to model and analyze data from your JAMF Pro tenant. You must register the extension before you upload data generated by the JamfHound collector. On the OpenGraph Management page, upload the JamfHound schema file (bhe-jamfhound-extension.json).

Register Custom Node Icons (Community Edition Only)

Skip this step if you already uploaded an extension schema, as the schema registers the node icons automatically. If you haven’t registered an extension schema, register the JamfHound custom node types using the create_jamf_icons.py script.

Upload Data to BloodHound

After you complete the prerequisites and register the extension or node icons, upload the data collected by JamfHound to BloodHound. Upload the generated Collection_xx_xx/JAMFcollection.json file from the output directory to BloodHound.

Import Cypher Queries

JamfHound provides custom Cypher queries to help you identify attack paths and misconfigurations in your JAMF Pro tenant. These queries are included in the custom-queries directory of the JamfHound extension. To use these queries, you must first import the custom-queries/*.json files into BloodHound. You can then run the queries on the Explore page.
Cypher queries that reference node or edge kinds not present in the database will fail without the extension schema (for example: failed to translate kinds: unable to map kinds: Okta_ApiServiceIntegration). Community Edition users can work around this by removing the unrecognized node and edge kinds from the queries until the extension schema becomes available for BloodHound Community Edition.
JamfHound also provides specialized queries in a separate PrivilegeZoneRules directory for creating or updating Cypher-based Privilege Zone rules.

Next Steps