Skip to main content

Enhance your secret management with encrypted storage and flexible, user-friendly features.

Project description

Netbox Secrets

This is the continuation of the NetBox Secretstore app. The original plugin is minimally maintained and has a lot of issues. This plugin is a complete rewrite of the original plugin. It is more generic and flexible than the original plugin. It is also regularly tested with the latest NetBox releases to ensure compatibility and stability.

Features

  • Store secrets in the database encrypted with a public key (RSA)
  • More generic and flexible than the original plugin (e.g. secrets can be assigned to any object in NetBox)
  • Secrets can be assigned to contacts to associate them with a secret (e.g. SSH key)
  • Updated user interface to make it easier to use and more intuitive to navigate
  • Regularly tested with the latest NetBox releases to ensure compatibility and stability

Compatibility

NetBox Version Plugin Version
3.3.x 1.4.x, 1.5.x
3.4.x 1.6.x, 1.7.x
3.5.x 1.8.x
3.6.x 1.9.x
3.7.x 1.10.x
4.0.x 2.0.x
4.1.x 2.1.x

Installation

  • Install NetBox as per NetBox documentation
  • Add to local_requirements.txt:
    • netbox-secrets
  • Install requirements: ./venv/bin/pip install -r local_requirements.txt
  • Add to PLUGINS in NetBox configuration:
    • 'netbox_secrets',
  • Run migration: ./venv/bin/python netbox/manage.py migrate
  • Run collectstatic: ./venv/bin/python netbox/manage.py collectstatic --no-input

You can view releases at: https://github.com/Onemind-Services-LLC/netbox-secrets/releases

Configuration

The following options are available in the configuration file:

  • apps
    • Type: List
    • Description: List of apps to enable
    • Default: ['dcim.device', 'virtualization.virtualmachine']
  • display_default
    • Type: String
    • Description: Where to display the secret on the detail page of the defined apps
    • Default: left_page
    • Options: left_page, right_page, full_width_page, tab_view
  • display_setting
    • Type: Dict
    • Description: Set display setting for concrete model
    • Default: {}
    • Options: {'app.model': 'display_default'}
    • Example: {'dcim.device': 'full_width_page', 'virtualization.virtualmachine': 'right_page'}
  • enable_contacts
    • Type: Boolean
    • Description: Enable contacts for secret
    • Default: False
  • public_key_size
    • Type: Integer
    • Description: Size of the public key
    • Default: 2048
    • Options: 2048, 4096, 8192
  • top_level_menu
    • Type: Boolean
    • Description: Enable top level menu
    • Default: False

Extra Configuration

The following options are inherited from NetBox to configure the cookies:

Note: These options should be set in the NetBox configuration file.

Screenshots

User key (Without Session)

user-key.png

User key (With Session)

user-key-session.png

Secret Object View

secret.png

Secret Panel on Device

secret-panel.png

Secret Role Object View

role.png

FAQ

  1. How can I migrate the data from netbox-secretstore?

Note: This is a one-way migration. You can't migrate back to netbox-secretstore. Ensure you do not have any data including tables for netbox-secrets already in the database

These instructions assume that you are running Netbox v3.4.x and the plugin version 1.7.x. Install a new version of netbox_secretstore as:

pip install git+https://github.com/Onemind-Services-LLC/netbox-secretstore@migration/nb34

Note: You should have netbox-secretstore v1.4.4 installed now.

Make sure to add both plugins to the configuration.py before the migration.

Run the migration:

python manage.py migrate

Finally, readjust the indices for the netbox-secrets plugin

python manage.py sqlsequencereset netbox_secrets

Run the output of the previous command in the database.

You can now remove netbox-secretstore from the application. You may have clean up your database of the old tables manually.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

netbox_secrets-2.1.2.tar.gz (57.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

netbox_secrets-2.1.2-py3-none-any.whl (73.8 kB view details)

Uploaded Python 3

File details

Details for the file netbox_secrets-2.1.2.tar.gz.

File metadata

  • Download URL: netbox_secrets-2.1.2.tar.gz
  • Upload date:
  • Size: 57.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.21

File hashes

Hashes for netbox_secrets-2.1.2.tar.gz
Algorithm Hash digest
SHA256 4e486ee293c046141ee91828fba4b7b1a0ea210321fde7ddc72d61029b3b37e5
MD5 eb33a6436b514fe18503faebd3ddc17d
BLAKE2b-256 a3511728ac01db6f3c8b70532e42bcb42c7e8c79ceaa66c22cf1658c94a4c12f

See more details on using hashes here.

File details

Details for the file netbox_secrets-2.1.2-py3-none-any.whl.

File metadata

  • Download URL: netbox_secrets-2.1.2-py3-none-any.whl
  • Upload date:
  • Size: 73.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.21

File hashes

Hashes for netbox_secrets-2.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2d306be40216b9071a99782ad77025b97c334b2cbaad87f370277ec7556ccbf5
MD5 4031f72cf031861079a1c8f0919bfa2a
BLAKE2b-256 0e138f796be9a9c7cf03fa8df036e19bde6cb4f8fd7131489fdbcd2b94e91919

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page