Produce & verify TrueLayer API requests signatures
Project description
truelayer-signing
Python package to produce & verify TrueLayer API requests signatures.
Install
pip install truelayer-signing
Generating a signature
tl_signature = sign_with_pem(KID, PRIVATE_KEY) \
.set_method(HttpMethod.POST) \
.set_path(path) \
.add_header("Idempotency-Key", idempotency_key) \
.set_body(body) \
.sign()
See full example.
Verifying webhooks
The verify_with_jwks
function may be used to verify webhook Tl-Signature
header signatures.
# `jku` field is included in webhook signatures
jws_header = extract_jws_header(webhook_signature).jku
# check `jku` is an allowed TrueLayer url & fetch jwks JSON (not provided by this lib)
ensure_jku_allowed(jku)
jwks = fetch_jwks(jku)
# jwks may be used directly to verify a signature
verify_with_jwks(jwks, jws_header) \
.set_method(HttpMethod.POST) \
.set_path(path) \
.add_headers(headers) \
.set_body(body) \
.verify(tl_signature)
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
truelayer-signing-0.2.3.tar.gz
(10.4 kB
view hashes)
Built Distribution
Close
Hashes for truelayer_signing-0.2.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 60a5f545bcdda3d4b5c90f57b0c671214b813f79707c637aa5daed1ce5cda862 |
|
MD5 | 9eb561559de4010f529e83155f72d022 |
|
BLAKE2b-256 | 668c00d88d2b037ddfd2563f2c4bbd3f9c0bef36d9357e395ce62c62b02bad0b |