Skip to main content

Python library for Airlock product REST APIs

Project description

GitHub PyPI
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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyairlock-1.0.1.tar.gz (27.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyAirlock-1.0.1-py3-none-any.whl (65.0 kB view details)

Uploaded Python 3

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

Hashes for pyairlock-1.0.1.tar.gz
Algorithm Hash digest
SHA256 112972c0edeb080572a092e8903d8c7df66471cc68a04a123b59323bf16f4905
MD5 6d681260e62bf14ea0b837bc23116aa2
BLAKE2b-256 95b0d8f5ed76924db1832b16098a786e22c629647d95b4a9a908bef4f169910f

See more details on using hashes here.

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

Hashes for pyAirlock-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 cff53abf9553c2999e04fce034a6ca8e8190b60160826bf6ed5bf48721ab8b8c
MD5 bc0fc34f79f88a7a851ad7cde896447d
BLAKE2b-256 5db5fb246e85d2bfd218c7d3f529f5e1c6ce3c611a8944eb0c8a50080a977f86

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page