Skip to content

Conversation

@Jebula999
Copy link

Added optional users arrays to authentication.areaRestrictions and user-capable aliases, plus sample entries in config/local.example.json.

"areaRestrictions": [
	{
		"roles": ["{Discord Role ID}/{Alias}"],
		"areas": ["{Area Name 1}", "{Area Name 2}"]
	},
	{
		"users": ["{Discord User ID}/{Alias}"],
		"areas": ["{Area Name 1}", "{Area Name 2}"]
	}
]

Expanded packages/config/lib/mutations.js to resolve role and user aliases separately and normalize configs with mixed role/user references.

"aliases": [
	{
		"role": "{Discord Role ID}",
		"name": "{Alias}"
	},
	{
		"user": "{Discord User ID}",
		"name": "{Alias}"
	}
]

Introduced static helpers in server/src/services/DiscordClient.js so Discord auth pulls user-specific area restrictions from config, overrides role-derived areas, and clears access when a matching user rule has no areas.

Discord Permission Core Change
During Discord login, getPerms now calls DiscordClient.getUserAreaRestrictions(user.id), which scans config for user ID matches, merges any explicit areas, and wipes role-based area access if the user is restricted to none. This enables per-user overrides alongside existing role logic.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant