ACE e Permessi

INFO

ACE (Access Control Expression) è il sistema di permessi di FiveM. Controlla chi può fare cosa: comandi, accesso a risorse, trigger di eventi.

ObiettivoDettagli
Cosa imparerai• Cos’è un principal e un object
• Assegnare permessi admin con ACE
• Usare add_ace e add_principal
• Proteggere comandi e risorse
Prerequisiti• Server configurato (nota 03)
• Identificatore di un giocatore (Steam/license)

Concetti di Base

ACE funziona con due concetti:

TermineSignificatoEsempio
PrincipalChi ottiene il permessoidentifier.steam:110000... , group.admin
ObjectCosa si può farecommand.kick, resource.es_extended

Regola:

add_ace <principal> <object> <allow|deny>

Assegnare un Admin

Passo 1 — Trovare l’identificatore

Il giocatore apre la console F8 e digita:

# Console F8
identifiers

Oppure dal server:

status

L’output mostra identificatori come steam:110000112345678 o license:xxxxxxxx.

Passo 2 — Creare un gruppo admin

# server.cfg
add_ace group.admin command allow
add_ace group.admin command.quit deny
 
# Aggiungi il giocatore al gruppo
add_principal identifier.steam:110000112345678 group.admin

TIP

Usa sempre un gruppo (group.admin) e poi aggiungi i giocatori al gruppo. Non creare add_ace per ogni singolo giocatore: diventa impossibile da mantenere.


Esempi Pratici

Permettere solo comandi specifici

# TUTTI i giocatori possono usare /report
add_ace group.user command.report allow
add_principal group.user group.member
 
# Solo gli admin possono bannare
add_ace group.admin command.ban allow
add_ace group.admin command.kick allow
add_ace group.admin command.unban allow

Proteggere una risorsa

# Solo il gruppo staff può usare la risorsa admin
add_ace resource.adminmenu command.ace allow
add_ace resource.adminmenu command.add_ace allow
 
# Negare l'accesso a un comando a uno specifico giocatore
add_ace identifier.license:abcdef123456 command.givecash deny

Permessi per risorse specifiche

add_ace group.staff command.giveitem allow
add_ace group.staff command.givecar allow
add_principal identifier.steam:110000112345678 group.staff

Comandi Utili

ComandoRuolo
add_ace <principal> <object> allowConcede un permesso
add_ace <principal> <object> denyNega un permesso
add_principal <child> <parent>Fa ereditare i permessi
remove_ace ...Rimuove un permesso
test_ace <principal> <object>Verifica se un principal ha il permesso

Permessi Comuni per Server RP

ObjectGruppo
command.reporttutti
command.givecashadmin
command.ban / command.kickadmin/mod
command.aceadmin
resource.ox_inventory (accesso admin)admin
command.devtoolsdeveloper

WARNING

Sicurezza ACE:

  • Non concedere command allow a giocatori sconosciuti
  • Usa deny esplicito per comandi critici (es. command.quit)
  • Controlla periodicamente chi ha accesso admin
  • Non mettere la license key in un repo pubblico

Esempio Completo

# server.cfg — sezione permessi
 
# Gruppo di base per tutti
add_ace group.member command.report allow
 
# Staff
add_ace group.mod command.kick allow
add_ace group.mod command.ban allow
 
# Admin
add_ace group.admin command allow
add_ace group.admin command.quit deny
add_ace group.admin command.stop deny
 
# Eredità: admin include i permessi di mod e member
add_principal group.admin group.mod
add_principal group.mod group.member
 
# Giocatori reali (usa i loro identifier)
add_principal identifier.steam:110000112345678 group.admin

Verifica

  • Gli admin hanno solo i comandi necessari
  • command.quit è negato agli admin
  • Identificatori corretti (non IP)
  • Nessun permesso command allow per giocatori casuali

Modulo Server Setup completato! Prossimo modulo: 12 - Sicurezza


Torna alla: Indice Generale