Python library for Airlock product REST APIs
Project description
| GitHub | PyPI |
|---|---|
pyAirlock
Airlock, a subsidiary of Ergon Informatik, provides security products to protect web applications and APIs against all sorts of attacks.
- Airlock Gateway Airlock Gateway is a web application firewall (WAF) and protects mission-critical, web-based applications and APIs from attacks and undesired visitors. As a central security instance, it examines every HTTP(S) request for attacks and thus blocks any attempt at data theft and manipulation.
- Airlock Microgateway Airlock Microgateway protects APIs and microservices from attacks and unauthorized access while they are running. Being specifically designed for use in Kubernetes environments, it is placed close to the protected services.
- Airlock IAM Airlock IAM is a customer identity and access management (cIAM) solution guaranteeing absolutely secure and efficient access procedures for web applications. offers centralised identity management and organisation of access permissions, for applications and APIs, alike. Integrated applications can be bundled as a single sign-on (SSO) group.
Airlock Gateway and Airlock IAM, being stand-alone, centrally installed services, both provide REST APIs to integrate third-party or customer-specific tools. These APIs are all documented here.
pyAirlock is a Python library wrapping these REST APIs and allowing system administrators easier access.
- Gateway
- configuration REST API, providing access to configuration objects, virtual hosts, mappings etc.
- IAM (not implemented yet)
- Loginapp flows for authentication, registration and self-services
- Transaction approval flows
- Adminapp for user and token management
- Common
- Shared library functions such as reading config files, logging etc.
Airlock Microgateway, by the way, is tightly integrated with Kubernetes. Configuration, for example, is specified through custom resource definitions, expressed as YAML manifests. They are created and maintained using the standard Kubernetes APIs.
Getting started
Installation
pip install pyAirlock
Create API documentation
pip install pdoc3
pdoc --html src/pyAirlock
Read documentation by opening html/index.html in your browser of choice.
Usage
from pyAirlock import gateway
from pyAirlock.common import config
cfg = config.Config( "src/samples/config.yaml" )
cfg.load()
server = cfg.get( 'servers.test' )[0]
gw = gateway.Session( cfg.get( 'hostname', base=server ), cfg.get( 'apikey', base=server ))
gw.setTLSVerify( False )
gw.connect()
gw.get( "/configuration/configurations" ).json()
Getting support
This library is not part of the official Airlock product delivery. Airlock support will be unable to accept or answer tickets.
If you encounter an error, the author welcomes pull requests with fixes. Alternatively, an issue may be created on the GitHub issue tracker. Please note that there is no guaranteed response time and any support is best effort.
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 pyairlock-1.0.1.tar.gz.
File metadata
- Download URL: pyairlock-1.0.1.tar.gz
- Upload date:
- Size: 27.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
112972c0edeb080572a092e8903d8c7df66471cc68a04a123b59323bf16f4905
|
|
| MD5 |
6d681260e62bf14ea0b837bc23116aa2
|
|
| BLAKE2b-256 |
95b0d8f5ed76924db1832b16098a786e22c629647d95b4a9a908bef4f169910f
|
File details
Details for the file pyAirlock-1.0.1-py3-none-any.whl.
File metadata
- Download URL: pyAirlock-1.0.1-py3-none-any.whl
- Upload date:
- Size: 65.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cff53abf9553c2999e04fce034a6ca8e8190b60160826bf6ed5bf48721ab8b8c
|
|
| MD5 |
bc0fc34f79f88a7a851ad7cde896447d
|
|
| BLAKE2b-256 |
5db5fb246e85d2bfd218c7d3f529f5e1c6ce3c611a8944eb0c8a50080a977f86
|