Active DirectoryLDAP / LDAPS
Autentique usuários contra Microsoft AD DS on-prem com o mesmo contrato JWT do login email/senha.
Visão geral
A API faz bind no controlador de domínio via LDAP ou LDAPS, valida credenciais, provisiona usuários locais automaticamente e retorna JWTs. Separado do Microsoft Entra ID (OAuth na nuvem) — focado em AD DS no DC.
Contrato da API
Use sAMAccountName ou userPrincipalName como username. A resposta é igual ao POST /auth/login.
POST /api/v1/auth/ad/login
Content-Type: application/json
{
"username": "jdoe",
"password": "StrongP@ssw0rd123"
}
LDAP vs LDAPS
Configure AD_LDAP_URL com ldap:// ou ldaps://. Veja os guias de transporte para portas, firewall e TLS.
Modelo de usuário
O objectGUID do AD é salvo como activeDirectoryId. Email vem de mail ou userPrincipalName.
Roles a partir de grupos AD
Grupos de segurança atribuídos via AD / GPO aparecem no usuário como memberOf. Mapeie-os para roles da app com AD_LDAP_GROUP_ROLE_MAP (formato groupDnOrCn|role;…). Em cada login a API atualiza user.roles a partir desse mapa (desative com AD_LDAP_SYNC_ROLES_ON_LOGIN=false). Se nenhum grupo corresponder, usa-se AD_LDAP_DEFAULT_ROLES.
AD_LDAP_GROUP_ROLE_MAP=CN=Nest-Admins,OU=Groups,DC=example,DC=com|admin;Nest-Managers|manager;Nest-Users|user AD_LDAP_DEFAULT_ROLES=user AD_LDAP_SYNC_ROLES_ON_LOGIN=true