Architecture
IDaaS is built as a Spring Boot API with asynchronous side effects handled through Kafka consumers.Request path
Event-driven responsibilities
| Component | Responsibility |
|---|---|
| API controllers | Validate requests and map them to service operations |
| Service layer | Apply business rules and persist state changes |
| Kafka producers | Publish audit, transaction, webhook, wallet, and settlement events |
| Kafka consumers | Dispatch webhooks, write audits, and process asynchronous work |
| MySQL | Primary transactional store |
| Redis | Cache, rate limiting, idempotency keys, and token blacklist |
Tag addressing model
IDaaS supports namespaced tags to prevent collisions between applications.alice@walletappandalice@shopappare different identities.- Bare lookups such as
aliceare allowed only when the name is unambiguous. - Qualified addresses are the preferred form for transactions and public resolution.
Transaction lifecycle
Security model
- Bearer JWTs for protected APIs
- HMAC-SHA256 webhook signatures
- Optional JWE request and webhook payload encryption
- Distributed Redis-backed rate limiting
- Hardened security headers and stateless request processing