Skip to main content

Overview

Authentication ensures that only trusted users, services, and devices can connect to MAPS Messaging.
It provides a flexible framework where different protocols and interfaces can use different authentication methods, depending on your security needs.


Key Principles​

  • Pluggable providers — choose the right backend (built-in, LDAP, Cognito, etc.) for your deployment.
  • Per-interface control — each listener (MQTT, AMQP, NATS, REST, etc.) can reference a different authentication policy.
  • Protocol-aware — works consistently across MQTT, AMQP, NATS, STOMP, CoAP, and REST.
  • Separation of concerns — authentication is configured once, then referenced by name, avoiding duplication.

Supported Authentication Methods​

MAPS supports a wide range of authentication providers:

  • Built-in authentication (local users & roles)
  • Apache .htpasswd / .htgroup files
  • Unix / system accounts
  • LDAP / Active Directory
  • Auth0 (OIDC)
  • AWS Cognito (OIDC / JWT)
  • Certificate-based (mTLS) — client certificate validation

Per-Interface Flexibility​

Authentication can be specified per interface.
For example, you might run:

  • NATS open to anonymous clients for internal testing
  • MQTT over TLS with username/password for IoT devices
  • REST API with OIDC integration (Auth0 or Cognito)
  • AMQP with LDAP for enterprise integration

This makes it possible to mix and match authentication methods within the same server instance.


Choosing the Right Method​

ScenarioRecommended method
Local test setups, simple labsBuilt-in auth
Reuse existing Apache setups.htpasswd / .htgroup
Tight OS-level controlUnix system accounts
Enterprise identity managementLDAP / Active Directory
SaaS / cloud identityAuth0
AWS-native environmentsAWS Cognito
High-security device identityCertificate-based (mTLS)