{% 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
|
|
|
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 %}
|
|
{% 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 %}