Skip to content

feat(gsm): restrict unauthorized inbound SMS sessions - #376

Open
Adamskiee wants to merge 10 commits into
developfrom
feature/gsm-unregistered-warning
Open

feat(gsm): restrict unauthorized inbound SMS sessions#376
Adamskiee wants to merge 10 commits into
developfrom
feature/gsm-unregistered-warning

Conversation

@Adamskiee

@Adamskiee Adamskiee commented Aug 16, 2026

Copy link
Copy Markdown
Collaborator

Description

Fixes an authorization gap where any external number could message any SAPOT user through the gateway. Now, external numbers can only reach users who have explicitly messaged them first (outbound permission).

Changes

  • Gateway: Added sms_outbound_permission table.
  • Server: Calling POST /grant-permission upon successful outbound SMS.
  • Gateway: Added POST /grant-permission and GET /has-permission.
  • Gateway: Session handler rejects unauthorized NEW sessions and unauthorized [target] selection.
  • Server: Inbound webhook (/gsm/inbound) verifies permissions before processing.
  • Standards: Fixed unredacted phone numbers in logs, updated docs, removed em dashes in comments.

Notes

Resolves all findings from the SMS authorization plan.

@Adamskiee
Adamskiee force-pushed the feature/gsm-unregistered-warning branch from 48ab98a to 4b69d6b Compare August 16, 2026 03:10
@Adamskiee Adamskiee changed the title feat(gsm): warn unregistered SMS senders once feat(gsm-inbound): warn unregistered SMS senders once. Aug 16, 2026
Implemented unregistered user warning and rate limiting for the GSM module.
Added new environment variables for configuring queue sizes, daily send limits, sender daily limits, cooldown seconds, and log retention.
Updated serial worker and api to support the new features.
Updated relevant documentation.
@Adamskiee
Adamskiee force-pushed the feature/gsm-unregistered-warning branch from 4b69d6b to d41f0a1 Compare August 16, 2026 04:38
@Adamskiee Adamskiee changed the title feat(gsm-inbound): warn unregistered SMS senders once. feat(gsm): restrict unauthorized inbound SMS sessions Aug 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant