diff --git a/packages/better-auth/src/plugins/organization/permission.ts b/packages/better-auth/src/plugins/organization/permission.ts index a82decee52..9d900e1e2e 100644 --- a/packages/better-auth/src/plugins/organization/permission.ts +++ b/packages/better-auth/src/plugins/organization/permission.ts @@ -18,7 +18,13 @@ export const hasPermissionFn = ( for (const role of roles) { const _role = acRoles[role as keyof typeof acRoles]; - const result = _role?.authorize(input.permissions); + if (!_role) { + console.warn( + `[Better Auth] [hasPermission] Role "${role}" not found in configured roles. Available roles: ${Object.keys(acRoles).join(", ")}`, + ); + continue; + } + const result = _role.authorize(input.permissions); if (result?.success) { return true; }