gateway
is a simple API gateway written in Rust.
Simple use: cargo run -- local_config.yml
.
The configuration files must contain the following keys:
bind_to: # (Mandatory) the `SocketAddr` to listen
crd_label: # TODO
metrics_prefix: gateway_dev
perm_uris: [] # endpoints where to fetch premissions
perm_update_delay: 30 # delay between each permissions update, in seconds
auth_sources: [] # TODO
max_fetch_error_count: u64 # max number of consecutive errors when fetching permissions
# TODO: arbitrary values
websocket_config:
max_send_queue: 1000
max_message_size: 1_000_000
max_frame_size: 1_000_000
accept_unmasked_frames: true
remove_authorization_header
โ Remove the headerAuthorization
from the forwarded request
- Add chain request/response logic