{"id":46006597,"url":"https://github.com/valkiriaaquatica/valkiriaaquatica.tenable","last_synced_at":"2026-02-28T23:10:52.865Z","repository":{"id":247854325,"uuid":"823722939","full_name":"valkiriaaquatica/valkiriaaquatica.tenable","owner":"valkiriaaquatica","description":"Ansible Collection to interact with Public Tenable API Nessus Agent, download, link operations and more","archived":false,"fork":false,"pushed_at":"2025-07-22T16:35:18.000Z","size":317,"stargazers_count":8,"open_issues_count":1,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-07-22T18:14:50.927Z","etag":null,"topics":["ansible","configurationascode","nessus","nessus-scanner","tenable"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/valkiriaaquatica.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-07-03T15:21:00.000Z","updated_at":"2025-07-22T16:32:13.000Z","dependencies_parsed_at":"2025-07-22T18:18:55.835Z","dependency_job_id":null,"html_url":"https://github.com/valkiriaaquatica/valkiriaaquatica.tenable","commit_stats":null,"previous_names":["valkiriaaquatica/valkiriaaquatica.tenable"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/valkiriaaquatica/valkiriaaquatica.tenable","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/valkiriaaquatica%2Fvalkiriaaquatica.tenable","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/valkiriaaquatica%2Fvalkiriaaquatica.tenable/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/valkiriaaquatica%2Fvalkiriaaquatica.tenable/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/valkiriaaquatica%2Fvalkiriaaquatica.tenable/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/valkiriaaquatica","download_url":"https://codeload.github.com/valkiriaaquatica/valkiriaaquatica.tenable/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/valkiriaaquatica%2Fvalkiriaaquatica.tenable/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29954583,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-28T22:53:01.873Z","status":"ssl_error","status_checked_at":"2026-02-28T22:52:50.699Z","response_time":90,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible","configurationascode","nessus","nessus-scanner","tenable"],"created_at":"2026-02-28T23:10:52.379Z","updated_at":"2026-02-28T23:10:52.845Z","avatar_url":"https://github.com/valkiriaaquatica.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# First of All :)\n- This is not developed from a Tenable or RedHat employee, just someone who in his daily work found the necessity to develop it to improve his daily tasks in system administration, devops and security and his teams work also.\n- The collection is made to interact with public Tenable cloud following the endpoint: https://cloud.tenable.com  and the API documentation https://developer.tenable.com/reference/navigate . This collection is NOT made to interact with self hosted Tenable instances, just with Public Tenable API (for the moment).\n- This collection is very usefull for applying quick responses to vulnerbailities, applied devops metodology quickly with secure pipelines and administrate machines that have nessus agent installed.\n- That's why maybe you found errors or not \"common standard Ansible\" ideas, but I tried to follow them :).\n- Writing documentation is not my best sorry.\n- Testing has been made in Jenkins  and in GitHub actions, so if someone wants to help developing Jenkins shared libraries to  include in pipelines I will be happy.\n\n# Ansible collection for Tenable Nessus Agent on Public Tenable Cloud (not self hosted Tenable instances)\n[![Doc](https://img.shields.io/badge/docs-latest-brightgreen.svg)](https://docs.ansible.com/ansible/latest/collections/azure/azcollection/index.html)\n[![Code of conduct](https://img.shields.io/badge/code%20of%20conduct-Ansible-silver.svg)](https://docs.ansible.com/ansible/latest/community/code_of_conduct.html)\n[![License](https://img.shields.io/badge/license-GPL%20v3.0-brightgreen.svg)](LICENSE)\n\nThis collection provides a series of Ansible modules and plugins for interact with the Tenable Public Nessus Agent API. This collection is NOT made for self hosted Tenable instances\n\nhttps://developer.tenable.com/reference/navigate and installation and linking modules.\n\nDocumentation of individual modules is yet not available as ansible-galaxy official collection.\n\n## Installation\n\nIt is recommended to run ansible in [Virtualenv](https://virtualenv.pypa.io/en/latest/).\n\nTo install it from Ansible-Galaxy. First Way.\n```bash\nansible-galaxy collection install valkiriaaquatica.tenable\n```\n\nInstall dependencies required by the collection (adjust path to collection if necessary):\n\n```bash\npip3 install -r ~/.ansible/collections/ansible_collections/valkiriaaquatica/tenable/requirements.txt\n```\n\nTo install it from source code of this GitHub repository. Second way.\n\n```bash\nhttps://github.com/valkiriaaquatica/valkiriaaquatica.tenable_dev.git\n```\nThen on the root directory of the collection.\n```bash\nansible-galaxy collection build\n```\nThen after the valkiriaaquatica.tenable-{version}.tar.gz is created install it.\n```bash\nansible-galaxy collection install valkiriaaquatica.tenable-{version}.tar.gz\n```\n\n## Requirements\n\n- ansible version \u003e= 2.14\n- Install python dependancies of the requirements.txt file.\n\n\n### Playbooks\n\nTo use a module from Tenable collection, please reference the full namespace, collection name, and modules name that you want to use:\n\n```yaml\n---\n- name: Using Tenable collection\n  hosts: localhost\n  tasks:\n    - valkiriaaquatica.tenable.list_assets:\n        access_key: \"your_access_key\"\n        secret_key: \"your_secret_key\"\n        filters:\n          - type: network_id\n            operator: eq\n            value: \"123456789\"\n```\n\n\n### Roles\n\nFor existing Ansible roles, please also reference the full namespace, collection name, and modules name which used in tasks instead of just modules name.\n\n### Plugins like Inventory\n\nTo use a plugin from Tenable collection, please reference the full namespace, collection name, and plugins name that you want to use:\n\n```yaml\n---\nplugin: valkiriaaquatica.tenable.tenable\nfull_info: true\ninclude_filters:\n  - type: \"tag.Cloud Provider\"\n    operator: set-has\n    value: \"Google Cloud\"\ncompose:\n  asset_id_host: \"'asset' + id\"\n  hash_id: id | md5\n```\n\n### Event Driven - Ansible Rulebooks\n\nFetch data from an event source like Tenable Public API can be made using the plugin eventstenable\nthat can be found in /plugins/event_source/eventstenable.py\nAn easy example is:\n\n```yaml\n---\n- name: Retrieve critical vullnerabilities from Tenable API every 30 minutes\n  hosts: localhost\n  sources:\n    - valkiriaaquatica.tenable.eventstenable:\n        endpoint: \"workbenches/vulnerabilities?filter.0.filter=severity\u0026filter.0.quality=eq\u0026filter.0.value=Critical\"\n        data_key: \"vulnerabilities\"\n        interval: 30\n\n  rules:\n    - name: Run ansible hello default EDA playbook if critical vulnerbaility comes from 12345 plugin\n      condition: event.tenable.plugin_id == \"12345\"\n      action:\n        run_playbook:\n          name: ansible.eda.hello\n```\n\n## Contributing\n\nThere are many ways in which you can participate in the project, for example:\n\n- Submit bugs and feature requests, improvements or issues.\n- Review source code changes.\n- Review the documentation and make pull requests for anything from typos to new content\n- If you are interested in fixing issues and contributing directly to the code base, please see the [CONTRIBUTING](CONTRIBUTING.md) document\n- Check \"Blessed Contributions on Pending Developments\" in the file [CONTRIBUTING](CONTRIBUTING.md) to see ideas to help dn develop\n- As it was commented on issue: https://github.com/valkiriaaquatica/valkiriaaquatica.tenable/issues/2 the development of modules to interact with self hosted Tenable instances would be really nice to include.\n\n## License\n\nGNU General Public License v3.0\n\nSee [LICENSE](LICENSE) to see the full text.\n\n\n\n# Just for own development issues\nansible-test integration --exclude add_agent_to_group --exclude create_report --exclude get_agent_details  --exclude get_asset_activity_log   --exclude get_asset_information  --exclude get_asset_vulnerability_details  --exclude get_report_status   --exclude list_agents_by_group  --exclude list_asset_vulnerabilities  --exclude list_asset_vulnerabilities_for_plugin  --exclude list_tags_for_an_asset  --exclude rename_agent  --exclude update_agent_group_name  --exclude upload_file  --exclude get_scanner_details --exclude launch_scan --exclude list_agents --exclude stop_scan --exclude update_scan --exclude add_or_remove_asset_tags --exclude get_asset_details --exclude create_network --exclude delete_network  --exclude get_network_details --exclude list_networks  --exclude update_network --exclude list_assignable_scanners  --exclude move_assets  --docker -v \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvalkiriaaquatica%2Fvalkiriaaquatica.tenable","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvalkiriaaquatica%2Fvalkiriaaquatica.tenable","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvalkiriaaquatica%2Fvalkiriaaquatica.tenable/lists"}