FiveM6 février 2026 38 vues

Permissions ACE sur FiveM : le guide complet pour sécuriser votre serveur

Permissions ACE sur FiveM : le guide complet pour sécuriser votre serveur

Permissions ACE sur FiveM : le guide complet pour sécuriser votre serveur

Gérer qui peut faire quoi sur un serveur FiveM, c'est la base de tout projet sérieux. Donner les droits admin à n'importe qui ou laisser des commandes sensibles accessibles à tous, c'est le meilleur moyen de voir son serveur partir en vrille.

Le système ACE (Access Control Entry) est le système de permissions natif de FiveM. Il vous permet de créer des groupes (admin, modérateur, police, VIP…), de leur attribuer des droits précis, et de gérer tout ça de manière hiérarchique. Dans ce guide, on passe en revue tout ce qu'il faut savoir pour configurer vos permissions proprement.


Le système ACE, c'est quoi exactement ?

ACE est le système de permissions intégré à FiveM. Il vous permet de :

  • Contrôler l'accès aux commandes et fonctionnalités
  • Créer des groupes avec des niveaux de droits différents
  • Gérer les permissions de manière hiérarchique (un admin hérite des droits d'un modérateur, etc.)
  • Sécuriser les ressources et commandes sensibles

Tout se configure dans le fichier server.cfg de votre serveur.


Les trois concepts à comprendre

Avant de se lancer dans la config, il faut comprendre trois notions essentielles.

1. Le Principal (l'identité)

C'est ce qui identifie un joueur ou un groupe. Ça peut être :

identifier.steam:110000xxxxxx    # Identifiant Steam
identifier.license:xxxxxx        # License Rockstar
identifier.discord:xxxxxx        # ID Discord
identifier.fivem:xxxxxx          # ID FiveM
group.admin                      # Un groupe

2. L'ACE (la permission)

C'est le droit que vous accordez ou refusez :

command.kick          # Permission de kick
command.ban           # Permission de ban
resource.admin_menu   # Accès à une ressource spécifique

3. Allow / Deny

Vous autorisez (allow) ou refusez (deny) la permission.


L'héritage entre groupes

C'est ce qui rend le système ACE vraiment pratique. Un groupe peut hériter des permissions d'un autre groupe.

Par exemple, si vous avez cette hiérarchie :

superadmin → admin → moderateur → support

Un superadmin a automatiquement toutes les permissions d'admin, qui a toutes celles de modérateur, et ainsi de suite. Vous n'avez pas besoin de recopier les mêmes permissions partout.

FiveM traite les permissions dans cet ordre :

  1. Permissions spécifiques du joueur (identifier)
  2. Permissions de groupe (group)
  3. Permissions héritées

La syntaxe de base

Tout se passe dans votre server.cfg. Voici les commandes essentielles :

# Donner une permission à un groupe ou un joueur
add_ace <principal> <permission> <allow/deny>

# Ajouter un joueur à un groupe
add_principal <identifier> <group>

# Faire hériter un groupe d'un autre
add_ace group.admin group.moderator allow

Configuration simple : un seul admin

Si vous débutez et que vous voulez juste vous donner les droits admin, voici le minimum :

# Créer le groupe admin avec toutes les commandes
add_ace group.admin command allow

# Vous ajouter au groupe admin (remplacez par votre Steam ID)
add_principal identifier.steam:110000xxxxxx group.admin

Avec ça, vous avez accès à toutes les commandes. Simple, mais pas très fin niveau gestion des droits.


Configuration complète : structure hiérarchique

Voici une configuration plus sérieuse avec plusieurs niveaux de permissions :

####################################
# PERMISSIONS GLOBALES
####################################

# Bloquer les commandes dangereuses pour tout le monde par défaut
add_ace builtin.everyone command.restart deny
add_ace builtin.everyone command.stop deny
add_ace builtin.everyone command.exec deny

####################################
# SUPERADMIN (propriétaire du serveur)
####################################

add_ace group.superadmin command allow
add_ace group.superadmin txadmin allow
add_principal identifier.steam:110000xxxxxx group.superadmin

####################################
# ADMIN
####################################

# L'admin hérite des droits modérateur
add_ace group.admin group.moderator allow

# Permissions spécifiques admin
add_ace group.admin command.restart allow
add_ace group.admin command.stop allow
add_ace group.admin command.start allow
add_ace group.admin command.refresh allow
add_ace group.admin command.ensure allow
add_ace group.admin command.setjob allow
add_ace group.admin command.giveitem allow
add_ace group.admin command.givemoney allow
add_ace group.admin command.car allow
add_ace group.admin command.dv allow
add_ace group.admin command.tp allow
add_ace group.admin command.bring allow
add_ace group.admin command.unban allow

add_principal identifier.steam:110000yyyyyy group.admin

####################################
# MODERATEUR
####################################

# Le modérateur hérite des droits support
add_ace group.moderator group.support allow

# Permissions de modération
add_ace group.moderator command.kick allow
add_ace group.moderator command.ban allow
add_ace group.moderator command.warn allow
add_ace group.moderator command.mute allow
add_ace group.moderator command.spectate allow
add_ace group.moderator command.goto allow
add_ace group.moderator command.announce allow

add_principal identifier.steam:110000zzzzzz group.moderator
add_principal identifier.discord:123456789 group.moderator

####################################
# SUPPORT
####################################

add_ace group.support command.tp allow
add_ace group.support command.tpto allow
add_ace group.support command.bring allow
add_ace group.support command.revive allow

add_principal identifier.steam:110000aaaaaa group.support

####################################
# VIP (avantages sans droits admin)
####################################

add_ace group.vip vip.priority allow
add_ace group.vip vip.customskin allow
add_ace group.vip vip.spawnvehicle allow

add_principal identifier.steam:110000bbbbbb group.vip

Les différents types d'identifiants

Steam ID (recommandé)

C'est le plus fiable et le plus utilisé :

add_principal identifier.steam:110000xxxxxx group.admin

Pour trouver le Steam ID d'un joueur :

  1. Le joueur se connecte au serveur
  2. Tapez status dans la console serveur
  3. Repérez la ligne avec son pseudo et copiez l'identifiant steam:xxxxx

Discord ID

add_principal identifier.discord:123456789012345678 group.admin

Pour le trouver : activez le mode développeur dans Discord, puis clic droit sur l'utilisateur → Copier l'ID.

License Rockstar

add_principal identifier.license:xxxxxxxxxxxxxx group.admin

FiveM ID

add_principal identifier.fivem:xxxxxx group.admin

À éviter : L'identification par IP (identifier.ip:xxx) est déconseillée car les IP changent régulièrement.


Permissions pour les métiers (serveur RP)

Sur un serveur roleplay, vous pouvez créer des permissions spécifiques par métier :

# Police
add_ace group.police police.menu allow
add_ace group.police police.armory allow
add_ace group.police police.handcuff allow
add_ace group.police police.vehicle allow

# EMS
add_ace group.ems ems.menu allow
add_ace group.ems ems.vehicle allow
add_ace group.ems command.revive allow
add_ace group.ems command.heal allow

# Mécano
add_ace group.mechanic mechanic.menu allow
add_ace group.mechanic mechanic.repair allow

Dans vos scripts, vous vérifiez ensuite la permission :

if IsPlayerAceAllowed(source, 'police.armory') then
    -- Le joueur peut accéder à l'armurerie
end

Restreindre l'accès à une ressource

Vous pouvez bloquer une ressource entière et ne l'autoriser qu'à certains groupes :

# Bloquer admin_menu pour tout le monde
add_ace builtin.everyone resource.admin_menu deny

# Autoriser uniquement les admins
add_ace group.admin resource.admin_menu allow

Configuration avec txAdmin

Si vous utilisez txAdmin pour gérer votre serveur, vous devez donner les permissions correspondantes :

# Accès complet à txAdmin
add_ace group.superadmin txadmin allow
add_principal identifier.steam:110000xxxxxx group.superadmin

# Accès limité (voir sans pouvoir modifier)
add_ace group.admin txadmin.view allow
add_ace group.admin txadmin.control allow

Intégration avec ESX et QBCore

Avec ESX

ESX a son propre système de groupes dans la base de données, mais il peut fonctionner avec ACE :

add_ace group.admin command.setjob allow
add_ace group.admin command.givemoney allow
add_principal identifier.steam:xxx group.admin

N'oubliez pas de mettre aussi le groupe à admin dans la table users de votre base de données ESX.

Avec QBCore

QBCore utilise les permissions ACE nativement :

add_ace group.god command allow
add_ace group.admin qbcore.admin allow

Et dans qb-core/server/main.lua, ajoutez vos identifiants dans la config des permissions.


Commandes utiles pour tester

Vérifier si un joueur a une permission

Dans la console F8 ou la console serveur :

test_ace steam:110000xxxxxx command.kick

Retourne true ou false.

Lister toutes les permissions actives

list_aces

Résoudre les problèmes courants

Les permissions ne s'appliquent pas

  • Redémarrez complètement le serveur (pas juste refresh)
  • Vérifiez l'orthographe exacte des identifiants (sensible à la casse)
  • Utilisez status pour voir les identifiants des joueurs connectés

L'ordre est important

Créez toujours le groupe avant d'y ajouter des joueurs :

# ❌ Mauvais ordre
add_principal identifier.steam:xxx group.admin
add_ace group.admin command allow

# ✅ Bon ordre
add_ace group.admin command allow
add_principal identifier.steam:xxx group.admin

Conflit avec ESX/QBCore

Si une commande est refusée malgré les bonnes permissions ACE, le script lui-même peut avoir son propre système de vérification. Vérifiez la config du script concerné.


Bonnes pratiques de sécurité

Principe du moindre privilège

Ne donnez que les permissions strictement nécessaires :

# ❌ Trop large
add_ace group.moderator command allow

# ✅ Précis
add_ace group.moderator command.kick allow
add_ace group.moderator command.ban allow
add_ace group.moderator command.warn allow

Protégez les commandes critiques

# Bloquer pour tout le monde par défaut
add_ace builtin.everyone command.restart deny
add_ace builtin.everyone command.stop deny
add_ace builtin.everyone command.exec deny

# Autoriser uniquement les superadmins
add_ace group.superadmin command.restart allow
add_ace group.superadmin command.stop allow

Documentez votre configuration

Commentez votre server.cfg pour vous y retrouver :

# ===== GROUPE ADMIN =====
# Peut gérer les joueurs et les ressources
# Ne peut PAS arrêter/redémarrer le serveur
add_ace group.admin command.kick allow
# ...

En résumé

Le système ACE de FiveM est puissant et flexible une fois qu'on a compris sa logique. Les points clés à retenir :

  • Utilisez des groupes plutôt que des permissions individuelles
  • Profitez de l'héritage pour ne pas vous répéter
  • Steam ID est l'identifiant le plus fiable
  • Appliquez le principe du moindre privilège
  • Testez toujours vos permissions après modification

Besoin d'un serveur FiveM pour mettre tout ça en place ? OuiHeberg propose des offres d'hébergement FiveM avec un accès complet à vos fichiers de configuration pour gérer vos permissions ACE comme vous le souhaitez.