netbox-acls


Namenetbox-acls JSON
Version 1.5.0 PyPI version JSON
download
home_pagehttps://github.com/ryanmerolle/netbox-acls
SummaryA NetBox plugin for Access List management
upload_time2024-03-27 14:24:04
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseApache 2.0
keywords netbox netbox-plugin
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # NetBox Access Lists Plugin

A [Netbox](https://github.com/netbox-community/netbox) plugin for Access List management.

## Features

This plugin provides the following models:

- Access Lists
- Access List to Interface Assignment
- Access List Rules (abstract model basis for other rules)
- Access List Standard Rules
- Access List Extended Rules

## Origin

Based on the NetBox plugin tutorial by [jeremystretch](https://github.com/jeremystretch):

- [demo repository](https://github.com/netbox-community/netbox-plugin-demo)
- [tutorial](https://github.com/netbox-community/netbox-plugin-tutorial)

All credit should go to Jeremy. Thanks, Jeremy!

This project just looks to build on top of this framework and model presented.

## Contributing

This project is currently maintained jointly by:

- [Abhimanyu Saharan](https://github.com/abhi1693)
- [Ryan Merolle](https://github.com/ryanmerolle)

See the [CONTRIBUTING](CONTRIBUTING.md) for more information.

## Compatibility

Each Plugin Version listed below has been tested with its corresponding NetBox Version.

| NetBox Version | Plugin Version |
|:--------------:|:--------------:|
|      3.7       |     1.5.0      |
|      3.6       |     1.4.0      |
|      3.5       |     1.3.0      |
|      3.4       |     1.2.2      |
|      3.3       |     1.1.0      |
|      3.2       |     1.0.1      |

## Installing

For adding to a NetBox Docker setup see
[the general instructions for using netbox-docker with plugins](https://github.com/netbox-community/netbox-docker/wiki/Using-Netbox-Plugins).

You can install with pip:

```bash
pip install netbox-acls
```

or by adding to your `local_requirements.txt` or `plugin_requirements.txt` (netbox-docker):

```bash
netbox-acls
```

## Configuration

Enable the plugin in `/opt/netbox/netbox/netbox/configuration.py`,
 or if you use netbox-docker, your `/configuration/plugins.py` file :

```python
PLUGINS = [
    "netbox_acls"
]

PLUGINS_CONFIG = {
    "netbox_acls": {
        "top_level_menu": True # If set to True the plugin will add a top level menu item for the plugin. If set to False the plugin will add a menu item under the Plugins menu item.  Default is set to True.
    },
}
```

## Developing

### VSCode + Docker + Dev Containers

To develop this plugin further one can use the included .devcontainer configuration. This configuration creates a docker container which includes a fully working netbox installation. Currently it should work when using WSL 2. For this to work make sure you have Docker Desktop installed and the WSL 2 integrations activated.

1. In the WSL terminal, enter `code` to run Visual studio code.
2. Install the devcontainer extension "ms-vscode-remote.remote-containers"
3. Press Ctrl+Shift+P and use the "Dev Container: Clone Repository in Container Volume" function to clone this repository. This will take a while depending on your computer
4. If you'd like the netbox instance to be prepopulated with example data from [netbox-initializers](https://github.com/tobiasge/netbox-initializers) run `make  initializers`
5. Start the netbox instance using `make all`

Your netbox instance will be served under 0.0.0.0:8000, so it should now be available under localhost:8000.

## Screenshots

Access List - List View
![Access List - List View](https://raw.githubusercontent.com/ryanmerolle/netbox-acls/release/docs/img/access_lists.png)

Access List (Type Extended) - Individual View
![Access List Type Extended - Individual View](https://raw.githubusercontent.com/ryanmerolle/netbox-acls/release/docs/img/access_list_type_extended.png)

Access List (Type Standard) - Individual View
![Access List Type Standard - Individual View](https://raw.githubusercontent.com/ryanmerolle/netbox-acls/release/docs/img/access_list_type_standard.png)

Extended Access List Rules - List View
![Extended Access List Rules - List View](https://raw.githubusercontent.com/ryanmerolle/netbox-acls/release/docs/img/acl_extended_rules.png)

Standard Access List Rules - List View
![Standard Access List Rules - List View](https://raw.githubusercontent.com/ryanmerolle/netbox-acls/release/docs/img/acl_standard_rules.png)

Access List Interface Assignments- List View
![Access List Interface Assignments- List View](https://raw.githubusercontent.com/ryanmerolle/netbox-acls/release/docs/img/acl_interface_assignments.png)

Host (device, virtual_chassis, virtual_machine) Access Lists - New Card
![Host Access Lists - New Card](https://raw.githubusercontent.com/ryanmerolle/netbox-acls/release/docs/img/acl_host_view.png)

Host Interface (vminterface interface) Access Lists - New Card
![Host Interface Access Lists - New Card](https://raw.githubusercontent.com/ryanmerolle/netbox-acls/release/docs/img/access_list_type_standard.png)

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/ryanmerolle/netbox-acls",
    "name": "netbox-acls",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "netbox, netbox-plugin",
    "author": null,
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/45/1c/21cf4f21e09343c8faefd6a234daa76440f639d97d0a782ba9fd9e1675cf/netbox-acls-1.5.0.tar.gz",
    "platform": null,
    "description": "# NetBox Access Lists Plugin\n\nA [Netbox](https://github.com/netbox-community/netbox) plugin for Access List management.\n\n## Features\n\nThis plugin provides the following models:\n\n- Access Lists\n- Access List to Interface Assignment\n- Access List Rules (abstract model basis for other rules)\n- Access List Standard Rules\n- Access List Extended Rules\n\n## Origin\n\nBased on the NetBox plugin tutorial by [jeremystretch](https://github.com/jeremystretch):\n\n- [demo repository](https://github.com/netbox-community/netbox-plugin-demo)\n- [tutorial](https://github.com/netbox-community/netbox-plugin-tutorial)\n\nAll credit should go to Jeremy. Thanks, Jeremy!\n\nThis project just looks to build on top of this framework and model presented.\n\n## Contributing\n\nThis project is currently maintained jointly by:\n\n- [Abhimanyu Saharan](https://github.com/abhi1693)\n- [Ryan Merolle](https://github.com/ryanmerolle)\n\nSee the [CONTRIBUTING](CONTRIBUTING.md) for more information.\n\n## Compatibility\n\nEach Plugin Version listed below has been tested with its corresponding NetBox Version.\n\n| NetBox Version | Plugin Version |\n|:--------------:|:--------------:|\n|      3.7       |     1.5.0      |\n|      3.6       |     1.4.0      |\n|      3.5       |     1.3.0      |\n|      3.4       |     1.2.2      |\n|      3.3       |     1.1.0      |\n|      3.2       |     1.0.1      |\n\n## Installing\n\nFor adding to a NetBox Docker setup see\n[the general instructions for using netbox-docker with plugins](https://github.com/netbox-community/netbox-docker/wiki/Using-Netbox-Plugins).\n\nYou can install with pip:\n\n```bash\npip install netbox-acls\n```\n\nor by adding to your `local_requirements.txt` or `plugin_requirements.txt` (netbox-docker):\n\n```bash\nnetbox-acls\n```\n\n## Configuration\n\nEnable the plugin in `/opt/netbox/netbox/netbox/configuration.py`,\n or if you use netbox-docker, your `/configuration/plugins.py` file :\n\n```python\nPLUGINS = [\n    \"netbox_acls\"\n]\n\nPLUGINS_CONFIG = {\n    \"netbox_acls\": {\n        \"top_level_menu\": True # If set to True the plugin will add a top level menu item for the plugin. If set to False the plugin will add a menu item under the Plugins menu item.  Default is set to True.\n    },\n}\n```\n\n## Developing\n\n### VSCode + Docker + Dev Containers\n\nTo develop this plugin further one can use the included .devcontainer configuration. This configuration creates a docker container which includes a fully working netbox installation. Currently it should work when using WSL 2. For this to work make sure you have Docker Desktop installed and the WSL 2 integrations activated.\n\n1. In the WSL terminal, enter `code` to run Visual studio code.\n2. Install the devcontainer extension \"ms-vscode-remote.remote-containers\"\n3. Press Ctrl+Shift+P and use the \"Dev Container: Clone Repository in Container Volume\" function to clone this repository. This will take a while depending on your computer\n4. If you'd like the netbox instance to be prepopulated with example data from [netbox-initializers](https://github.com/tobiasge/netbox-initializers) run `make  initializers`\n5. Start the netbox instance using `make all`\n\nYour netbox instance will be served under 0.0.0.0:8000, so it should now be available under localhost:8000.\n\n## Screenshots\n\nAccess List - List View\n![Access List - List View](https://raw.githubusercontent.com/ryanmerolle/netbox-acls/release/docs/img/access_lists.png)\n\nAccess List (Type Extended) - Individual View\n![Access List Type Extended - Individual View](https://raw.githubusercontent.com/ryanmerolle/netbox-acls/release/docs/img/access_list_type_extended.png)\n\nAccess List (Type Standard) - Individual View\n![Access List Type Standard - Individual View](https://raw.githubusercontent.com/ryanmerolle/netbox-acls/release/docs/img/access_list_type_standard.png)\n\nExtended Access List Rules - List View\n![Extended Access List Rules - List View](https://raw.githubusercontent.com/ryanmerolle/netbox-acls/release/docs/img/acl_extended_rules.png)\n\nStandard Access List Rules - List View\n![Standard Access List Rules - List View](https://raw.githubusercontent.com/ryanmerolle/netbox-acls/release/docs/img/acl_standard_rules.png)\n\nAccess List Interface Assignments- List View\n![Access List Interface Assignments- List View](https://raw.githubusercontent.com/ryanmerolle/netbox-acls/release/docs/img/acl_interface_assignments.png)\n\nHost (device, virtual_chassis, virtual_machine) Access Lists - New Card\n![Host Access Lists - New Card](https://raw.githubusercontent.com/ryanmerolle/netbox-acls/release/docs/img/acl_host_view.png)\n\nHost Interface (vminterface interface) Access Lists - New Card\n![Host Interface Access Lists - New Card](https://raw.githubusercontent.com/ryanmerolle/netbox-acls/release/docs/img/access_list_type_standard.png)\n",
    "bugtrack_url": null,
    "license": "Apache 2.0",
    "summary": "A NetBox plugin for Access List management",
    "version": "1.5.0",
    "project_urls": {
        "Homepage": "https://github.com/ryanmerolle/netbox-acls",
        "Issues": "https://github.com/ryanmerolle/netbox-acls/issues",
        "Source": "https://github.com/ryanmerolle/netbox-acls"
    },
    "split_keywords": [
        "netbox",
        " netbox-plugin"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "638a9977f8c371fc5a66da0f95890e50daa33ad2650c7df5e470fb49ec3e69e2",
                "md5": "160ace696f1669418e168de236663469",
                "sha256": "d4c48a5e15f86908c26849c314b2a41446b961245671871580eb1f19890a1c8f"
            },
            "downloads": -1,
            "filename": "netbox_acls-1.5.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "160ace696f1669418e168de236663469",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 40569,
            "upload_time": "2024-03-27T14:24:02",
            "upload_time_iso_8601": "2024-03-27T14:24:02.851549Z",
            "url": "https://files.pythonhosted.org/packages/63/8a/9977f8c371fc5a66da0f95890e50daa33ad2650c7df5e470fb49ec3e69e2/netbox_acls-1.5.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "451c21cf4f21e09343c8faefd6a234daa76440f639d97d0a782ba9fd9e1675cf",
                "md5": "d7966f7d86a8d21173ccc23399b3a349",
                "sha256": "889e838c01272bfb7799472d519f110b59692e8be14496e1b84908c2632daff5"
            },
            "downloads": -1,
            "filename": "netbox-acls-1.5.0.tar.gz",
            "has_sig": false,
            "md5_digest": "d7966f7d86a8d21173ccc23399b3a349",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 29895,
            "upload_time": "2024-03-27T14:24:04",
            "upload_time_iso_8601": "2024-03-27T14:24:04.160065Z",
            "url": "https://files.pythonhosted.org/packages/45/1c/21cf4f21e09343c8faefd6a234daa76440f639d97d0a782ba9fd9e1675cf/netbox-acls-1.5.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-03-27 14:24:04",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "ryanmerolle",
    "github_project": "netbox-acls",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "netbox-acls"
}
        
Elapsed time: 0.21287s