fix oauth permission check (#19829)

was regressed due to https://github.com/twentyhq/twenty/pull/19441
This commit is contained in:
neo773
2026-04-18 14:50:23 +05:30
committed by GitHub
parent 768469f2bd
commit 1d575f0496
5 changed files with 42 additions and 4 deletions
@@ -7,7 +7,9 @@ import { EntityManager, Repository } from 'typeorm';
import { UserWorkspaceEntity } from 'src/engine/core-modules/user-workspace/user-workspace.entity';
import { ConnectedAccountEntity } from 'src/engine/metadata-modules/connected-account/entities/connected-account.entity';
import { GlobalWorkspaceOrmManager } from 'src/engine/twenty-orm/global-workspace-datasource/global-workspace-orm.manager';
import { getWorkspaceContext } from 'src/engine/twenty-orm/storage/orm-workspace-context.storage';
import { buildSystemAuthContext } from 'src/engine/twenty-orm/utils/build-system-auth-context.util';
import { resolveRolePermissionConfig } from 'src/engine/twenty-orm/utils/resolve-role-permission-config.util';
import { type WorkspaceMemberWorkspaceEntity } from 'src/modules/workspace-member/standard-objects/workspace-member.workspace-entity';
export type CreateConnectedAccountInput = {
@@ -47,10 +49,18 @@ export class CreateConnectedAccountService {
const authContext = buildSystemAuthContext(workspaceId);
await this.globalWorkspaceOrmManager.executeInWorkspaceContext(async () => {
const workspaceContext = getWorkspaceContext();
const rolePermissionConfig = resolveRolePermissionConfig({
authContext,
userWorkspaceRoleMap: workspaceContext.userWorkspaceRoleMap,
apiKeyRoleMap: workspaceContext.apiKeyRoleMap,
});
const workspaceMemberRepo =
await this.globalWorkspaceOrmManager.getRepository<WorkspaceMemberWorkspaceEntity>(
workspaceId,
'workspaceMember',
rolePermissionConfig ?? undefined,
);
const member = await workspaceMemberRepo.findOne({