API du Filtre Anti-Spam
Le Filtre Anti-Spam d’ALTCHA est une fonctionnalité unique de détection de spam qui vous permet de classer du texte et d’autres informations, vous permettant de filtrer le spam et d’identifier les messages légitimes. Il fonctionne en analysant du texte et d’autres informations, évaluant divers facteurs pour fournir un score numérique indiquant si le message semble légitime ou est probablement du spam.
Le Filtre Anti-Spam utilise du traitement du langage naturel et de l’apprentissage automatique pour analyser les données rapidement et de manière fiable. Pour des résultats optimaux, il est recommandé d’utiliser des langues avec un support complet. Bien que d’autres langues puissent également être analysées, certains facteurs de notation peuvent ne pas être disponibles.
Le respect de la confidentialité et la conformité au RGPD sont primordiaux pour tous les services d’ALTCHA. Le Filtre Anti-Spam respecte la confidentialité des utilisateurs et garantit la conformité au RGPD pour vous protéger, vous et vos clients. En savoir plus sur les considérations de confidentialité.
Cas d’utilisation
- Détection de spam complète : Détectez rapidement et de manière fiable le spam soumis via des formulaires en ligne ou des API en analysant le texte et en validant des facteurs tels que les adresses e-mail et les adresses IP.
- Validation d’adresses e-mail : Détectez les adresses e-mail falsifiées ou suspectes et faites la distinction entre les adresses “gratuites” et “professionnelles”.
- Validation d’adresse IP : Identifiez si une adresse IP est associée à un centre de données, un proxy ou une sortie TOR, et vérifiez les listes de blocage pour toute activité malveillante.
- Firewall de sécurité : Protégez-vous contre les tentatives courantes d’injection HTML et SQL dans le texte, et identifiez les attaquants connus grâce à des listes de blocage étendues.
- Détection de langue : Détectez automatiquement jusqu’à 160 langues à partir du texte fourni.
- Géolocalisation : Détectez de manière fiable la géolocalisation de l’utilisateur, les langues couramment parlées, la devise et d’autres informations à partir des adresses IP ou des fuseaux horaires des utilisateurs.
- Géorepérage : Bloquez efficacement certains pays, régions ou continents pour empêcher l’accès ou l’utilisation de votre site web ou de vos API.
Essayez !
Testez l’API du Filtre Anti-Spam avec votre propre saisie en utilisant le formulaire ci-dessous.
Testez le Filtre Anti-Spam par vous-même en soumettant le formulaire avec votre propre saisie.
- Utilisez différentes langues
- Incluez des insultes ou des mots de spam courants
- Utilisez une vraie adresse e-mail et une fausse
- Explorez l’une des règles de texte prises en charge
- Classification
- Temps écoulé
- Raisons
- Langue détectée
- Adresse IP
- Emplacement (IP)
- Emplacement (fuseau horaire)
Autorisation
L’accès à l’API nécessite une clé API. Consultez la documentation d’autorisation de l’API pour plus d’informations.
Utilisation avec le Widget
Si vous utilisez le widget d’ALTCHA comme protection Captcha, intégrer directement le Filtre Anti-Spam sur votre site web est simple. Le formulaire sera classé lors de la vérification d’ALTCHA, avant que les données n’atteignent votre serveur.
Pour utiliser le Filtre Anti-Spam, ajoutez l’attribut spamfilter
au widget (version 0.3+
requise):
Pour plus d’informations et les changements de serveur requis, consultez la documentation.
Modes de Fonctionnement
Le Filtre anti-spam offre plusieurs fonctionnalités avancées pour la détection du spam. Selon votre cas d’utilisation et votre public cible, certaines fonctionnalités, telles que la classification des champs de texte, peuvent être invasives pour la vie privée. Heureusement, vous pouvez facilement configurer le comportement du Filtre anti-spam et définir le mode de vérification.
Mode Par Défaut
En mode par défaut, le Filtre anti-spam effectue :
- Classification du texte dans tous les champs de texte du formulaire
- Vérification de l’adresse e-mail
- Vérification de l’IP
- Vérification de la langue
Mode Adresse IP
Définissez spamfilter="ipAddress"
pour vérifier uniquement l’adresse IP et le fuseau horaire de l’utilisateur. Ce mode ne soumet pas les champs de texte ni les adresses e-mail, ce qui en fait une option plus respectueuse de la vie privée qui évite l’envoi d’informations personnelles identifiables.
Bien que le Mode Adresse IP ne puisse pas détecter le spam généré par des humains, il identifie efficacement les bots grâce à une vérification complète des adresses IP.
Modes Personnalisés
Vous pouvez personnaliser davantage le comportement du Filtre anti-spam en utilisant configuration programmatique. Fournissez spamfilter
comme un objet avec des paramètres individuels adaptés à vos besoins.
Classification de texte
L’API du Filtre Anti-Spam analyse le texte fourni, recherchant des modèles courants rencontrés dans le spam. Elle évalue divers facteurs et fournit un score cumulatif indiquant la qualité du texte.
Elle peut fournir des informations précieuses sur le texte :
- Détection de langue
- Évaluation globale du sentiment
- Identification de mots de spam et d’insultes
- Détection d’URL
- Détection d’injections HTML et Javascript malveillantes
- Identification de tentatives potentielles d’injection SQL
Consultez les règles de texte pour plus de détails.
Support des Langues
Le Filtre anti-spam prend actuellement en charge la classification des textes dans les langues énumérées ci-dessous. Pour les textes dans des langues non incluses dans cette liste, le classificateur par défaut en anglais sera utilisé. Cela fournit une fonctionnalité de base pour la détection de spam, même pour les langues non prises en charge.
- Bulgare
- Tchèque
- Danois
- Néerlandais
- Anglais
- Finnois
- Français
- Allemand
- Grec
- Hongrois
- Italien
- Norvégien
- Polonais
- Portugais
- Roumain
- Russe
- Slovaque
- Espagnol
- Suédois
Vérification d’e-mails
L’API peut vérifier des adresses e-mail, vérifiant leur légitimité. Un score plus élevé indique une adresse e-mail suspecte ou fausse.
- Vérification des enregistrements DNS
- Détection des fournisseurs de messagerie gratuits
- Vérification des listes de blocage pour les spammeurs connus
Consultez les règles d’e-mail pour plus de détails.
Vérification d’adresse IP
Vérifier les adresses IP des utilisateurs est crucial pour détecter les abus. L’API identifie les proxies, les sorties TOR, les centres de données et les adresses IP malveillantes connues.
- Détection de géolocalisation
- Géorepérage
- Identification des centres de données, des proxies, VPN et sorties TOR
- Vérification des listes de blocage pour des acteurs malveillants connus
Consultez les règles d’adresse IP pour plus de détails.
Vérification du fuseau horaire
La détection du fuseau horaire de l’utilisateur via le navigateur fournit des informations fiables de géolocalisation. L’API résout les fuseaux horaires en pays spécifiques.
- Détection de géolocalisation
- Géorepérage
Consultez les règles de fuseau horaire pour plus de détails.
Vous pouvez récupérer le fuseau horaire IANA de l’utilisateur en utilisant le code JavaScript suivant :
Point d’accès de l’API
Pour classer vos données, utilisez le point d’accès /api/v1/classify
:
Requête
Pour utiliser l’API, envoyez une requête JSON encodée dans le format suivant :
Toutes les propriétés de requête sont optionnelles:
blockedCountries
- Un tableau de codes pays (ISO 3166 alpha-2) que vous voulez bloquer.classifier
- Appliquer un classificateur spécifique. Classificateurs pris en charge :cs
,en
,de
,es
,fr
,it
,nl
,pt
.disableRules
- Un tableau de règles à désactiver. Par ex.["text.EMOJI"]
.email
- Une adresse email à vérifier. Pour respecter la vie privée des utilisateurs, soumettre uniquement@<domaine>
.expectedCountries
- Un tableau de codes pays (ISO 3166 alpha-2) dont on s’attend à ce que l’utilisateur provienne.expectedLanguages
- Un tableau de codes de langue (ISO 639 alpha-2) dans lesquels on s’attend à ce que le texte soit rédigé.fields
- Soumettre des champs textuels sous forme d’objet clé-valeur. Peut être utilisé à la place detext
(la propriététext
a la priorité).ipAddress
- L’adresse IP de l’utilisateur. Utiliserauto
pour utiliser l’IP de l’appelant. Les IPv4 et IPv6 sont prises en charge.text
- Le texte à classifier. Un tableau de chaînes peut également être soumis.timeZone
- Le fuseau horaire de l’utilisateur au format IANA, fourni par le navigateur.
Réponse
L’API renvoie une classification JSON de vos données :
Le résultat est déterminé par les propriétés de la réponse :
classification
- Peut êtreGOOD
(< 1),NEUTRAL
(1…2), ouBAD
(> 2), indiquant la notation globale.score
- Le score numérique global. Un score > 2 indique du spam.reasons
- Un tableau de règles correspondantes, triées par score.
Règles de notation
L’API de classification évalue plusieurs règles de notation pour chaque attribut que vous fournissez. Les règles individuelles et leurs scores sont retournés par l’API dans la réponse. Le score global résultant est une somme de tous les scores de règle.
Il y a 4 catégories distinctes de règles de notation, basées sur les entrées fournies :
Règles de texte
Le texte est analysé avec les règles suivantes utilisant le traitement du langage naturel et l’apprentissage automatique. Ces règles sont conçues pour détecter les modèles couramment utilisés dans les messages non sollicités, tels que le spam et la promotion, mais aussi pour détecter les insultes et le contenu nuisible.
CAPITALIZATION
Cette règle trouve les mots CAPITALISÉS dans le texte. La capitalisation du texte suggère un message non sollicité.
- Signification :
faible
- Score :
n × 0.25
oùn
est le nombre d’occurrences.
CURRENCY
Cette règle trouve tous les jetons correspondants à des formats de prix ou de devise courants. Les prix dans le texte indiquent une offre commerciale.
- Signification :
faible
- Score :
n × 0.25
oùn
est le nombre d’occurrences.
EMOJI
Cette règle trouve tous les caractères emoji. Une utilisation excessive d’emoji est considérée comme nuisible.
- Signification :
faible
- Score :
n × 0.25
oùn
est le nombre d’occurrences.
EXCLAMATION
Cette règle trouve tous les caractères d’exclamation. Une utilisation excessive d’exclamation est considérée comme nuisible.
- Signification :
faible
- Score :
n × 0.25
oùn
est le nombre d’occurrences.
HASH_TAGS
Cette règle trouve tous les #hashtags. Une utilisation excessive de #hashtags est considérée comme nuisible.
- Signification :
faible
- Score :
n × 0.25
oùn
est le nombre d’occurrences.
HTML
Cette règle trouve toutes les balises HTML. L’utilisation de HTML est considérée comme nuisible.
- Signification :
moyenne
- Score :
n × 1
oùn
est le nombre d’occurrences.
HTML_INJECTION
Cette règle trouve toutes les balises HTML néfastes, telles que <script>
, <style>
et <iframe>
, qui indiquent une tentative malveillante.
- Signification :
élevée
- Score :
n × 5
oùn
est le nombre d’occurrences.
NUMBERS_ONLY
Cette règle correspond si le texte entier consiste uniquement en chiffres et indique des frappes de touches aléatoires.
- Signification :
moyenne
- Score :
0 | 2
PROFANITY
Cette règle trouve des insultes couramment utilisées dans le texte.
- Signification :
élevée
- Score :
n × x
oùn
est le nombre d’occurrences,x
est un score de mot variable.
RANDOM_CHARS
Cette règle trouve des séquences de caractères qui semblent correspondre à des frappes de touches aléatoires.
- Signification :
moyenne
- Score :
n × 1
oùn
est le nombre d’occurrences.
SENTIMENT
Cette règle évalue le sentiment global du texte. Un sentiment mauvais ou nuisible augmente le score.
- Signification :
moyenne
- Score :
0 | 1
SHORT_TEXT
Cette règle correspond si le texte est trop court, inférieur à 40 caractères.
- Signification :
moyenne
- Score :
0 | 1
SPAM_WORDS
Cette règle trouve des mots de spam couramment utilisés dans le texte.
- Signification :
moyenne
- Score :
n × x
oùn
est le nombre d’occurrences,x
est un score de mot variable.
SPECIAL_CHARS
Cette règle trouve des séquences non alphanumériques plus longues que 5 caractères.
- Signification :
moyenne
- Score :
n × 1
oùn
est le nombre d’occurrences.
SQL_INJECTION
Cette règle trouve des tentatives potentielles d’injection SQL, telles que 1; drop table ...
.
- Signification :
élevée
- Score :
n × 5
oùn
est le nombre d’occurrences.
UNEXPECTED_LANGUAGE
Cette règle correspond si la langue détectée ne correspond pas aux langues attendues
.
- Signification :
élevée
- Score :
0 | 5
UNKNOWN_LANGUAGE
Cette règle correspond si la langue ne peut pas être détectée à partir du texte.
- Signification :
moyenne
- Score :
0 | 1
URL
Cette règle trouve des adresses URL dans le texte. Une utilisation excessive d’URL est considérée comme nuisible.
- Signification :
faible
- Score :
n × 0.5
oùn
est le nombre d’occurrences.
Règles des courriels
Si vous fournissez une adresse électronique (email
) à l’API du classificateur, elle sera analysée selon les règles suivantes conçues pour valider l’adresse. Cela peut vous indiquer si l’e-mail est une “adresse e-mail gratuite” comme Gmail, ou s’il peut effectivement recevoir des messages.
FREE_PROVIDER
Cette règle correspond si le nom de domaine de l’adresse e-mail est reconnu comme un fournisseur d’adresses e-mail gratuit connu, tel que Gmail. Un score de 0
indique un e-mail “professionnel” avec un nom de domaine personnalisé, et un score de 0,5
indique un fournisseur d’adresses e-mail gratuit parmi les plus populaires et “de confiance”.
- Signification :
faible
- Score :
0 | 0,5 | 1
DMARC
Cette règle vérifie le DNS pour un enregistrement _dmarc.
et correspond si l’enregistrement n’est pas configuré. L’absence d’enregistrement DMARC
indique que le domaine est mal configuré.
- Signification :
faible
- Score :
0 | 0,5
MX
Cette règle vérifie le DNS pour un enregistrement MX
et correspond si l’enregistrement n’est pas configuré. L’absence d’enregistrement MX
indique que l’adresse e-mail n’est pas valide car les e-mails ne peuvent pas être livrés.
- Signification :
élevée
- Score :
0 | 5
REPORTED
Cette règle correspond si l’adresse e-mail est trouvée dans l’une des listes de blocage des spammeurs de forums connus.
- Signification :
élevée
- Score :
0 | 5
INVALID
Cette règle correspond si le format de l’adresse e-mail est invalide, tel qu’un nom de domaine invalide.
- Signification :
élevée
- Score :
0 | 5
Règles des adresses IP
Si vous fournissez une adresse IP (ipAddress
) à l’API du classificateur, elle sera analysée selon les règles suivantes conçues pour évaluer la nocivité de l’acteur. Cela vous indiquera si l’utilisateur utilise un serveur proxy ou TOR, si l’adresse IP est située dans un centre de données, ou si elle est une adresse IP malveillante connue. Vous pouvez utiliser l’évaluation IP pour le blocage géographique.
BLOCKED_COUNTRY
Cette règle correspond si la géolocalisation détectée correspond aux blockedCountries
.
- Signification :
élevée
- Score :
0 | 5
HOSTING
Cette règle correspond si l’adresse IP est connue pour être située dans un centre de données.
- Signification :
moyenne
- Score :
0 | 2
MALICIOUS
Cette règle correspond si l’adresse IP est trouvée dans l’une des listes de blocage des acteurs malveillants connus.
- Signification :
élevée
- Score :
0 | 5
PROXY
Cette règle correspond si l’adresse IP est connue pour être un serveur proxy tel qu’un VPN.
- Signification :
faible
- Score :
0 | 0,5
TOR
Cette règle correspond si l’adresse IP est connue pour être une sortie TOR.
- Signification :
moyenne
- Score :
0 | 1
UNEXPECTED_COUNTRY
Cette règle correspond si la géolocalisation détectée ne correspond pas aux expectedCountries
.
- Signification :
moyenne
- Score :
0 | 1
Règles des fuseaux horaires
Le fuseau horaire de l’utilisateur (fourni par le navigateur) est évalué pour détecter une géolocalisation précise de l’utilisateur. C’est souvent plus précis que l’adresse IP en raison de l’inexactitude de l’ensemble de données IP et de l’utilisation de proxies.
BLOCKED_COUNTRY
Cette règle correspond si la géolocalisation détectée correspond aux blockedCountries
.
- Signification :
élevée
- Score :
0 | 5
UNEXPECTED_COUNTRY
Cette règle correspond si la géolocalisation détectée ne correspond pas aux expectedCountries
.
- Signification :
moyenne
- Score :
0 | 1