Unified Firewall Abstraction laYer for Automation
Project description
UFAYA
Unified Firewall Abstraction laYer for Automation
UFAYA is a Python SDK that provides a single, consistent interface for interacting with firewalls from multiple vendors. Instead of writing separate automation scripts for each firewall platform, UFAYA exposes a unified abstraction layer that normalizes firewall operations across different systems.
The design follows the same architectural principle used by tools like NAPALM, which provide a unified API to interact with devices from different vendors through an abstraction layer.
Supported Vendors
| Vendor | Driver | Status |
|---|---|---|
| Juniper SRX | juniper_srx |
Read-only ingestion + context-grouped JSON export with live policy hit counts |
| Palo Alto | paloalto |
Skeleton |
| Fortinet | fortinet |
Skeleton |
| Cisco | cisco |
Skeleton |
Juniper SRX JSON export
JuniperSRXDriver.export_rules_json(output_dir, mode=...) writes a context-grouped JSON document for parsed security policies.
- Export modes remain
minimal,enriched, anddebug. - Export payloads now use
schema_version: 3. - Each exported rule includes a canonical
hit_countfield. - In live mode, UFAYA fetches
show security policies hit-count | display xml | no-moreand populateshit_countwhen that operational snapshot is available. - In file mode, or when the live hit-count snapshot cannot be collected, rules still include
hit_count: null. - Live exports that successfully collect hit counts also include a top-level
hit_counts_collected_atUTC timestamp. - Hit-count parser maintenance notes live in JUNIPER_HIT_COUNTS.md.
Installation
pip install ufaya
Contributing
See CONTRIBUTING.md for guidelines.
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ufaya-0.5.1.tar.gz.
File metadata
- Download URL: ufaya-0.5.1.tar.gz
- Upload date:
- Size: 34.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2c8f9cfa63b8bb2eaa9c1b588a4dd3f2d919c224d3297a21ae93dd2f8bd2acb4
|
|
| MD5 |
b10035deea4eca8156240c997a288ef9
|
|
| BLAKE2b-256 |
23dc7c384aa3da070aa2e1474e5cc674b15530bc75ad15059b63c4a6bae0888f
|
Provenance
The following attestation bundles were made for ufaya-0.5.1.tar.gz:
Publisher:
publish.yml on A-Khanafer/ufaya
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ufaya-0.5.1.tar.gz -
Subject digest:
2c8f9cfa63b8bb2eaa9c1b588a4dd3f2d919c224d3297a21ae93dd2f8bd2acb4 - Sigstore transparency entry: 1206215252
- Sigstore integration time:
-
Permalink:
A-Khanafer/ufaya@3db349cb97c8862f9d23290610950cf68e5b47fb -
Branch / Tag:
refs/tags/v0.5.1 - Owner: https://github.com/A-Khanafer
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@3db349cb97c8862f9d23290610950cf68e5b47fb -
Trigger Event:
push
-
Statement type:
File details
Details for the file ufaya-0.5.1-py3-none-any.whl.
File metadata
- Download URL: ufaya-0.5.1-py3-none-any.whl
- Upload date:
- Size: 21.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6bb628793dd945ccb8b953de5f5d6617cb3bc5fea8352117b48ad22d4acb26f3
|
|
| MD5 |
19d3ffd644a4c95f997249b9ec2c69f1
|
|
| BLAKE2b-256 |
59ab9906cb25b821cb00f49a8e7edf499d5afbdab3052f5daa199da47f5fe89c
|
Provenance
The following attestation bundles were made for ufaya-0.5.1-py3-none-any.whl:
Publisher:
publish.yml on A-Khanafer/ufaya
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ufaya-0.5.1-py3-none-any.whl -
Subject digest:
6bb628793dd945ccb8b953de5f5d6617cb3bc5fea8352117b48ad22d4acb26f3 - Sigstore transparency entry: 1206215286
- Sigstore integration time:
-
Permalink:
A-Khanafer/ufaya@3db349cb97c8862f9d23290610950cf68e5b47fb -
Branch / Tag:
refs/tags/v0.5.1 - Owner: https://github.com/A-Khanafer
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@3db349cb97c8862f9d23290610950cf68e5b47fb -
Trigger Event:
push
-
Statement type: