Welcome to pyTenable's documentation!
=====================================
.. image:: https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2Ftenable%2FpyTenable%2Fbadge&label=build
:target: https://github.com/tenable/pyTenable/actions
.. image:: https://img.shields.io/pypi/v/pytenable.svg
:target: https://pypi.org/project/pyTenable/
.. image:: https://img.shields.io/badge/python-3.7%203.8%203.9%203.10%203.11-blue
:target: https://pypi.org/project/pyTenable/
.. image:: https://img.shields.io/pypi/dm/pytenable
:target: https://github.com/tenable/pytenable
.. image:: https://img.shields.io/github/license/tenable/pyTenable.svg
:target: https://github.com/tenable/pytenable
.. image:: https://sonarcloud.io/api/project_badges/measure?project=tenable_pyTenable&metric=alert_status
:target: https://sonarcloud.io/project/overview?id=tenable_pyTenable
pyTenable is intended to be a pythonic interface into the Tenable application
APIs. Further by providing a common interface and a common structure between
all of the various applications, we can ease the transition from the vastly
different APIs between some of the products.
- Issue Tracker: https://github.com/tenable/pyTenable/issues
- Github Repository: https://github.com/tenable/pyTenable
Installation
------------
To install the most recent published version to pypi, its simply a matter of
installing via pip:
.. code-block:: bash
pip install pytenable
If you're looking for bleeding-edge, then feel free to install directly from the
github repository like so:
.. code-block:: bash
pip install git+git://github.com/tenable/pytenable.git#egg=pytenable
Getting Started
---------------
Lets assume that we want to get the list of scans that have been run on our
Tenable.io application. Performing this action is as simple as the following:
.. code-block:: python
from tenable.io import TenableIO
tio = TenableIO('TIO_ACCESS_KEY', 'TIO_SECRET_KEY')
for scan in tio.scans.list():
print('{status}: {id}/{uuid} - {name}'.format(**scan))
Getting started with Tenable.sc is equally as easy:
.. code-block:: python
from tenable.sc import TenableSC
sc = TenableSC('SECURITYCENTER_NETWORK_ADDRESS')
sc.login('SC_USERNAME', 'SC_PASSWORD')
for vuln in sc.analysis.vulns():
print('{ip}:{pluginID}:{pluginName}'.format(**vuln))
For more detailed information on whats available, please refer to the
`pyTenable Documentation <https://pytenable.readthedocs.io/>`_
Logging
-------
Enabling logging for pyTenable is a simple matter of enabling debug logs through
the python logging package. An easy example is detailed here:
.. code-block:: python
import logging
logging.basicConfig(level=logging.DEBUG)
License
-------
The project is licensed under the MIT license.
Raw data
{
"_id": null,
"home_page": null,
"name": "pyTenable",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "tenable, tenable vulnerability management, tenable security center, tenable securitycenter, tenable.io, tenable.sc, tenable.cs, tenable cloud security, tenable container security, tenable.ot, tenable ot security",
"author": "Tenable, Inc.",
"author_email": "Steve McGrath <smcgrath@tenable.com>",
"download_url": "https://files.pythonhosted.org/packages/58/72/3be1f1fe50c26761c223ff0dda21c46eca7dff433ddc5f0150cb614174c0/pytenable-1.7.2.tar.gz",
"platform": null,
"description": "Welcome to pyTenable's documentation!\n=====================================\n\n.. image:: https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2Ftenable%2FpyTenable%2Fbadge&label=build\n :target: https://github.com/tenable/pyTenable/actions\n.. image:: https://img.shields.io/pypi/v/pytenable.svg\n :target: https://pypi.org/project/pyTenable/\n.. image:: https://img.shields.io/badge/python-3.7%203.8%203.9%203.10%203.11-blue\n :target: https://pypi.org/project/pyTenable/\n.. image:: https://img.shields.io/pypi/dm/pytenable\n :target: https://github.com/tenable/pytenable\n.. image:: https://img.shields.io/github/license/tenable/pyTenable.svg\n :target: https://github.com/tenable/pytenable\n.. image:: https://sonarcloud.io/api/project_badges/measure?project=tenable_pyTenable&metric=alert_status\n :target: https://sonarcloud.io/project/overview?id=tenable_pyTenable\n\npyTenable is intended to be a pythonic interface into the Tenable application\nAPIs. Further by providing a common interface and a common structure between\nall of the various applications, we can ease the transition from the vastly\ndifferent APIs between some of the products.\n\n- Issue Tracker: https://github.com/tenable/pyTenable/issues\n- Github Repository: https://github.com/tenable/pyTenable\n\nInstallation\n------------\n\nTo install the most recent published version to pypi, its simply a matter of\ninstalling via pip:\n\n.. code-block:: bash\n\n pip install pytenable\n\nIf you're looking for bleeding-edge, then feel free to install directly from the\ngithub repository like so:\n\n.. code-block:: bash\n\n pip install git+git://github.com/tenable/pytenable.git#egg=pytenable\n\nGetting Started\n---------------\n\nLets assume that we want to get the list of scans that have been run on our\nTenable.io application. Performing this action is as simple as the following:\n\n.. code-block:: python\n\n from tenable.io import TenableIO\n tio = TenableIO('TIO_ACCESS_KEY', 'TIO_SECRET_KEY')\n for scan in tio.scans.list():\n print('{status}: {id}/{uuid} - {name}'.format(**scan))\n\nGetting started with Tenable.sc is equally as easy:\n\n.. code-block:: python\n\n from tenable.sc import TenableSC\n sc = TenableSC('SECURITYCENTER_NETWORK_ADDRESS')\n sc.login('SC_USERNAME', 'SC_PASSWORD')\n for vuln in sc.analysis.vulns():\n print('{ip}:{pluginID}:{pluginName}'.format(**vuln))\n\nFor more detailed information on whats available, please refer to the\n`pyTenable Documentation <https://pytenable.readthedocs.io/>`_\n\nLogging\n-------\n\nEnabling logging for pyTenable is a simple matter of enabling debug logs through\nthe python logging package. An easy example is detailed here:\n\n.. code-block:: python\n\n import logging\n logging.basicConfig(level=logging.DEBUG)\n\nLicense\n-------\n\nThe project is licensed under the MIT license.\n",
"bugtrack_url": null,
"license": "MIT License",
"summary": "Python library to interface into Tenable's products and applications",
"version": "1.7.2",
"project_urls": {
"Changelog": "https://github.com/tenable/pytenable/blob/master/CHANGELOG.md",
"Homepage": "https://pytenable.readthedocs.io",
"Issues": "https://github.com/tenable/pytenable/issues",
"Repository": "https://github.com/tenable/pytenable"
},
"split_keywords": [
"tenable",
" tenable vulnerability management",
" tenable security center",
" tenable securitycenter",
" tenable.io",
" tenable.sc",
" tenable.cs",
" tenable cloud security",
" tenable container security",
" tenable.ot",
" tenable ot security"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "60d969903abf5d7d77f6ae195e1440a001ed71f2aad1ff43eb17598ad4760fc4",
"md5": "371394fa7db308d477223f60c8253d57",
"sha256": "01732cc71a5d98d3626cf619ebbf8710d3a9886443b27d559fee4588c5153706"
},
"downloads": -1,
"filename": "pyTenable-1.7.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "371394fa7db308d477223f60c8253d57",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 372734,
"upload_time": "2025-02-13T19:06:51",
"upload_time_iso_8601": "2025-02-13T19:06:51.171805Z",
"url": "https://files.pythonhosted.org/packages/60/d9/69903abf5d7d77f6ae195e1440a001ed71f2aad1ff43eb17598ad4760fc4/pyTenable-1.7.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "58723be1f1fe50c26761c223ff0dda21c46eca7dff433ddc5f0150cb614174c0",
"md5": "4c61e73c4779ece89c113a70a0d03006",
"sha256": "e444c4eb9788313de8deed1451c2cfda5d937dd81568792244636e68037215ce"
},
"downloads": -1,
"filename": "pytenable-1.7.2.tar.gz",
"has_sig": false,
"md5_digest": "4c61e73c4779ece89c113a70a0d03006",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 260911,
"upload_time": "2025-02-13T19:06:52",
"upload_time_iso_8601": "2025-02-13T19:06:52.929746Z",
"url": "https://files.pythonhosted.org/packages/58/72/3be1f1fe50c26761c223ff0dda21c46eca7dff433ddc5f0150cb614174c0/pytenable-1.7.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-02-13 19:06:52",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "tenable",
"github_project": "pytenable",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"lcname": "pytenable"
}