Skip to main content
Mythic Framework uses FiveM’s Access Control Entry (ACE) permission system to manage admin permissions, command access, and resource-level permissions.

What is ACE?

ACE (Access Control Entry) is FiveM’s built-in permission system that controls who can execute commands and access resources.

Flexible

Grant permissions by individual, group, or resource

Hierarchical

Create permission groups with inheritance

Granular

Control access to specific commands and features

Persistent

Configured in server.cfg, survives restarts

Permission Concepts

Principals

A principal is an entity that can have permissions:
  • Players: Identified by Steam, License, Discord, etc.
  • Resources: Each resource is a principal
  • Groups: Collections of principals
Examples:

ACEs (Access Control Entries)

An ACE is a permission rule:
  • principal: Who gets the permission
  • object: What they can access
  • allow/deny: Grant or revoke access
Examples:

Groups

Groups organize principals and inherit permissions:
Examples:

Basic Setup

Creating Admin Group

1

Find Your Steam ID

  1. Visit https://steamid.io
  2. Enter your Steam profile URL
  3. Copy your Steam ID64
  4. Format as: identifier.steam:YOUR_STEAM_ID
2

Add to server.cfg

3

Restart Server

Permissions are loaded on server start. Restart to apply.
4

Verify In-Game

Connect and try an admin command:

Permission Hierarchy

Create a hierarchy of permission groups for different staff ranks:

Assigning Ranks

Inheritance: If group.admin has add_principal group.admin group.staff, admins automatically get all staff permissions too.

Mythic Framework Permissions

Core Admin Permissions

Moderator Permissions (Limited)

Support Permissions (Very Limited)

Resource-Level Permissions

Control which resources can access sensitive functions:
Security: Only grant resource-level permissions to trusted resources. A compromised resource with these permissions can cause significant damage.

Command-Specific Permissions

Grant access to individual commands:

Player Identifier Types

FiveM supports multiple identifier types. Use the most stable for your needs:
Format: identifier.steam:110000XXXXXXXXPros:
  • Most stable and unique
  • Recommended for primary identification
  • Required for Steam authentication
Cons:
  • Players must have Steam open
How to Find:
  • Use steamid.io
  • Console: print(GetPlayerIdentifier(source, 0))

Finding Player Identifiers

Dynamic Permission Management

Mythic Framework includes runtime permission management:

In-Game Commands (if mythic-admin installed)

Programmatic Permission Checks

Troubleshooting

Problem: Player has permission in server.cfg but can’t use commandSolutions:
  1. Verify server restart:
    • Permissions are loaded on start
    • Must restart server after changes
  2. Check identifier format:
  3. Verify identifier is correct:
  4. Check permission syntax:
Problem: Don’t know player’s Steam IDSolutions:
  1. Use steamid.io:
    • Enter Steam profile URL
    • Copy SteamID64
  2. Server console when player connects:
  3. Create identifier command:
Error: Resource mythic-xyz attempted to use restricted commandCause: Resource trying to use function it doesn’t have permission forSolution:
Problem: Player in group but doesn’t get group permissionsSolutions:
  1. Check principal assignment:
  2. Verify group has permissions:
  3. Check order in server.cfg:

Security Best Practices

Least Privilege

Grant minimum permissions needed. Don’t give everyone admin.

Use Groups

Organize permissions in groups. Easier to manage than individual permissions.

Regular Audits

Review permissions monthly. Remove ex-staff, inactive admins.

Separate Duties

Different roles for different functions (moderation vs development).

Document Changes

Keep a log of who was given permissions and when.

Test Permissions

Test with alt account before granting to real players.

Complete Example Configuration

Next Steps

Server Configuration

Complete server.cfg guide

Resource Management

Resource load order and dependencies

Environment Variables

Configure server environment

Discord Webhooks

Set up logging webhooks
Permission Testing: Create a test account and assign it to each group to verify permissions work correctly before giving to real staff members.