{% extends 'emails/base_email.html.twig' %} {% block email_title %}Token API compromis - Alerte critique - 2AB Portal{% endblock %} {% block preheader %}Alerte sécurité: Token API utilisé depuis une localisation inhabituelle. Action requise.{% endblock %} {% block email_content %}

🔥 ALERTE SÉCURITÉ CRITIQUE

Un token API a été utilisé depuis une localisation ou un appareil inhabituel

Token API Compromis

Bonjour {{ user.firstName ?? user.email ?? 'Administrateur' }},

Détails de l'anomalie

Utilisateur {{ data.user_email }}
ID: {{ data.user_id }}
Token ID
{{ data.token_id }}
Créé le {{ data.token_created_at }}
Détecté le {{ data.detected_at }}

Anomalies détectées

{% for anomaly in data.anomalies %}

{% if anomaly.type == 'country_change' %} 🌎 Changement de pays {% elseif anomaly.type == 'user_agent_change' %} 💻 Changement d'appareil {% else %} ⚠ {{ anomaly.type }} {% endif %}

{{ anomaly.severity }}
{% if anomaly.type == 'country_change' %}
Pays d'origine:
{{ anomaly.original_country }}
IP: {{ anomaly.original_ip }}
Nouveau pays:
{{ anomaly.current_country }}
IP: {{ anomaly.current_ip }}
{% elseif anomaly.type == 'user_agent_change' %}

User-Agent original:

{{ anomaly.original_user_agent }}

Nouveau User-Agent:

{{ anomaly.current_user_agent }}
{% if anomaly.similarity is defined %}

Similarité: {{ anomaly.similarity }}%

{% endif %} {% endif %}
{% endfor %} {% if data.current_geo_data is defined and data.current_geo_data %}

Localisation actuelle

Pays {{ data.current_geo_data.country|default('Inconnu') }}
Ville {{ data.current_geo_data.city|default('Inconnu') }}
ISP {{ data.current_geo_data.isp|default('Inconnu') }}
Proxy/VPN {% if data.current_geo_data.is_proxy or data.current_geo_data.is_vpn %} OUI {% else %} NON {% endif %}
{% endif %}

🛡 Actions urgentes requises

1. Révoquer immédiatement ce token
Le token peut être compromis et utilisé par un attaquant
2. Contacter l'utilisateur {{ data.user_email }}
Vérifier si l'activité est légitime
3. Forcer un changement de mot de passe
Si le compte est compromis
4. Analyser les logs d'activité récents
Identifier toute activité suspecte
5. Considérer un blocage temporaire de l'IP {{ data.current_ip }}
Pour prévenir d'autres accès non autorisés

Note: Cette alerte a été générée automatiquement par le système de sécurité TokenSecurityService. Les tokens API sont surveillés pour détecter toute utilisation anormale.

{% endblock %}