Skip to main content
Configure Endor Labs to integrate with private Conan registries to access proprietary C/C++ dependencies during security scanning and analysis. When your Conan projects depend on packages hosted in private or corporate registries, Endor Labs requires authentication credentials to resolve these dependencies and generate a complete bill of materials. Endor Labs supports the following private Conan registry providers:
  • JFrog Artifactory
  • AWS CodeArtifact
  • Self-hosted Conan servers
This integration enables Endor Labs to:
  • Access private Conan packages during dependency resolution
  • Generate comprehensive security analysis including private dependencies
  • Maintain complete visibility into your software supply chain
Endor Labs generally respects package authentication and configuration settings and a package manager integration is usually not required to scan private packages successfully.
  • Use package manager integrations to simplify scanning when authentication to private repositories is not part of standard manifest or settings files.
  • Package manager integrations allow you to set custom repositories for each package ecosystem and the priority of each repository for scanning.
To set up a package manager integration:
  1. Select User menu > Integrations from the left sidebar.
  2. Select Add next to the package manager configuration you want to add.
  3. Select Add Package Manager.
  4. Enter a Name for the integration.
  5. Choose an authentication type and complete the required fields.
  1. Optionally, under Advanced, select Propagate this package manager to all child namespaces to share this integration with child namespaces.
  2. Click Add Package Manager.

Test package manager integration

You can test the connection to a configured package manager to verify that Endor Labs can reach the repository. To test the connection:
  1. Select User menu > Integrations from the left sidebar.
  2. Click Manage in the package manager configuration you want to customize.
  3. Click the vertical three dots of the package manager configured and select Test Connection.
The integration does not perform authentication or authorization checks on the package manager repository.

Edit package manager integration

You can edit an existing package manager integration to update the name, repository URL, or authentication credentials. To edit a package manager integration:
  1. Select User menu > Integrations from the left sidebar.
  2. Click Manage next to the package manager you want to edit.
  3. Click the vertical three dots on the configured integration you want to edit and select Edit.
  4. You can modify the name, package manager URL, and credentials.
  5. Click Save Changes.

Configure a private Conan registry using API

Use endorctl to create a PackageManager resource for your private Conan registry. Endor Labs supports two authentication methods: basic authentication and AWS CodeArtifact.

Basic authentication

Use basic authentication to connect to JFrog Artifactory or a self-hosted Conan server. Replace the following placeholders before running the command:
  • <namespace> with your Endor Labs namespace
  • <registry-url> with the URL of your Conan registry (for example, https://your-artifactory.example.com/artifactory/api/conan/conan-local)
  • <remote-name> with a logical name for this registry (for example, artifactory)
  • <username> with your registry username
  • <password-or-token> with your registry password or API token

AWS CodeArtifact authentication

Use AWS CodeArtifact authentication to connect to a Conan repository hosted in AWS CodeArtifact. Endor Labs assumes the specified IAM role to obtain short-lived credentials before each scan. Before configuring this integration, create an IAM role with the required trust policy. See Configure package manager integrations with AWS for instructions. Replace the following placeholders before running the command:
  • <namespace> with your Endor Labs namespace
  • <registry-url> with your AWS CodeArtifact endpoint URL (for example, https://<domain>-<account-id>.d.codeartifact.<region>.amazonaws.com/conan/<repository>/)
  • <remote-name> with a logical name for this registry
  • <domain> with your AWS CodeArtifact domain name
  • <account-id> with your AWS account ID
  • <repository> with your AWS CodeArtifact repository name
  • <region> with the AWS region hosting your CodeArtifact repository
  • <role-arn> with the ARN of the IAM role Endor Labs should assume
  • <audience> with the allowed audience value configured in your trust policy

Fetch package manager using API

Run the following command to fetch the package manager using the UUID.

Delete package manager using API

Run the following command to delete the package manager using the UUID.