diff --git a/backend/src/db/schemas/models.ts b/backend/src/db/schemas/models.ts index d47962110..75d36833b 100644 --- a/backend/src/db/schemas/models.ts +++ b/backend/src/db/schemas/models.ts @@ -267,16 +267,6 @@ export enum ProjectType { SecretScanning = "secret-scanning" } -export enum ActionProjectType { - SecretManager = ProjectType.SecretManager, - CertificateManager = ProjectType.CertificateManager, - KMS = ProjectType.KMS, - SSH = ProjectType.SSH, - SecretScanning = ProjectType.SecretScanning, - // project operations that happen on all types - Any = "any" -} - export enum SortDirection { ASC = "asc", DESC = "desc" diff --git a/backend/src/ee/services/access-approval-policy/access-approval-policy-service.ts b/backend/src/ee/services/access-approval-policy/access-approval-policy-service.ts index 4e818df2a..5976f5fff 100644 --- a/backend/src/ee/services/access-approval-policy/access-approval-policy-service.ts +++ b/backend/src/ee/services/access-approval-policy/access-approval-policy-service.ts @@ -1,6 +1,5 @@ import { ForbiddenError } from "@casl/ability"; -import { ActionProjectType } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; import { BadRequestError, ForbiddenRequestError, NotFoundError } from "@app/lib/errors"; @@ -97,8 +96,7 @@ export const accessApprovalPolicyServiceFactory = ({ actorId, projectId: project.id, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -248,8 +246,7 @@ export const accessApprovalPolicyServiceFactory = ({ actorId, projectId: project.id, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const accessApprovalPolicies = await accessApprovalPolicyDAL.find({ projectId: project.id, deletedAt: null }); @@ -301,8 +298,7 @@ export const accessApprovalPolicyServiceFactory = ({ actorId, projectId: accessApprovalPolicy.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.SecretApproval); @@ -498,8 +494,7 @@ export const accessApprovalPolicyServiceFactory = ({ actorId, projectId: policy.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionActions.Delete, @@ -549,8 +544,7 @@ export const accessApprovalPolicyServiceFactory = ({ actorId, projectId: project.id, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); if (!membership) { throw new ForbiddenRequestError({ message: "You are not a member of this project" }); @@ -589,8 +583,7 @@ export const accessApprovalPolicyServiceFactory = ({ actorId, projectId: policy.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.SecretApproval); diff --git a/backend/src/ee/services/access-approval-request/access-approval-request-service.ts b/backend/src/ee/services/access-approval-request/access-approval-request-service.ts index ccab70d5b..5e8b8edcc 100644 --- a/backend/src/ee/services/access-approval-request/access-approval-request-service.ts +++ b/backend/src/ee/services/access-approval-request/access-approval-request-service.ts @@ -1,7 +1,7 @@ import slugify from "@sindresorhus/slugify"; import msFn from "ms"; -import { ActionProjectType, ProjectMembershipRole } from "@app/db/schemas"; +import { ProjectMembershipRole } from "@app/db/schemas"; import { getConfig } from "@app/lib/config/env"; import { BadRequestError, ForbiddenRequestError, NotFoundError } from "@app/lib/errors"; import { groupBy } from "@app/lib/fn"; @@ -107,8 +107,7 @@ export const accessApprovalRequestServiceFactory = ({ actorId, projectId: project.id, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); if (!membership) { throw new ForbiddenRequestError({ message: "You are not a member of this project" }); @@ -290,8 +289,7 @@ export const accessApprovalRequestServiceFactory = ({ actorId, projectId: project.id, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); if (!membership) { throw new ForbiddenRequestError({ message: "You are not a member of this project" }); @@ -337,8 +335,7 @@ export const accessApprovalRequestServiceFactory = ({ actorId, projectId: accessApprovalRequest.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); if (!membership) { @@ -578,8 +575,7 @@ export const accessApprovalRequestServiceFactory = ({ actorId, projectId: project.id, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); if (!membership) { throw new ForbiddenRequestError({ message: "You are not a member of this project" }); diff --git a/backend/src/ee/services/assume-privilege/assume-privilege-service.ts b/backend/src/ee/services/assume-privilege/assume-privilege-service.ts index d4a643d8b..c1cfad082 100644 --- a/backend/src/ee/services/assume-privilege/assume-privilege-service.ts +++ b/backend/src/ee/services/assume-privilege/assume-privilege-service.ts @@ -1,7 +1,6 @@ import { ForbiddenError } from "@casl/ability"; import jwt from "jsonwebtoken"; -import { ActionProjectType } from "@app/db/schemas"; import { getConfig } from "@app/lib/config/env"; import { ForbiddenRequestError, NotFoundError } from "@app/lib/errors"; import { ActorType } from "@app/services/auth/auth-type"; @@ -38,8 +37,7 @@ export const assumePrivilegeServiceFactory = ({ actorId: actorPermissionDetails.id, projectId, actorAuthMethod: actorPermissionDetails.authMethod, - actorOrgId: actorPermissionDetails.orgId, - actionProjectType: ActionProjectType.Any + actorOrgId: actorPermissionDetails.orgId }); if (targetActorType === ActorType.USER) { @@ -60,8 +58,7 @@ export const assumePrivilegeServiceFactory = ({ actorId: targetActorId, projectId, actorAuthMethod: actorPermissionDetails.authMethod, - actorOrgId: actorPermissionDetails.orgId, - actionProjectType: ActionProjectType.Any + actorOrgId: actorPermissionDetails.orgId }); const appCfg = getConfig(); diff --git a/backend/src/ee/services/audit-log/audit-log-service.ts b/backend/src/ee/services/audit-log/audit-log-service.ts index 4bea26ac6..bf00a499a 100644 --- a/backend/src/ee/services/audit-log/audit-log-service.ts +++ b/backend/src/ee/services/audit-log/audit-log-service.ts @@ -1,7 +1,6 @@ import { ForbiddenError } from "@casl/ability"; import { requestContext } from "@fastify/request-context"; -import { ActionProjectType } from "@app/db/schemas"; import { getConfig } from "@app/lib/config/env"; import { BadRequestError } from "@app/lib/errors"; import { ActorType } from "@app/services/auth/auth-type"; @@ -38,8 +37,7 @@ export const auditLogServiceFactory = ({ actorId, projectId: filter.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.AuditLogs); } else { diff --git a/backend/src/ee/services/certificate-authority-crl/certificate-authority-crl-service.ts b/backend/src/ee/services/certificate-authority-crl/certificate-authority-crl-service.ts index 5ead798fa..cc6a6b5fe 100644 --- a/backend/src/ee/services/certificate-authority-crl/certificate-authority-crl-service.ts +++ b/backend/src/ee/services/certificate-authority-crl/certificate-authority-crl-service.ts @@ -1,7 +1,6 @@ import { ForbiddenError } from "@casl/ability"; import * as x509 from "@peculiar/x509"; -import { ActionProjectType } from "@app/db/schemas"; import { TCertificateAuthorityCrlDALFactory } from "@app/ee/services/certificate-authority-crl/certificate-authority-crl-dal"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; @@ -78,8 +77,7 @@ export const certificateAuthorityCrlServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( diff --git a/backend/src/ee/services/dynamic-secret-lease/dynamic-secret-lease-service.ts b/backend/src/ee/services/dynamic-secret-lease/dynamic-secret-lease-service.ts index cf37626c7..c2c596922 100644 --- a/backend/src/ee/services/dynamic-secret-lease/dynamic-secret-lease-service.ts +++ b/backend/src/ee/services/dynamic-secret-lease/dynamic-secret-lease-service.ts @@ -1,7 +1,6 @@ import { ForbiddenError, subject } from "@casl/ability"; import RE2 from "re2"; -import { ActionProjectType } from "@app/db/schemas"; import { TLicenseServiceFactory } from "@app/ee/services/license/license-service"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { @@ -85,8 +84,7 @@ export const dynamicSecretLeaseServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const plan = await licenseService.getPlan(actorOrgId); @@ -202,8 +200,7 @@ export const dynamicSecretLeaseServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const { decryptor: secretManagerDecryptor } = await kmsService.createCipherPairWithDataKey({ @@ -300,8 +297,7 @@ export const dynamicSecretLeaseServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const { decryptor: secretManagerDecryptor } = await kmsService.createCipherPairWithDataKey({ @@ -389,8 +385,7 @@ export const dynamicSecretLeaseServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const folder = await folderDAL.findBySecretPath(projectId, environmentSlug, path); @@ -437,8 +432,7 @@ export const dynamicSecretLeaseServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const folder = await folderDAL.findBySecretPath(projectId, environmentSlug, path); diff --git a/backend/src/ee/services/dynamic-secret/dynamic-secret-service.ts b/backend/src/ee/services/dynamic-secret/dynamic-secret-service.ts index d0d14ddaf..bfa39f39b 100644 --- a/backend/src/ee/services/dynamic-secret/dynamic-secret-service.ts +++ b/backend/src/ee/services/dynamic-secret/dynamic-secret-service.ts @@ -1,6 +1,5 @@ import { ForbiddenError, subject } from "@casl/ability"; -import { ActionProjectType } from "@app/db/schemas"; import { TLicenseServiceFactory } from "@app/ee/services/license/license-service"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { @@ -78,8 +77,7 @@ export const dynamicSecretServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -202,8 +200,7 @@ export const dynamicSecretServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const plan = await licenseService.getPlan(actorOrgId); @@ -354,8 +351,7 @@ export const dynamicSecretServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const folder = await folderDAL.findBySecretPath(projectId, environmentSlug, path); @@ -420,8 +416,7 @@ export const dynamicSecretServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const folder = await folderDAL.findBySecretPath(projectId, environmentSlug, path); @@ -485,8 +480,7 @@ export const dynamicSecretServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); // verify user has access to each env in request @@ -529,8 +523,7 @@ export const dynamicSecretServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionDynamicSecretActions.ReadRootCredential, @@ -578,8 +571,7 @@ export const dynamicSecretServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const folder = await folderDAL.findBySecretPath(projectId, environmentSlug, path); @@ -616,8 +608,7 @@ export const dynamicSecretServiceFactory = ({ actorId: actor.id, projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId: actor.orgId }); const userAccessibleFolderMappings = folderMappings.filter(({ path, environment }) => @@ -661,8 +652,7 @@ export const dynamicSecretServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const folders = await folderDAL.findBySecretPathMultiEnv(projectId, environmentSlugs, path); diff --git a/backend/src/ee/services/identity-project-additional-privilege-v2/identity-project-additional-privilege-v2-service.ts b/backend/src/ee/services/identity-project-additional-privilege-v2/identity-project-additional-privilege-v2-service.ts index 64da588f8..485e46885 100644 --- a/backend/src/ee/services/identity-project-additional-privilege-v2/identity-project-additional-privilege-v2-service.ts +++ b/backend/src/ee/services/identity-project-additional-privilege-v2/identity-project-additional-privilege-v2-service.ts @@ -1,7 +1,7 @@ import { ForbiddenError, subject } from "@casl/ability"; import { packRules } from "@casl/ability/extra"; -import { ActionProjectType, TableName } from "@app/db/schemas"; +import { TableName } from "@app/db/schemas"; import { BadRequestError, NotFoundError, PermissionBoundaryError } from "@app/lib/errors"; import { ms } from "@app/lib/ms"; import { validateHandlebarTemplate } from "@app/lib/template/validate-handlebars"; @@ -61,8 +61,7 @@ export const identityProjectAdditionalPrivilegeV2ServiceFactory = ({ actorId, projectId: identityProjectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionIdentityActions.Edit, @@ -73,8 +72,7 @@ export const identityProjectAdditionalPrivilegeV2ServiceFactory = ({ actorId: identityId, projectId: identityProjectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); // we need to validate that the privilege given is not higher than the assigning users permission @@ -160,8 +158,7 @@ export const identityProjectAdditionalPrivilegeV2ServiceFactory = ({ actorId, projectId: identityProjectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionIdentityActions.Edit, @@ -172,8 +169,7 @@ export const identityProjectAdditionalPrivilegeV2ServiceFactory = ({ actorId: identityProjectMembership.identityId, projectId: identityProjectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); // we need to validate that the privilege given is not higher than the assigning users permission @@ -260,8 +256,7 @@ export const identityProjectAdditionalPrivilegeV2ServiceFactory = ({ actorId, projectId: identityProjectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionIdentityActions.Edit, @@ -272,8 +267,7 @@ export const identityProjectAdditionalPrivilegeV2ServiceFactory = ({ actorId: identityProjectMembership.identityId, projectId: identityProjectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); const permissionBoundary = validatePrivilegeChangeOperation( membership.shouldUseNewPrivilegeSystem, @@ -321,8 +315,7 @@ export const identityProjectAdditionalPrivilegeV2ServiceFactory = ({ actorId, projectId: identityProjectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionIdentityActions.Read, @@ -356,8 +349,7 @@ export const identityProjectAdditionalPrivilegeV2ServiceFactory = ({ actorId, projectId: identityProjectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionIdentityActions.Read, @@ -392,8 +384,7 @@ export const identityProjectAdditionalPrivilegeV2ServiceFactory = ({ actorId, projectId: identityProjectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionIdentityActions.Read, diff --git a/backend/src/ee/services/identity-project-additional-privilege/identity-project-additional-privilege-service.ts b/backend/src/ee/services/identity-project-additional-privilege/identity-project-additional-privilege-service.ts index 828cf43a3..747e13f15 100644 --- a/backend/src/ee/services/identity-project-additional-privilege/identity-project-additional-privilege-service.ts +++ b/backend/src/ee/services/identity-project-additional-privilege/identity-project-additional-privilege-service.ts @@ -1,7 +1,6 @@ import { ForbiddenError, MongoAbility, RawRuleOf, subject } from "@casl/ability"; import { PackRule, packRules, unpackRules } from "@casl/ability/extra"; -import { ActionProjectType } from "@app/db/schemas"; import { BadRequestError, NotFoundError, PermissionBoundaryError } from "@app/lib/errors"; import { ms } from "@app/lib/ms"; import { validateHandlebarTemplate } from "@app/lib/template/validate-handlebars"; @@ -73,8 +72,7 @@ export const identityProjectAdditionalPrivilegeServiceFactory = ({ actorId, projectId: identityProjectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -87,8 +85,7 @@ export const identityProjectAdditionalPrivilegeServiceFactory = ({ actorId: identityId, projectId: identityProjectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); // we need to validate that the privilege given is not higher than the assigning users permission @@ -175,8 +172,7 @@ export const identityProjectAdditionalPrivilegeServiceFactory = ({ actorId, projectId: identityProjectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -189,8 +185,7 @@ export const identityProjectAdditionalPrivilegeServiceFactory = ({ actorId: identityProjectMembership.identityId, projectId: identityProjectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); // we need to validate that the privilege given is not higher than the assigning users permission @@ -293,8 +288,7 @@ export const identityProjectAdditionalPrivilegeServiceFactory = ({ actorId, projectId: identityProjectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionIdentityActions.Edit, @@ -306,8 +300,7 @@ export const identityProjectAdditionalPrivilegeServiceFactory = ({ actorId: identityProjectMembership.identityId, projectId: identityProjectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); const permissionBoundary = validatePrivilegeChangeOperation( membership.shouldUseNewPrivilegeSystem, @@ -366,8 +359,7 @@ export const identityProjectAdditionalPrivilegeServiceFactory = ({ actorId, projectId: identityProjectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionIdentityActions.Read, @@ -409,8 +401,7 @@ export const identityProjectAdditionalPrivilegeServiceFactory = ({ actorId, projectId: identityProjectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( diff --git a/backend/src/ee/services/kmip/kmip-service.ts b/backend/src/ee/services/kmip/kmip-service.ts index f8c52fe56..45a068a02 100644 --- a/backend/src/ee/services/kmip/kmip-service.ts +++ b/backend/src/ee/services/kmip/kmip-service.ts @@ -2,7 +2,6 @@ import { ForbiddenError } from "@casl/ability"; import * as x509 from "@peculiar/x509"; import crypto, { KeyObject } from "crypto"; -import { ActionProjectType } from "@app/db/schemas"; import { BadRequestError, InternalServerError, NotFoundError } from "@app/lib/errors"; import { isValidIp } from "@app/lib/ip"; import { ms } from "@app/lib/ms"; @@ -73,8 +72,7 @@ export const kmipServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.KMS + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -127,8 +125,7 @@ export const kmipServiceFactory = ({ actorId, projectId: kmipClient.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.KMS + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -159,8 +156,7 @@ export const kmipServiceFactory = ({ actorId, projectId: kmipClient.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.KMS + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -193,8 +189,7 @@ export const kmipServiceFactory = ({ actorId, projectId: kmipClient.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.KMS + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionKmipActions.ReadClients, ProjectPermissionSub.Kmip); @@ -215,8 +210,7 @@ export const kmipServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.KMS + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionKmipActions.ReadClients, ProjectPermissionSub.Kmip); @@ -252,8 +246,7 @@ export const kmipServiceFactory = ({ actorId, projectId: kmipClient.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.KMS + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( diff --git a/backend/src/ee/services/permission/permission-service-types.ts b/backend/src/ee/services/permission/permission-service-types.ts index 5e71c65d9..72df88982 100644 --- a/backend/src/ee/services/permission/permission-service-types.ts +++ b/backend/src/ee/services/permission/permission-service-types.ts @@ -1,7 +1,6 @@ import { MongoAbility, RawRuleOf } from "@casl/ability"; import { MongoQuery } from "@ucast/mongo2js"; -import { ActionProjectType } from "@app/db/schemas"; import { ActorAuthMethod, ActorType } from "@app/services/auth/auth-type"; import { OrgPermissionSet } from "./org-permission"; @@ -21,7 +20,6 @@ export type TGetUserProjectPermissionArg = { userId: string; projectId: string; authMethod: ActorAuthMethod; - actionProjectType: ActionProjectType; userOrgId?: string; }; @@ -29,14 +27,12 @@ export type TGetIdentityProjectPermissionArg = { identityId: string; projectId: string; identityOrgId?: string; - actionProjectType: ActionProjectType; }; export type TGetServiceTokenProjectPermissionArg = { serviceTokenId: string; projectId: string; actorOrgId?: string; - actionProjectType: ActionProjectType; }; export type TGetProjectPermissionArg = { @@ -45,7 +41,6 @@ export type TGetProjectPermissionArg = { projectId: string; actorAuthMethod: ActorAuthMethod; actorOrgId?: string; - actionProjectType: ActionProjectType; }; export type TPermissionServiceFactory = { @@ -143,13 +138,7 @@ export type TPermissionServiceFactory = { }; } >; - getUserProjectPermission: ({ - userId, - projectId, - authMethod, - userOrgId, - actionProjectType - }: TGetUserProjectPermissionArg) => Promise<{ + getUserProjectPermission: ({ userId, projectId, authMethod, userOrgId }: TGetUserProjectPermissionArg) => Promise<{ permission: MongoAbility; membership: { id: string; diff --git a/backend/src/ee/services/permission/permission-service.ts b/backend/src/ee/services/permission/permission-service.ts index 85ee82cca..32c01dcfb 100644 --- a/backend/src/ee/services/permission/permission-service.ts +++ b/backend/src/ee/services/permission/permission-service.ts @@ -5,7 +5,6 @@ import { MongoQuery } from "@ucast/mongo2js"; import handlebars from "handlebars"; import { - ActionProjectType, OrgMembershipRole, ProjectMembershipRole, ServiceTokenScopes, @@ -214,8 +213,7 @@ export const permissionServiceFactory = ({ userId, projectId, authMethod, - userOrgId, - actionProjectType + userOrgId }: TGetUserProjectPermissionArg): Promise> => { const userProjectPermission = await permissionDAL.getProjectPermission(userId, projectId); if (!userProjectPermission) throw new ForbiddenRequestError({ name: "User not a part of the specified project" }); @@ -242,12 +240,6 @@ export const permissionServiceFactory = ({ userProjectPermission.orgRole ); - if (actionProjectType !== ActionProjectType.Any && actionProjectType !== userProjectPermission.projectType) { - throw new BadRequestError({ - message: `The project is of type ${userProjectPermission.projectType}. Operations of type ${actionProjectType} are not allowed.` - }); - } - // join two permissions and pass to build the final permission set const rolePermissions = userProjectPermission.roles?.map(({ role, permissions }) => ({ role, permissions })) || []; const additionalPrivileges = @@ -295,8 +287,7 @@ export const permissionServiceFactory = ({ const getIdentityProjectPermission = async ({ identityId, projectId, - identityOrgId, - actionProjectType + identityOrgId }: TGetIdentityProjectPermissionArg): Promise> => { const identityProjectPermission = await permissionDAL.getProjectIdentityPermission(identityId, projectId); if (!identityProjectPermission) @@ -316,12 +307,6 @@ export const permissionServiceFactory = ({ throw new ForbiddenRequestError({ name: "Identity is not a member of the specified organization" }); } - if (actionProjectType !== ActionProjectType.Any && actionProjectType !== identityProjectPermission.projectType) { - throw new BadRequestError({ - message: `The project is of type ${identityProjectPermission.projectType}. Operations of type ${actionProjectType} are not allowed.` - }); - } - const rolePermissions = identityProjectPermission.roles?.map(({ role, permissions }) => ({ role, permissions })) || []; const additionalPrivileges = @@ -376,8 +361,7 @@ export const permissionServiceFactory = ({ const getServiceTokenProjectPermission = async ({ serviceTokenId, projectId, - actorOrgId, - actionProjectType + actorOrgId }: TGetServiceTokenProjectPermissionArg) => { const serviceToken = await serviceTokenDAL.findById(serviceTokenId); if (!serviceToken) throw new NotFoundError({ message: `Service token with ID '${serviceTokenId}' not found` }); @@ -402,12 +386,6 @@ export const permissionServiceFactory = ({ }); } - if (actionProjectType !== ActionProjectType.Any && actionProjectType !== serviceTokenProject.type) { - throw new BadRequestError({ - message: `The project is of type ${serviceTokenProject.type}. Operations of type ${actionProjectType} are not allowed.` - }); - } - const scopes = ServiceTokenScopes.parse(serviceToken.scopes || []); return { permission: buildServiceTokenProjectPermission(scopes, serviceToken.permissions), @@ -559,8 +537,7 @@ export const permissionServiceFactory = ({ actorId: inputActorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType + actorOrgId }: TGetProjectPermissionArg): Promise> => { let actor = inputActor; let actorId = inputActorId; @@ -581,22 +558,19 @@ export const permissionServiceFactory = ({ userId: actorId, projectId, authMethod: actorAuthMethod, - userOrgId: actorOrgId, - actionProjectType + userOrgId: actorOrgId }) as Promise>; case ActorType.SERVICE: return getServiceTokenProjectPermission({ serviceTokenId: actorId, projectId, - actorOrgId, - actionProjectType + actorOrgId }) as Promise>; case ActorType.IDENTITY: return getIdentityProjectPermission({ identityId: actorId, projectId, - identityOrgId: actorOrgId, - actionProjectType + identityOrgId: actorOrgId }) as Promise>; default: throw new BadRequestError({ diff --git a/backend/src/ee/services/pit/pit-service.ts b/backend/src/ee/services/pit/pit-service.ts index 0eb223fb4..c2a485b35 100644 --- a/backend/src/ee/services/pit/pit-service.ts +++ b/backend/src/ee/services/pit/pit-service.ts @@ -1,7 +1,6 @@ /* eslint-disable no-await-in-loop */ import { ForbiddenError } from "@casl/ability"; -import { ActionProjectType } from "@app/db/schemas"; import { ProjectPermissionCommitsActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; import { NotFoundError } from "@app/lib/errors"; import { logger } from "@app/lib/logger"; @@ -321,8 +320,7 @@ export const pitServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(userPermission).throwUnlessCan( diff --git a/backend/src/ee/services/project-user-additional-privilege/project-user-additional-privilege-service.ts b/backend/src/ee/services/project-user-additional-privilege/project-user-additional-privilege-service.ts index 944775156..d44ab054d 100644 --- a/backend/src/ee/services/project-user-additional-privilege/project-user-additional-privilege-service.ts +++ b/backend/src/ee/services/project-user-additional-privilege/project-user-additional-privilege-service.ts @@ -1,7 +1,7 @@ import { ForbiddenError, MongoAbility, RawRuleOf } from "@casl/ability"; import { PackRule, packRules, unpackRules } from "@casl/ability/extra"; -import { ActionProjectType, TableName } from "@app/db/schemas"; +import { TableName } from "@app/db/schemas"; import { BadRequestError, NotFoundError, PermissionBoundaryError } from "@app/lib/errors"; import { ms } from "@app/lib/ms"; import { validateHandlebarTemplate } from "@app/lib/template/validate-handlebars"; @@ -61,8 +61,7 @@ export const projectUserAdditionalPrivilegeServiceFactory = ({ actorId, projectId: projectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionMemberActions.Edit, ProjectPermissionSub.Member); const { permission: targetUserPermission, membership } = await permissionService.getProjectPermission({ @@ -70,8 +69,7 @@ export const projectUserAdditionalPrivilegeServiceFactory = ({ actorId: projectMembership.userId, projectId: projectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); // we need to validate that the privilege given is not higher than the assigning users permission @@ -166,8 +164,7 @@ export const projectUserAdditionalPrivilegeServiceFactory = ({ actorId, projectId: projectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionMemberActions.Edit, ProjectPermissionSub.Member); const { permission: targetUserPermission } = await permissionService.getProjectPermission({ @@ -175,8 +172,7 @@ export const projectUserAdditionalPrivilegeServiceFactory = ({ actorId: projectMembership.userId, projectId: projectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); // we need to validate that the privilege given is not higher than the assigning users permission @@ -276,8 +272,7 @@ export const projectUserAdditionalPrivilegeServiceFactory = ({ actorId, projectId: projectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionMemberActions.Edit, ProjectPermissionSub.Member); @@ -322,8 +317,7 @@ export const projectUserAdditionalPrivilegeServiceFactory = ({ actorId, projectId: projectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionMemberActions.Read, ProjectPermissionSub.Member); @@ -349,8 +343,7 @@ export const projectUserAdditionalPrivilegeServiceFactory = ({ actorId, projectId: projectMembership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionMemberActions.Read, ProjectPermissionSub.Member); diff --git a/backend/src/ee/services/secret-approval-policy/secret-approval-policy-service.ts b/backend/src/ee/services/secret-approval-policy/secret-approval-policy-service.ts index c8df810ed..cb497aa7d 100644 --- a/backend/src/ee/services/secret-approval-policy/secret-approval-policy-service.ts +++ b/backend/src/ee/services/secret-approval-policy/secret-approval-policy-service.ts @@ -1,7 +1,6 @@ import { ForbiddenError } from "@casl/ability"; import picomatch from "picomatch"; -import { ActionProjectType } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; import { BadRequestError, NotFoundError } from "@app/lib/errors"; @@ -91,8 +90,7 @@ export const secretApprovalPolicyServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionActions.Create, @@ -267,8 +265,7 @@ export const secretApprovalPolicyServiceFactory = ({ actorId, projectId: secretApprovalPolicy.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.SecretApproval); @@ -423,8 +420,7 @@ export const secretApprovalPolicyServiceFactory = ({ actorId, projectId: sapPolicy.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionActions.Delete, @@ -463,8 +459,7 @@ export const secretApprovalPolicyServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.SecretApproval); @@ -508,8 +503,7 @@ export const secretApprovalPolicyServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); return getSecretApprovalPolicy(projectId, environment, secretPath); @@ -535,8 +529,7 @@ export const secretApprovalPolicyServiceFactory = ({ actorId, projectId: sapPolicy.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.SecretApproval); diff --git a/backend/src/ee/services/secret-approval-request/secret-approval-request-service.ts b/backend/src/ee/services/secret-approval-request/secret-approval-request-service.ts index 49f336111..ab0314473 100644 --- a/backend/src/ee/services/secret-approval-request/secret-approval-request-service.ts +++ b/backend/src/ee/services/secret-approval-request/secret-approval-request-service.ts @@ -2,7 +2,6 @@ import { ForbiddenError, subject } from "@casl/ability"; import { - ActionProjectType, ProjectMembershipRole, SecretEncryptionAlgo, SecretKeyEncoding, @@ -176,8 +175,7 @@ export const secretApprovalRequestServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const count = await secretApprovalRequestDAL.findProjectRequestCount(projectId, actorId); @@ -204,8 +202,7 @@ export const secretApprovalRequestServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const { shouldUseSecretV2Bridge } = await projectBotService.getBotKey(projectId); @@ -257,8 +254,7 @@ export const secretApprovalRequestServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); if ( !hasRole(ProjectMembershipRole.Admin) && @@ -407,8 +403,7 @@ export const secretApprovalRequestServiceFactory = ({ actorId, projectId: secretApprovalRequest.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); if ( !hasRole(ProjectMembershipRole.Admin) && @@ -477,8 +472,7 @@ export const secretApprovalRequestServiceFactory = ({ actorId, projectId: secretApprovalRequest.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); if ( !hasRole(ProjectMembershipRole.Admin) && @@ -534,8 +528,7 @@ export const secretApprovalRequestServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); if ( @@ -980,8 +973,7 @@ export const secretApprovalRequestServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); throwIfMissingSecretReadValueOrDescribePermission(permission, ProjectPermissionSecretActions.ReadValue, { @@ -1271,8 +1263,7 @@ export const secretApprovalRequestServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const folder = await folderDAL.findBySecretPath(projectId, environment, secretPath); if (!folder) diff --git a/backend/src/ee/services/secret-rotation-v2/secret-rotation-v2-service.ts b/backend/src/ee/services/secret-rotation-v2/secret-rotation-v2-service.ts index c1b5b8c25..cd88f889e 100644 --- a/backend/src/ee/services/secret-rotation-v2/secret-rotation-v2-service.ts +++ b/backend/src/ee/services/secret-rotation-v2/secret-rotation-v2-service.ts @@ -2,7 +2,7 @@ import { ForbiddenError, subject } from "@casl/ability"; import { Knex } from "knex"; import isEqual from "lodash.isequal"; -import { ActionProjectType, SecretType, TableName } from "@app/db/schemas"; +import { SecretType, TableName } from "@app/db/schemas"; import { EventType, TAuditLogServiceFactory } from "@app/ee/services/audit-log/audit-log-types"; import { TLicenseServiceFactory } from "@app/ee/services/license/license-service"; import { hasSecretReadValueOrDescribePermission } from "@app/ee/services/permission/permission-fns"; @@ -218,7 +218,7 @@ export const secretRotationV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId }); @@ -269,7 +269,7 @@ export const secretRotationV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId }); @@ -315,7 +315,7 @@ export const secretRotationV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId }); @@ -380,7 +380,7 @@ export const secretRotationV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId }); @@ -424,7 +424,7 @@ export const secretRotationV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId }); @@ -625,7 +625,7 @@ export const secretRotationV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId }); @@ -775,7 +775,7 @@ export const secretRotationV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId }); @@ -1105,7 +1105,7 @@ export const secretRotationV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId }); @@ -1152,7 +1152,7 @@ export const secretRotationV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId }); @@ -1204,7 +1204,7 @@ export const secretRotationV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId }); @@ -1320,8 +1320,7 @@ export const secretRotationV2ServiceFactory = ({ actorId: actor.id, projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId: actor.orgId }); const permissiveFolderMappings = folderMappings.filter(({ path, environment }) => diff --git a/backend/src/ee/services/secret-rotation/secret-rotation-service.ts b/backend/src/ee/services/secret-rotation/secret-rotation-service.ts index 1099e17a7..4f366870f 100644 --- a/backend/src/ee/services/secret-rotation/secret-rotation-service.ts +++ b/backend/src/ee/services/secret-rotation/secret-rotation-service.ts @@ -1,7 +1,7 @@ import { ForbiddenError, subject } from "@casl/ability"; import Ajv from "ajv"; -import { ActionProjectType, ProjectVersion, TableName } from "@app/db/schemas"; +import { ProjectVersion, TableName } from "@app/db/schemas"; import { decryptSymmetric128BitHexKeyUTF8 } from "@app/lib/crypto/encryption"; import { BadRequestError, NotFoundError } from "@app/lib/errors"; import { TProjectPermission } from "@app/lib/types"; @@ -66,8 +66,7 @@ export const secretRotationServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionSecretRotationActions.Read, @@ -98,8 +97,7 @@ export const secretRotationServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionSecretRotationActions.Read, @@ -215,8 +213,7 @@ export const secretRotationServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionSecretRotationActions.Read, @@ -264,8 +261,7 @@ export const secretRotationServiceFactory = ({ actorId, projectId: project.id, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionSecretRotationActions.Edit, @@ -285,8 +281,7 @@ export const secretRotationServiceFactory = ({ actorId, projectId: doc.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionSecretRotationActions.Delete, diff --git a/backend/src/ee/services/secret-scanning-v2/secret-scanning-v2-service.ts b/backend/src/ee/services/secret-scanning-v2/secret-scanning-v2-service.ts index 34a981116..f1f09506f 100644 --- a/backend/src/ee/services/secret-scanning-v2/secret-scanning-v2-service.ts +++ b/backend/src/ee/services/secret-scanning-v2/secret-scanning-v2-service.ts @@ -1,7 +1,6 @@ import { ForbiddenError } from "@casl/ability"; import { join } from "path"; -import { ActionProjectType } from "@app/db/schemas"; import { TLicenseServiceFactory } from "@app/ee/services/license/license-service"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { @@ -92,7 +91,7 @@ export const secretScanningV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretScanning, + projectId }); @@ -154,7 +153,7 @@ export const secretScanningV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretScanning, + projectId: dataSource.projectId }); @@ -199,7 +198,7 @@ export const secretScanningV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretScanning, + projectId }); @@ -233,7 +232,7 @@ export const secretScanningV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretScanning, + projectId: payload.projectId }); @@ -346,7 +345,7 @@ export const secretScanningV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretScanning, + projectId: dataSource.projectId }); @@ -399,7 +398,7 @@ export const secretScanningV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretScanning, + projectId: dataSource.projectId }); @@ -444,7 +443,7 @@ export const secretScanningV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretScanning, + projectId: dataSource.projectId }); @@ -508,7 +507,7 @@ export const secretScanningV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretScanning, + projectId: dataSource.projectId }); @@ -553,7 +552,7 @@ export const secretScanningV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretScanning, + projectId: dataSource.projectId }); @@ -596,7 +595,7 @@ export const secretScanningV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretScanning, + projectId: dataSource.projectId }); @@ -639,7 +638,7 @@ export const secretScanningV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretScanning, + projectId: dataSource.projectId }); @@ -672,7 +671,7 @@ export const secretScanningV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretScanning, + projectId }); @@ -706,7 +705,7 @@ export const secretScanningV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretScanning, + projectId }); @@ -746,7 +745,7 @@ export const secretScanningV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretScanning, + projectId: finding.projectId }); @@ -777,7 +776,7 @@ export const secretScanningV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretScanning, + projectId }); @@ -812,7 +811,7 @@ export const secretScanningV2ServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretScanning, + projectId }); diff --git a/backend/src/ee/services/secret-snapshot/secret-snapshot-service.ts b/backend/src/ee/services/secret-snapshot/secret-snapshot-service.ts index c9f6dac9d..f4d2e5e3d 100644 --- a/backend/src/ee/services/secret-snapshot/secret-snapshot-service.ts +++ b/backend/src/ee/services/secret-snapshot/secret-snapshot-service.ts @@ -2,7 +2,7 @@ // akhilmhdh: I did this, quite strange bug with eslint. Everything do have a type stil has this error import { ForbiddenError } from "@casl/ability"; -import { ActionProjectType, TableName, TSecretTagJunctionInsert, TSecretV2TagJunctionInsert } from "@app/db/schemas"; +import { TableName, TSecretTagJunctionInsert, TSecretV2TagJunctionInsert } from "@app/db/schemas"; import { decryptSymmetric128BitHexKeyUTF8 } from "@app/lib/crypto"; import { InternalServerError, NotFoundError } from "@app/lib/errors"; import { groupBy } from "@app/lib/fn"; @@ -103,8 +103,7 @@ export const secretSnapshotServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.SecretRollback); @@ -140,8 +139,7 @@ export const secretSnapshotServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.SecretRollback); @@ -169,8 +167,7 @@ export const secretSnapshotServiceFactory = ({ actorId, projectId: snapshot.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.SecretRollback); @@ -390,8 +387,7 @@ export const secretSnapshotServiceFactory = ({ actorId, projectId: snapshot.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionActions.Create, diff --git a/backend/src/ee/services/ssh-certificate-template/ssh-certificate-template-service.ts b/backend/src/ee/services/ssh-certificate-template/ssh-certificate-template-service.ts index 49d8c1ab6..e679fdfac 100644 --- a/backend/src/ee/services/ssh-certificate-template/ssh-certificate-template-service.ts +++ b/backend/src/ee/services/ssh-certificate-template/ssh-certificate-template-service.ts @@ -1,6 +1,5 @@ import { ForbiddenError } from "@casl/ability"; -import { ActionProjectType } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; import { BadRequestError, NotFoundError } from "@app/lib/errors"; @@ -59,8 +58,7 @@ export const sshCertificateTemplateServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -132,8 +130,7 @@ export const sshCertificateTemplateServiceFactory = ({ actorId, projectId: certTemplate.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -201,8 +198,7 @@ export const sshCertificateTemplateServiceFactory = ({ actorId, projectId: certificateTemplate.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -228,8 +224,7 @@ export const sshCertificateTemplateServiceFactory = ({ actorId, projectId: certTemplate.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( diff --git a/backend/src/ee/services/ssh-host-group/ssh-host-group-service.ts b/backend/src/ee/services/ssh-host-group/ssh-host-group-service.ts index aa6d4f66a..fba849d93 100644 --- a/backend/src/ee/services/ssh-host-group/ssh-host-group-service.ts +++ b/backend/src/ee/services/ssh-host-group/ssh-host-group-service.ts @@ -1,6 +1,5 @@ import { ForbiddenError } from "@casl/ability"; -import { ActionProjectType } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; import { TSshHostDALFactory } from "@app/ee/services/ssh-host/ssh-host-dal"; @@ -80,8 +79,7 @@ export const sshHostGroupServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Create, ProjectPermissionSub.SshHostGroups); @@ -173,8 +171,7 @@ export const sshHostGroupServiceFactory = ({ actorId, projectId: sshHostGroup.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.SshHostGroups); @@ -270,8 +267,7 @@ export const sshHostGroupServiceFactory = ({ actorId, projectId: sshHostGroup.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.SshHostGroups); @@ -294,8 +290,7 @@ export const sshHostGroupServiceFactory = ({ actorId, projectId: sshHostGroup.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Delete, ProjectPermissionSub.SshHostGroups); @@ -321,8 +316,7 @@ export const sshHostGroupServiceFactory = ({ actorId, projectId: sshHostGroup.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.SshHostGroups); @@ -360,8 +354,7 @@ export const sshHostGroupServiceFactory = ({ actorId, projectId: sshHostGroup.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.SshHostGroups); @@ -400,8 +393,7 @@ export const sshHostGroupServiceFactory = ({ actorId, projectId: sshHostGroup.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.SshHostGroups); diff --git a/backend/src/ee/services/ssh-host/ssh-host-fns.ts b/backend/src/ee/services/ssh-host/ssh-host-fns.ts index dec15e093..5b2f98728 100644 --- a/backend/src/ee/services/ssh-host/ssh-host-fns.ts +++ b/backend/src/ee/services/ssh-host/ssh-host-fns.ts @@ -1,6 +1,5 @@ import { Knex } from "knex"; -import { ActionProjectType } from "@app/db/schemas"; import { BadRequestError } from "@app/lib/errors"; import { ProjectPermissionSshHostActions, ProjectPermissionSub } from "../permission/project-permission"; @@ -63,8 +62,7 @@ export const createSshLoginMappings = async ({ userId: user.id, projectId, authMethod: actorAuthMethod, - userOrgId: actorOrgId, - actionProjectType: ActionProjectType.SSH + userOrgId: actorOrgId }); } diff --git a/backend/src/ee/services/ssh-host/ssh-host-service.ts b/backend/src/ee/services/ssh-host/ssh-host-service.ts index 64abfebbc..e4136431a 100644 --- a/backend/src/ee/services/ssh-host/ssh-host-service.ts +++ b/backend/src/ee/services/ssh-host/ssh-host-service.ts @@ -1,6 +1,6 @@ import { ForbiddenError, subject } from "@casl/ability"; -import { ActionProjectType, ProjectType } from "@app/db/schemas"; +import { ProjectType } from "@app/db/schemas"; import { TGroupDALFactory } from "@app/ee/services/group/group-dal"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionSshHostActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; @@ -111,8 +111,7 @@ export const sshHostServiceFactory = ({ actorId, projectId: project.id, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); const projectHosts = await sshHostDAL.findUserAccessibleSshHosts([project.id], actorId); @@ -145,8 +144,7 @@ export const sshHostServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -257,8 +255,7 @@ export const sshHostServiceFactory = ({ actorId, projectId: host.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -319,8 +316,7 @@ export const sshHostServiceFactory = ({ actorId, projectId: host.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -348,8 +344,7 @@ export const sshHostServiceFactory = ({ actorId, projectId: host.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -388,8 +383,7 @@ export const sshHostServiceFactory = ({ actorId, projectId: host.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); const internalPrincipals = await convertActorToPrincipals({ @@ -508,8 +502,7 @@ export const sshHostServiceFactory = ({ actorId, projectId: host.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( diff --git a/backend/src/ee/services/ssh/ssh-certificate-authority-service.ts b/backend/src/ee/services/ssh/ssh-certificate-authority-service.ts index 6c35f0ddd..2e45c836d 100644 --- a/backend/src/ee/services/ssh/ssh-certificate-authority-service.ts +++ b/backend/src/ee/services/ssh/ssh-certificate-authority-service.ts @@ -1,6 +1,5 @@ import { ForbiddenError } from "@casl/ability"; -import { ActionProjectType } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; import { TSshCertificateAuthorityDALFactory } from "@app/ee/services/ssh/ssh-certificate-authority-dal"; @@ -73,8 +72,7 @@ export const sshCertificateAuthorityServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -109,8 +107,7 @@ export const sshCertificateAuthorityServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -178,8 +175,7 @@ export const sshCertificateAuthorityServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -217,8 +213,7 @@ export const sshCertificateAuthorityServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -259,8 +254,7 @@ export const sshCertificateAuthorityServiceFactory = ({ actorId, projectId: sshCertificateTemplate.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -381,8 +375,7 @@ export const sshCertificateAuthorityServiceFactory = ({ actorId, projectId: sshCertificateTemplate.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -479,8 +472,7 @@ export const sshCertificateAuthorityServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( diff --git a/backend/src/ee/services/trusted-ip/trusted-ip-service.ts b/backend/src/ee/services/trusted-ip/trusted-ip-service.ts index 6b9686e25..69e7e5e1d 100644 --- a/backend/src/ee/services/trusted-ip/trusted-ip-service.ts +++ b/backend/src/ee/services/trusted-ip/trusted-ip-service.ts @@ -1,6 +1,5 @@ import { ForbiddenError } from "@casl/ability"; -import { ActionProjectType } from "@app/db/schemas"; import { BadRequestError } from "@app/lib/errors"; import { extractIPDetails, isValidIpOrCidr } from "@app/lib/ip"; import { TProjectDALFactory } from "@app/services/project/project-dal"; @@ -36,8 +35,7 @@ export const trustedIpServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.IpAllowList); const trustedIps = await trustedIpDAL.find({ @@ -61,8 +59,7 @@ export const trustedIpServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Create, ProjectPermissionSub.IpAllowList); @@ -107,8 +104,7 @@ export const trustedIpServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Create, ProjectPermissionSub.IpAllowList); @@ -153,8 +149,7 @@ export const trustedIpServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Create, ProjectPermissionSub.IpAllowList); diff --git a/backend/src/server/routes/v1/project-router.ts b/backend/src/server/routes/v1/project-router.ts index cc94adede..8a7071516 100644 --- a/backend/src/server/routes/v1/project-router.ts +++ b/backend/src/server/routes/v1/project-router.ts @@ -1059,7 +1059,6 @@ export const registerProjectRouter = async (server: FastifyZodProvider) => { body: z.object({ limit: z.number().default(100), offset: z.number().default(0), - type: z.nativeEnum(ProjectType).optional(), orderBy: z.nativeEnum(SearchProjectSortBy).optional().default(SearchProjectSortBy.NAME), orderDirection: z.nativeEnum(SortDirection).optional().default(SortDirection.ASC), name: z diff --git a/backend/src/services/certificate-authority/certificate-authority-service.ts b/backend/src/services/certificate-authority/certificate-authority-service.ts index 8a2aa0a5d..0954cbfb6 100644 --- a/backend/src/services/certificate-authority/certificate-authority-service.ts +++ b/backend/src/services/certificate-authority/certificate-authority-service.ts @@ -1,6 +1,6 @@ import { ForbiddenError } from "@casl/ability"; -import { ActionProjectType, ProjectType, TableName } from "@app/db/schemas"; +import { ProjectType, TableName } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; import { BadRequestError, NotFoundError } from "@app/lib/errors"; @@ -113,8 +113,7 @@ export const certificateAuthorityServiceFactory = ({ actorId: actor.id, projectId: finalProjectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId: actor.orgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -181,8 +180,7 @@ export const certificateAuthorityServiceFactory = ({ actorId: actor.id, projectId: certificateAuthority.projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId: actor.orgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -240,8 +238,7 @@ export const certificateAuthorityServiceFactory = ({ actorId: actor.id, projectId: finalProjectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId: actor.orgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -294,8 +291,7 @@ export const certificateAuthorityServiceFactory = ({ actorId: actor.id, projectId: certificateAuthority.projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId: actor.orgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -368,8 +364,7 @@ export const certificateAuthorityServiceFactory = ({ actorId: actor.id, projectId: certificateAuthority.projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId: actor.orgId }); ForbiddenError.from(permission).throwUnlessCan( diff --git a/backend/src/services/certificate-authority/internal/internal-certificate-authority-service.ts b/backend/src/services/certificate-authority/internal/internal-certificate-authority-service.ts index 98d9491f7..1cfb45ad9 100644 --- a/backend/src/services/certificate-authority/internal/internal-certificate-authority-service.ts +++ b/backend/src/services/certificate-authority/internal/internal-certificate-authority-service.ts @@ -5,13 +5,7 @@ import slugify from "@sindresorhus/slugify"; import crypto, { KeyObject } from "crypto"; import { z } from "zod"; -import { - ActionProjectType, - ProjectType, - TableName, - TCertificateAuthorities, - TCertificateTemplates -} from "@app/db/schemas"; +import { ProjectType, TableName, TCertificateAuthorities, TCertificateTemplates } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionActions, @@ -167,8 +161,7 @@ export const internalCertificateAuthorityServiceFactory = ({ actorId: dto.actorId, projectId, actorAuthMethod: dto.actorAuthMethod, - actorOrgId: dto.actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId: dto.actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -351,8 +344,7 @@ export const internalCertificateAuthorityServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionActions.Read, @@ -376,8 +368,7 @@ export const internalCertificateAuthorityServiceFactory = ({ actorId: dto.actorId, projectId: ca.projectId, actorAuthMethod: dto.actorAuthMethod, - actorOrgId: dto.actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId: dto.actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -409,8 +400,7 @@ export const internalCertificateAuthorityServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -435,8 +425,7 @@ export const internalCertificateAuthorityServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -499,8 +488,7 @@ export const internalCertificateAuthorityServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -786,8 +774,7 @@ export const internalCertificateAuthorityServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -823,8 +810,7 @@ export const internalCertificateAuthorityServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -904,8 +890,7 @@ export const internalCertificateAuthorityServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -1052,8 +1037,7 @@ export const internalCertificateAuthorityServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -1224,8 +1208,7 @@ export const internalCertificateAuthorityServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -1581,8 +1564,7 @@ export const internalCertificateAuthorityServiceFactory = ({ actorId: dto.actorId, projectId: ca.projectId, actorAuthMethod: dto.actorAuthMethod, - actorOrgId: dto.actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId: dto.actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -1949,8 +1931,7 @@ export const internalCertificateAuthorityServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); const certificateTemplates = await certificateTemplateDAL.find({ caId }); diff --git a/backend/src/services/certificate-template/certificate-template-service.ts b/backend/src/services/certificate-template/certificate-template-service.ts index 4fa4e8283..f22926cb2 100644 --- a/backend/src/services/certificate-template/certificate-template-service.ts +++ b/backend/src/services/certificate-template/certificate-template-service.ts @@ -2,7 +2,7 @@ import { ForbiddenError, subject } from "@casl/ability"; import * as x509 from "@peculiar/x509"; import bcrypt from "bcrypt"; -import { ActionProjectType, TCertificateTemplateEstConfigsUpdate } from "@app/db/schemas"; +import { TCertificateTemplateEstConfigsUpdate } from "@app/db/schemas"; import { TLicenseServiceFactory } from "@app/ee/services/license/license-service"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { @@ -76,8 +76,7 @@ export const certificateTemplateServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -138,8 +137,7 @@ export const certificateTemplateServiceFactory = ({ actorId, projectId: certTemplate.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -203,8 +201,7 @@ export const certificateTemplateServiceFactory = ({ actorId, projectId: certTemplate.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -230,8 +227,7 @@ export const certificateTemplateServiceFactory = ({ actorId, projectId: certTemplate.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -272,8 +268,7 @@ export const certificateTemplateServiceFactory = ({ actorId, projectId: certTemplate.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -355,8 +350,7 @@ export const certificateTemplateServiceFactory = ({ actorId, projectId: certTemplate.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -435,8 +429,7 @@ export const certificateTemplateServiceFactory = ({ actorId: dto.actorId, projectId: certTemplate.projectId, actorAuthMethod: dto.actorAuthMethod, - actorOrgId: dto.actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId: dto.actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( diff --git a/backend/src/services/certificate/certificate-service.ts b/backend/src/services/certificate/certificate-service.ts index 5558ccd65..07467ebe8 100644 --- a/backend/src/services/certificate/certificate-service.ts +++ b/backend/src/services/certificate/certificate-service.ts @@ -2,7 +2,7 @@ import { ForbiddenError } from "@casl/ability"; import * as x509 from "@peculiar/x509"; import { createPrivateKey, createPublicKey, sign, verify } from "crypto"; -import { ActionProjectType, ProjectType } from "@app/db/schemas"; +import { ProjectType } from "@app/db/schemas"; import { TCertificateAuthorityCrlDALFactory } from "@app/ee/services/certificate-authority-crl/certificate-authority-crl-dal"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { @@ -83,8 +83,7 @@ export const certificateServiceFactory = ({ actorId, projectId: cert.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -114,8 +113,7 @@ export const certificateServiceFactory = ({ actorId, projectId: cert.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -148,8 +146,7 @@ export const certificateServiceFactory = ({ actorId, projectId: cert.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -198,8 +195,7 @@ export const certificateServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -247,8 +243,7 @@ export const certificateServiceFactory = ({ actorId, projectId: cert.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -336,8 +331,7 @@ export const certificateServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -541,8 +535,7 @@ export const certificateServiceFactory = ({ actorId, projectId: cert.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( diff --git a/backend/src/services/cmek/cmek-service.ts b/backend/src/services/cmek/cmek-service.ts index fd6cbf39d..1f316231c 100644 --- a/backend/src/services/cmek/cmek-service.ts +++ b/backend/src/services/cmek/cmek-service.ts @@ -1,6 +1,6 @@ import { ForbiddenError } from "@casl/ability"; -import { ActionProjectType, ProjectType } from "@app/db/schemas"; +import { ProjectType } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionCmekActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; import { SigningAlgorithm } from "@app/lib/crypto/sign"; @@ -47,8 +47,7 @@ export const cmekServiceFactory = ({ kmsService, kmsDAL, permissionService, proj actorId: actor.id, projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.KMS + actorOrgId: actor.orgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionCmekActions.Create, ProjectPermissionSub.Cmek); @@ -87,8 +86,7 @@ export const cmekServiceFactory = ({ kmsService, kmsDAL, permissionService, proj actorId: actor.id, projectId: key.projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.KMS + actorOrgId: actor.orgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionCmekActions.Edit, ProjectPermissionSub.Cmek); @@ -124,8 +122,7 @@ export const cmekServiceFactory = ({ kmsService, kmsDAL, permissionService, proj actorId: actor.id, projectId: key.projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.KMS + actorOrgId: actor.orgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionCmekActions.Delete, ProjectPermissionSub.Cmek); @@ -150,8 +147,7 @@ export const cmekServiceFactory = ({ kmsService, kmsDAL, permissionService, proj actorId: actor.id, projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.KMS + actorOrgId: actor.orgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionCmekActions.Read, ProjectPermissionSub.Cmek); @@ -173,8 +169,7 @@ export const cmekServiceFactory = ({ kmsService, kmsDAL, permissionService, proj actorId: actor.id, projectId: key.projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.KMS + actorOrgId: actor.orgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionCmekActions.Read, ProjectPermissionSub.Cmek); @@ -195,8 +190,7 @@ export const cmekServiceFactory = ({ kmsService, kmsDAL, permissionService, proj actorId: actor.id, projectId: key.projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.KMS + actorOrgId: actor.orgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionCmekActions.Read, ProjectPermissionSub.Cmek); @@ -218,8 +212,7 @@ export const cmekServiceFactory = ({ kmsService, kmsDAL, permissionService, proj actorId: actor.id, projectId: key.projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.KMS + actorOrgId: actor.orgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionCmekActions.Encrypt, ProjectPermissionSub.Cmek); @@ -246,8 +239,7 @@ export const cmekServiceFactory = ({ kmsService, kmsDAL, permissionService, proj actorId: actor.id, projectId: key.projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.KMS + actorOrgId: actor.orgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionCmekActions.Read, ProjectPermissionSub.Cmek); @@ -294,8 +286,7 @@ export const cmekServiceFactory = ({ kmsService, kmsDAL, permissionService, proj actorId: actor.id, projectId: key.projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.KMS + actorOrgId: actor.orgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionCmekActions.Read, ProjectPermissionSub.Cmek); @@ -318,8 +309,7 @@ export const cmekServiceFactory = ({ kmsService, kmsDAL, permissionService, proj actorId: actor.id, projectId: key.projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.KMS + actorOrgId: actor.orgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionCmekActions.Sign, ProjectPermissionSub.Cmek); @@ -353,8 +343,7 @@ export const cmekServiceFactory = ({ kmsService, kmsDAL, permissionService, proj actorId: actor.id, projectId: key.projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.KMS + actorOrgId: actor.orgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionCmekActions.Verify, ProjectPermissionSub.Cmek); @@ -389,8 +378,7 @@ export const cmekServiceFactory = ({ kmsService, kmsDAL, permissionService, proj actorId: actor.id, projectId: key.projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.KMS + actorOrgId: actor.orgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionCmekActions.Decrypt, ProjectPermissionSub.Cmek); diff --git a/backend/src/services/folder-commit/folder-commit-service.ts b/backend/src/services/folder-commit/folder-commit-service.ts index 35f032312..3576f444b 100644 --- a/backend/src/services/folder-commit/folder-commit-service.ts +++ b/backend/src/services/folder-commit/folder-commit-service.ts @@ -2,13 +2,7 @@ import { ForbiddenError } from "@casl/ability"; import { Knex } from "knex"; -import { - ActionProjectType, - TSecretFolders, - TSecretFolderVersions, - TSecretV2TagJunctionInsert, - TSecretVersionsV2 -} from "@app/db/schemas"; +import { TSecretFolders, TSecretFolderVersions, TSecretV2TagJunctionInsert, TSecretVersionsV2 } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionCommitsActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; import { getConfig } from "@app/lib/config/env"; @@ -223,8 +217,7 @@ export const folderCommitServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionCommitsActions.Read, ProjectPermissionSub.Commits); @@ -2067,8 +2060,7 @@ export const folderCommitServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( diff --git a/backend/src/services/group-project/group-project-service.ts b/backend/src/services/group-project/group-project-service.ts index 47d8950cc..96fda42e3 100644 --- a/backend/src/services/group-project/group-project-service.ts +++ b/backend/src/services/group-project/group-project-service.ts @@ -1,6 +1,6 @@ import { ForbiddenError } from "@casl/ability"; -import { ActionProjectType, ProjectMembershipRole, SecretKeyEncoding, TGroups } from "@app/db/schemas"; +import { ProjectMembershipRole, SecretKeyEncoding, TGroups } from "@app/db/schemas"; import { TListProjectGroupUsersDTO } from "@app/ee/services/group/group-types"; import { constructPermissionErrorMessage, @@ -79,8 +79,7 @@ export const groupProjectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionGroupActions.Create, ProjectPermissionSub.Groups); @@ -267,8 +266,7 @@ export const groupProjectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionGroupActions.Edit, ProjectPermissionSub.Groups); @@ -381,8 +379,7 @@ export const groupProjectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionGroupActions.Delete, ProjectPermissionSub.Groups); @@ -426,8 +423,7 @@ export const groupProjectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionGroupActions.Read, ProjectPermissionSub.Groups); @@ -454,8 +450,7 @@ export const groupProjectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionGroupActions.Read, ProjectPermissionSub.Groups); @@ -496,8 +491,7 @@ export const groupProjectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionGroupActions.Read, ProjectPermissionSub.Groups); diff --git a/backend/src/services/identity-project/identity-project-service.ts b/backend/src/services/identity-project/identity-project-service.ts index 81387d141..f354477cf 100644 --- a/backend/src/services/identity-project/identity-project-service.ts +++ b/backend/src/services/identity-project/identity-project-service.ts @@ -1,6 +1,6 @@ import { ForbiddenError, subject } from "@casl/ability"; -import { ActionProjectType, ProjectMembershipRole } from "@app/db/schemas"; +import { ProjectMembershipRole } from "@app/db/schemas"; import { constructPermissionErrorMessage, validatePrivilegeChangeOperation @@ -62,8 +62,7 @@ export const identityProjectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionIdentityActions.Create, @@ -180,8 +179,7 @@ export const identityProjectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionIdentityActions.Edit, @@ -291,8 +289,7 @@ export const identityProjectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionIdentityActions.Delete, @@ -320,8 +317,7 @@ export const identityProjectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionIdentityActions.Read, @@ -354,8 +350,7 @@ export const identityProjectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -391,8 +386,7 @@ export const identityProjectServiceFactory = ({ actorId, projectId: membership.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( diff --git a/backend/src/services/integration-auth/integration-auth-service.ts b/backend/src/services/integration-auth/integration-auth-service.ts index 2517c040c..27c22297b 100644 --- a/backend/src/services/integration-auth/integration-auth-service.ts +++ b/backend/src/services/integration-auth/integration-auth-service.ts @@ -4,13 +4,7 @@ import { Octokit } from "@octokit/rest"; import { Client as OctopusClient, SpaceRepository as OctopusSpaceRepository } from "@octopusdeploy/api-client"; import AWS from "aws-sdk"; -import { - ActionProjectType, - SecretEncryptionAlgo, - SecretKeyEncoding, - TIntegrationAuths, - TIntegrationAuthsInsert -} from "@app/db/schemas"; +import { SecretEncryptionAlgo, SecretKeyEncoding, TIntegrationAuths, TIntegrationAuthsInsert } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; import { getConfig } from "@app/lib/config/env"; @@ -103,8 +97,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const authorizations = await integrationAuthDAL.find({ projectId }); @@ -122,8 +115,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: auth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); return permission.can(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations) ? auth : null; @@ -146,8 +138,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); return integrationAuth; @@ -172,8 +163,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Create, ProjectPermissionSub.Integrations); @@ -282,8 +272,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Create, ProjectPermissionSub.Integrations); @@ -417,8 +406,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.Integrations); @@ -679,8 +667,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); @@ -714,8 +701,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); @@ -745,8 +731,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -787,8 +772,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -816,8 +800,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -891,8 +874,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -939,8 +921,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -974,8 +955,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -1033,8 +1013,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -1070,8 +1049,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -1112,8 +1090,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -1153,8 +1130,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -1194,8 +1170,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -1234,8 +1209,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -1275,8 +1249,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -1344,8 +1317,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -1419,8 +1391,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -1470,8 +1441,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -1519,8 +1489,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -1588,8 +1557,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -1630,8 +1598,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -1743,8 +1710,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Delete, ProjectPermissionSub.Integrations); @@ -1767,8 +1733,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Delete, ProjectPermissionSub.Integrations); @@ -1801,8 +1766,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(sourcePermission).throwUnlessCan( @@ -1815,8 +1779,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(targetPermission).throwUnlessCan( @@ -1849,8 +1812,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); @@ -1884,8 +1846,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); @@ -1925,8 +1886,7 @@ export const integrationAuthServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); const { shouldUseSecretV2Bridge, botKey } = await projectBotService.getBotKey(integrationAuth.projectId); diff --git a/backend/src/services/integration/integration-service.ts b/backend/src/services/integration/integration-service.ts index 2ef8615eb..e03ca1e8f 100644 --- a/backend/src/services/integration/integration-service.ts +++ b/backend/src/services/integration/integration-service.ts @@ -1,6 +1,5 @@ import { ForbiddenError } from "@casl/ability"; -import { ActionProjectType } from "@app/db/schemas"; import { throwIfMissingSecretReadValueOrDescribePermission } from "@app/ee/services/permission/permission-fns"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { @@ -91,8 +90,7 @@ export const integrationServiceFactory = ({ actorId, projectId: integrationAuth.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Create, ProjectPermissionSub.Integrations); @@ -167,8 +165,7 @@ export const integrationServiceFactory = ({ actorId, projectId: integration.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.Integrations); @@ -231,8 +228,7 @@ export const integrationServiceFactory = ({ actorId, projectId: integration.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); @@ -259,8 +255,7 @@ export const integrationServiceFactory = ({ actorId, projectId: integration.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); @@ -302,8 +297,7 @@ export const integrationServiceFactory = ({ actorId, projectId: integration.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Delete, ProjectPermissionSub.Integrations); @@ -339,8 +333,7 @@ export const integrationServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); @@ -359,8 +352,7 @@ export const integrationServiceFactory = ({ actorId, projectId: integration.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); diff --git a/backend/src/services/org/org-service.ts b/backend/src/services/org/org-service.ts index 1215b7c00..612121149 100644 --- a/backend/src/services/org/org-service.ts +++ b/backend/src/services/org/org-service.ts @@ -5,7 +5,6 @@ import jwt from "jsonwebtoken"; import { Knex } from "knex"; import { - ActionProjectType, OrgMembershipRole, OrgMembershipStatus, ProjectMembershipRole, @@ -972,8 +971,7 @@ export const orgServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(projectPermission).throwUnlessCan( ProjectPermissionMemberActions.Create, diff --git a/backend/src/services/pki-alert/pki-alert-service.ts b/backend/src/services/pki-alert/pki-alert-service.ts index 946740b66..c14158ddb 100644 --- a/backend/src/services/pki-alert/pki-alert-service.ts +++ b/backend/src/services/pki-alert/pki-alert-service.ts @@ -1,6 +1,6 @@ import { ForbiddenError } from "@casl/ability"; -import { ActionProjectType, ProjectType } from "@app/db/schemas"; +import { ProjectType } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; import { ForbiddenRequestError, NotFoundError } from "@app/lib/errors"; @@ -91,8 +91,7 @@ export const pkiAlertServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Create, ProjectPermissionSub.PkiAlerts); @@ -121,8 +120,7 @@ export const pkiAlertServiceFactory = ({ actorId, projectId: alert.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.PkiAlerts); @@ -148,8 +146,7 @@ export const pkiAlertServiceFactory = ({ actorId, projectId: alert.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.PkiAlerts); @@ -181,8 +178,7 @@ export const pkiAlertServiceFactory = ({ actorId, projectId: alert.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Delete, ProjectPermissionSub.PkiAlerts); diff --git a/backend/src/services/pki-collection/pki-collection-service.ts b/backend/src/services/pki-collection/pki-collection-service.ts index 8d758b5e9..b73a8f825 100644 --- a/backend/src/services/pki-collection/pki-collection-service.ts +++ b/backend/src/services/pki-collection/pki-collection-service.ts @@ -1,6 +1,6 @@ import { ForbiddenError } from "@casl/ability"; -import { ActionProjectType, ProjectType, TPkiCollectionItems } from "@app/db/schemas"; +import { ProjectType, TPkiCollectionItems } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; import { BadRequestError, NotFoundError } from "@app/lib/errors"; @@ -67,8 +67,7 @@ export const pkiCollectionServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -100,8 +99,7 @@ export const pkiCollectionServiceFactory = ({ actorId, projectId: pkiCollection.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.PkiCollections); @@ -125,8 +123,7 @@ export const pkiCollectionServiceFactory = ({ actorId, projectId: pkiCollection.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.PkiCollections); @@ -153,8 +150,7 @@ export const pkiCollectionServiceFactory = ({ actorId, projectId: pkiCollection.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -183,8 +179,7 @@ export const pkiCollectionServiceFactory = ({ actorId, projectId: pkiCollection.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.PkiCollections); @@ -227,8 +222,7 @@ export const pkiCollectionServiceFactory = ({ actorId, projectId: pkiCollection.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -315,8 +309,7 @@ export const pkiCollectionServiceFactory = ({ actorId, projectId: pkiCollection.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( diff --git a/backend/src/services/pki-subscriber/pki-subscriber-service.ts b/backend/src/services/pki-subscriber/pki-subscriber-service.ts index a3e6ec78c..245337296 100644 --- a/backend/src/services/pki-subscriber/pki-subscriber-service.ts +++ b/backend/src/services/pki-subscriber/pki-subscriber-service.ts @@ -2,7 +2,6 @@ import { ForbiddenError, subject } from "@casl/ability"; import * as x509 from "@peculiar/x509"; -import { ActionProjectType } from "@app/db/schemas"; import { TCertificateAuthorityCrlDALFactory } from "@app/ee/services/certificate-authority-crl/certificate-authority-crl-dal"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { @@ -120,8 +119,7 @@ export const pkiSubscriberServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -183,8 +181,7 @@ export const pkiSubscriberServiceFactory = ({ actorId, projectId: subscriber.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -237,8 +234,7 @@ export const pkiSubscriberServiceFactory = ({ actorId, projectId: subscriber.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -300,8 +296,7 @@ export const pkiSubscriberServiceFactory = ({ actorId, projectId: subscriber.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -337,8 +332,7 @@ export const pkiSubscriberServiceFactory = ({ actorId, projectId: subscriber.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -393,8 +387,7 @@ export const pkiSubscriberServiceFactory = ({ actorId, projectId: subscriber.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -440,8 +433,7 @@ export const pkiSubscriberServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -699,8 +691,7 @@ export const pkiSubscriberServiceFactory = ({ actorId, projectId: subscriber.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -747,8 +738,7 @@ export const pkiSubscriberServiceFactory = ({ actorId, projectId: subscriber.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( diff --git a/backend/src/services/pki-templates/pki-templates-service.ts b/backend/src/services/pki-templates/pki-templates-service.ts index e648ab88f..98469c157 100644 --- a/backend/src/services/pki-templates/pki-templates-service.ts +++ b/backend/src/services/pki-templates/pki-templates-service.ts @@ -3,7 +3,6 @@ import { ForbiddenError, subject } from "@casl/ability"; import * as x509 from "@peculiar/x509"; import RE2 from "re2"; -import { ActionProjectType } from "@app/db/schemas"; import { TCertificateAuthorityCrlDALFactory } from "@app/ee/services/certificate-authority-crl/certificate-authority-crl-dal"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { @@ -119,8 +118,7 @@ export const pkiTemplatesServiceFactory = ({ actorId, projectId: ca.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -172,8 +170,7 @@ export const pkiTemplatesServiceFactory = ({ actorId, projectId: certTemplate.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -236,8 +233,7 @@ export const pkiTemplatesServiceFactory = ({ actorId, projectId: certTemplate.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -269,8 +265,7 @@ export const pkiTemplatesServiceFactory = ({ actorId, projectId: certTemplate.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -295,8 +290,7 @@ export const pkiTemplatesServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); const certTemplate = await pkiTemplatesDAL.find({ projectId }, { limit, offset, count: true }); @@ -338,8 +332,7 @@ export const pkiTemplatesServiceFactory = ({ actorId, projectId: certTemplate.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -385,8 +378,7 @@ export const pkiTemplatesServiceFactory = ({ actorId, projectId: certTemplate.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( diff --git a/backend/src/services/project-bot/project-bot-service.ts b/backend/src/services/project-bot/project-bot-service.ts index 7dc5b058e..884d45ee1 100644 --- a/backend/src/services/project-bot/project-bot-service.ts +++ b/backend/src/services/project-bot/project-bot-service.ts @@ -1,6 +1,6 @@ import { ForbiddenError } from "@casl/ability"; -import { ActionProjectType, ProjectVersion } from "@app/db/schemas"; +import { ProjectVersion } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; import { generateAsymmetricKeyPair } from "@app/lib/crypto"; @@ -46,8 +46,7 @@ export const projectBotServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Integrations); @@ -113,8 +112,7 @@ export const projectBotServiceFactory = ({ actorId, projectId: bot.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.Integrations); diff --git a/backend/src/services/project-env/project-env-service.ts b/backend/src/services/project-env/project-env-service.ts index 9a82a6bbe..6773ee600 100644 --- a/backend/src/services/project-env/project-env-service.ts +++ b/backend/src/services/project-env/project-env-service.ts @@ -1,6 +1,5 @@ import { ForbiddenError } from "@casl/ability"; -import { ActionProjectType } from "@app/db/schemas"; import { TLicenseServiceFactory } from "@app/ee/services/license/license-service"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; @@ -47,8 +46,7 @@ export const projectEnvServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Create, ProjectPermissionSub.Environments); @@ -136,8 +134,7 @@ export const projectEnvServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.Environments); @@ -200,8 +197,7 @@ export const projectEnvServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Delete, ProjectPermissionSub.Environments); @@ -256,8 +252,7 @@ export const projectEnvServiceFactory = ({ actorId, projectId: environment.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Environments); diff --git a/backend/src/services/project-key/project-key-service.ts b/backend/src/services/project-key/project-key-service.ts index a884d25bc..c4eae9e2e 100644 --- a/backend/src/services/project-key/project-key-service.ts +++ b/backend/src/services/project-key/project-key-service.ts @@ -1,6 +1,5 @@ import { ForbiddenError } from "@casl/ability"; -import { ActionProjectType } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionMemberActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; import { BadRequestError } from "@app/lib/errors"; @@ -37,8 +36,7 @@ export const projectKeyServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionMemberActions.Edit, ProjectPermissionSub.Member); @@ -67,8 +65,7 @@ export const projectKeyServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); const latestKey = await projectKeyDAL.findLatestProjectKey(actorId, projectId); return latestKey; @@ -86,8 +83,7 @@ export const projectKeyServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionMemberActions.Read, ProjectPermissionSub.Member); return projectKeyDAL.findAllProjectUserPubKeys(projectId); diff --git a/backend/src/services/project-membership/project-membership-service.ts b/backend/src/services/project-membership/project-membership-service.ts index b9e502922..9cef4dabf 100644 --- a/backend/src/services/project-membership/project-membership-service.ts +++ b/backend/src/services/project-membership/project-membership-service.ts @@ -1,7 +1,7 @@ /* eslint-disable no-await-in-loop */ import { ForbiddenError } from "@casl/ability"; -import { ActionProjectType, ProjectMembershipRole, ProjectVersion, TableName } from "@app/db/schemas"; +import { ProjectMembershipRole, ProjectVersion, TableName } from "@app/db/schemas"; import { TLicenseServiceFactory } from "@app/ee/services/license/license-service"; import { constructPermissionErrorMessage, @@ -90,8 +90,7 @@ export const projectMembershipServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionMemberActions.Read, ProjectPermissionSub.Member); @@ -134,8 +133,7 @@ export const projectMembershipServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionMemberActions.Read, ProjectPermissionSub.Member); @@ -157,8 +155,7 @@ export const projectMembershipServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionMemberActions.Read, ProjectPermissionSub.Member); @@ -184,8 +181,7 @@ export const projectMembershipServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionMemberActions.Create, ProjectPermissionSub.Member); const orgMembers = await orgDAL.findMembership({ @@ -265,8 +261,7 @@ export const projectMembershipServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionMemberActions.Edit, ProjectPermissionSub.Member); @@ -375,8 +370,7 @@ export const projectMembershipServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionMemberActions.Delete, ProjectPermissionSub.Member); @@ -418,8 +412,7 @@ export const projectMembershipServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionMemberActions.Delete, ProjectPermissionSub.Member); diff --git a/backend/src/services/project-role/project-role-service.ts b/backend/src/services/project-role/project-role-service.ts index dd0eecc68..36372c607 100644 --- a/backend/src/services/project-role/project-role-service.ts +++ b/backend/src/services/project-role/project-role-service.ts @@ -2,7 +2,7 @@ import { ForbiddenError, MongoAbility, RawRuleOf } from "@casl/ability"; import { PackRule, packRules, unpackRules } from "@casl/ability/extra"; import { requestContext } from "@fastify/request-context"; -import { ActionProjectType, ProjectMembershipRole, ProjectType, TableName, TProjects } from "@app/db/schemas"; +import { ProjectMembershipRole, ProjectType, TableName, TProjects } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionActions, @@ -71,8 +71,7 @@ export const projectRoleServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Create, ProjectPermissionSub.Role); const existingRole = await projectRoleDAL.findOne({ slug: data.slug, projectId }); @@ -112,8 +111,7 @@ export const projectRoleServiceFactory = ({ actorId, projectId: project.id, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Role); if (roleSlug !== "custom" && Object.values(ProjectMembershipRole).includes(roleSlug as ProjectMembershipRole)) { @@ -142,8 +140,7 @@ export const projectRoleServiceFactory = ({ actorId, projectId: projectRole.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.Role); @@ -173,8 +170,7 @@ export const projectRoleServiceFactory = ({ actorId, projectId: projectRole.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Delete, ProjectPermissionSub.Role); @@ -215,8 +211,7 @@ export const projectRoleServiceFactory = ({ actorId, projectId: project.id, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Role); const customRoles = await projectRoleDAL.find( @@ -242,8 +237,7 @@ export const projectRoleServiceFactory = ({ actorId: userId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); // just to satisfy ts if (!("roles" in membership)) throw new BadRequestError({ message: "Service token not allowed" }); diff --git a/backend/src/services/project/project-dal.ts b/backend/src/services/project/project-dal.ts index 7f733503c..9cfe2e350 100644 --- a/backend/src/services/project/project-dal.ts +++ b/backend/src/services/project/project-dal.ts @@ -3,13 +3,13 @@ import { Knex } from "knex"; import { TDbClient } from "@app/db"; import { ProjectsSchema, - ProjectType, ProjectUpgradeStatus, ProjectVersion, SortDirection, TableName, TProjects, - TProjectsUpdate + TProjectsUpdate, + ProjectType } from "@app/db/schemas"; import { BadRequestError, DatabaseError, NotFoundError, UnauthorizedError } from "@app/lib/errors"; import { buildFindFilter, ormify, selectAllTableCols, sqlNestRelationships } from "@app/lib/knex"; @@ -22,17 +22,12 @@ export type TProjectDALFactory = ReturnType; export const projectDALFactory = (db: TDbClient) => { const projectOrm = ormify(db, TableName.Project); - const findIdentityProjects = async (identityId: string, orgId: string, projectType: ProjectType | "all") => { + const findIdentityProjects = async (identityId: string, orgId: string) => { try { const workspaces = await db(TableName.IdentityProjectMembership) .where({ identityId }) .join(TableName.Project, `${TableName.IdentityProjectMembership}.projectId`, `${TableName.Project}.id`) .where(`${TableName.Project}.orgId`, orgId) - .andWhere((qb) => { - if (projectType !== "all") { - void qb.where(`${TableName.Project}.type`, projectType); - } - }) .leftJoin(TableName.Environment, `${TableName.Environment}.projectId`, `${TableName.Project}.id`) .select( selectAllTableCols(TableName.Project), @@ -72,18 +67,13 @@ export const projectDALFactory = (db: TDbClient) => { } }; - const findUserProjects = async (userId: string, orgId: string, projectType: ProjectType | "all") => { + const findUserProjects = async (userId: string, orgId: string) => { try { const workspaces = await db .replicaNode()(TableName.ProjectMembership) .where({ userId }) .join(TableName.Project, `${TableName.ProjectMembership}.projectId`, `${TableName.Project}.id`) .where(`${TableName.Project}.orgId`, orgId) - .andWhere((qb) => { - if (projectType !== "all") { - void qb.where(`${TableName.Project}.type`, projectType); - } - }) .leftJoin(TableName.Environment, `${TableName.Environment}.projectId`, `${TableName.Project}.id`) .select( selectAllTableCols(TableName.Project), @@ -103,11 +93,6 @@ export const projectDALFactory = (db: TDbClient) => { .whereIn("groupId", groups) .join(TableName.Project, `${TableName.GroupProjectMembership}.projectId`, `${TableName.Project}.id`) .where(`${TableName.Project}.orgId`, orgId) - .andWhere((qb) => { - if (projectType !== "all") { - void qb.where(`${TableName.Project}.type`, projectType); - } - }) .whereNotIn( `${TableName.Project}.id`, workspaces.map(({ id }) => id) @@ -177,17 +162,12 @@ export const projectDALFactory = (db: TDbClient) => { } }; - const findAllProjectsByIdentity = async (identityId: string, projectType?: ProjectType) => { + const findAllProjectsByIdentity = async (identityId: string) => { try { const workspaces = await db .replicaNode()(TableName.IdentityProjectMembership) .where({ identityId }) .join(TableName.Project, `${TableName.IdentityProjectMembership}.projectId`, `${TableName.Project}.id`) - .andWhere((qb) => { - if (projectType) { - void qb.where(`${TableName.Project}.type`, projectType); - } - }) .leftJoin(TableName.Environment, `${TableName.Environment}.projectId`, `${TableName.Project}.id`) .select( selectAllTableCols(TableName.Project), @@ -409,7 +389,6 @@ export const projectDALFactory = (db: TDbClient) => { orgId: string; actor: ActorType; actorId: string; - type?: ProjectType; limit?: number; offset?: number; name?: string; @@ -464,9 +443,6 @@ export const projectDALFactory = (db: TDbClient) => { void query.orderBy([{ column: `${TableName.Project}.name`, order: sortDir }]); } - if (dto.type) { - void query.where(`${TableName.Project}.type`, dto.type); - } if (dto.name) { void query.whereILike(`${TableName.Project}.name`, `%${dto.name}%`); } diff --git a/backend/src/services/project/project-service.ts b/backend/src/services/project/project-service.ts index 29774fcc8..266dbc492 100644 --- a/backend/src/services/project/project-service.ts +++ b/backend/src/services/project/project-service.ts @@ -1,14 +1,7 @@ import { ForbiddenError, subject } from "@casl/ability"; import slugify from "@sindresorhus/slugify"; -import { - ActionProjectType, - ProjectMembershipRole, - ProjectType, - ProjectVersion, - TableName, - TProjectEnvironments -} from "@app/db/schemas"; +import { ProjectMembershipRole, ProjectVersion, TableName, TProjectEnvironments, ProjectType } from "@app/db/schemas"; import { TLicenseServiceFactory } from "@app/ee/services/license/license-service"; import { OrgPermissionActions, OrgPermissionSubjects } from "@app/ee/services/permission/org-permission"; import { throwIfMissingSecretReadValueOrDescribePermission } from "@app/ee/services/permission/permission-fns"; @@ -249,8 +242,7 @@ export const projectServiceFactory = ({ kmsKeyId, tx: trx, createDefaultEnvs = true, - template = InfisicalProjectTemplate.Default, - type = ProjectType.SecretManager + template = InfisicalProjectTemplate.Default }: TCreateProjectDTO) => { const organization = await orgDAL.findOne({ id: actorOrgId }); const { permission, membership: orgMembership } = await permissionService.getOrgPermission( @@ -266,11 +258,7 @@ export const projectServiceFactory = ({ await tx.raw("SELECT pg_advisory_xact_lock(?)", [PgSqlLock.CreateProject(organization.id)]); const plan = await licenseService.getPlan(organization.id); - if ( - plan.workspaceLimit !== null && - plan.workspacesUsed >= plan.workspaceLimit && - type === ProjectType.SecretManager - ) { + if (plan.workspaceLimit !== null && plan.workspacesUsed >= plan.workspaceLimit) { // case: limit imposed on number of workspaces allowed // case: number of workspaces used exceeds the number of workspaces allowed throw new BadRequestError({ @@ -307,7 +295,6 @@ export const projectServiceFactory = ({ const project = await projectDAL.create( { name: workspaceName, - type, description: workspaceDescription, orgId: organization.id, slug: projectSlug || slugify(`${workspaceName}-${alphaNumericNanoId(4)}`), @@ -318,16 +305,15 @@ export const projectServiceFactory = ({ tx ); - if (type === ProjectType.SSH) { - await bootstrapSshProject({ - projectId: project.id, - sshCertificateAuthorityDAL, - sshCertificateAuthoritySecretDAL, - kmsService, - projectSshConfigDAL, - tx - }); - } + // TODO(pta: check this again) + await bootstrapSshProject({ + projectId: project.id, + sshCertificateAuthorityDAL, + sshCertificateAuthoritySecretDAL, + kmsService, + projectSshConfigDAL, + tx + }); // set ghost user as admin of project const projectMembership = await projectMembershipDAL.create( @@ -524,8 +510,7 @@ export const projectServiceFactory = ({ actorId, projectId: project.id, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Delete, ProjectPermissionSub.Project); @@ -583,14 +568,7 @@ export const projectServiceFactory = ({ return deletedProject; }; - const getProjects = async ({ - actorId, - actor, - includeRoles, - actorAuthMethod, - actorOrgId, - type = ProjectType.SecretManager - }: TListProjectsDTO) => { + const getProjects = async ({ actorId, actor, includeRoles, actorAuthMethod, actorOrgId }: TListProjectsDTO) => { const workspaces = actor === ActorType.IDENTITY ? await projectDAL.findIdentityProjects(actorId, actorOrgId, type) @@ -640,8 +618,7 @@ export const projectServiceFactory = ({ actorId, projectId: project.id, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); return project; }; @@ -654,8 +631,7 @@ export const projectServiceFactory = ({ actorId, projectId: project.id, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.Settings); @@ -698,8 +674,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.Settings); @@ -724,8 +699,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.Settings); @@ -754,8 +728,7 @@ export const projectServiceFactory = ({ actorId, projectId: project.id, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); if (!hasRole(ProjectMembershipRole.Admin)) @@ -786,8 +759,7 @@ export const projectServiceFactory = ({ actorId, projectId: project.id, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); if (!hasRole(ProjectMembershipRole.Admin)) { @@ -819,8 +791,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.Settings); @@ -841,8 +812,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Delete, ProjectPermissionSub.Project); @@ -912,8 +882,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); throwIfMissingSecretReadValueOrDescribePermission(permission, ProjectPermissionSecretActions.DescribeSecret); @@ -958,8 +927,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -1012,8 +980,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -1066,8 +1033,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.PkiAlerts); @@ -1102,8 +1068,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.PkiCollections); @@ -1130,8 +1095,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); const allowedSubscribers = []; @@ -1178,8 +1142,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.CertificateManager + actorOrgId }); const certificateTemplates = await certificateTemplateDAL.getCertTemplatesByProjectId(projectId); @@ -1209,8 +1172,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -1243,8 +1205,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); const allowedHosts = []; @@ -1283,8 +1244,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.SshHostGroups); @@ -1311,8 +1271,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.SshCertificates); @@ -1350,8 +1309,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -1385,8 +1343,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.Kms); @@ -1413,8 +1370,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.Kms); @@ -1443,8 +1399,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.Kms); @@ -1466,8 +1421,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); if (!membership) { @@ -1499,8 +1453,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Settings); @@ -1539,8 +1492,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SSH + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.Settings); @@ -1623,8 +1575,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Settings); @@ -1696,8 +1647,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.Settings); @@ -1774,8 +1724,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.Settings); @@ -1898,8 +1847,7 @@ export const projectServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Delete, ProjectPermissionSub.Settings); @@ -1927,15 +1875,7 @@ export const projectServiceFactory = ({ }); }; - const searchProjects = async ({ - name, - offset, - permission, - limit, - type, - orderBy, - orderDirection - }: TSearchProjectsDTO) => { + const searchProjects = async ({ name, offset, permission, limit, orderBy, orderDirection }: TSearchProjectsDTO) => { // check user belong to org await permissionService.getOrgPermission( permission.type, @@ -1949,7 +1889,6 @@ export const projectServiceFactory = ({ limit, offset, name, - type, orgId: permission.orgId, actor: permission.type, actorId: permission.id, @@ -1973,7 +1912,7 @@ export const projectServiceFactory = ({ actor: permission.type, actorId: permission.id, projectId, - actionProjectType: ActionProjectType.Any, + actorAuthMethod: permission.authMethod, actorOrgId: permission.orgId }) diff --git a/backend/src/services/secret-blind-index/secret-blind-index-service.ts b/backend/src/services/secret-blind-index/secret-blind-index-service.ts index a19ce8b88..c8fed2a2b 100644 --- a/backend/src/services/secret-blind-index/secret-blind-index-service.ts +++ b/backend/src/services/secret-blind-index/secret-blind-index-service.ts @@ -1,4 +1,4 @@ -import { ActionProjectType, ProjectMembershipRole } from "@app/db/schemas"; +import { ProjectMembershipRole } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ForbiddenRequestError, NotFoundError } from "@app/lib/errors"; @@ -36,8 +36,7 @@ export const secretBlindIndexServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const secretCount = await secretBlindIndexDAL.countOfSecretsWithNullSecretBlindIndex(projectId); @@ -56,8 +55,7 @@ export const secretBlindIndexServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); if (!hasRole(ProjectMembershipRole.Admin)) { throw new ForbiddenRequestError({ message: "Insufficient privileges, user must be admin" }); @@ -80,8 +78,7 @@ export const secretBlindIndexServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); if (!hasRole(ProjectMembershipRole.Admin)) { throw new ForbiddenRequestError({ message: "Insufficient privileges, user must be admin" }); diff --git a/backend/src/services/secret-folder/secret-folder-service.ts b/backend/src/services/secret-folder/secret-folder-service.ts index da29c0f36..7456f2f1f 100644 --- a/backend/src/services/secret-folder/secret-folder-service.ts +++ b/backend/src/services/secret-folder/secret-folder-service.ts @@ -2,7 +2,7 @@ import { ForbiddenError, subject } from "@casl/ability"; import path from "path"; import { v4 as uuidv4, validate as uuidValidate } from "uuid"; -import { ActionProjectType, TSecretFoldersInsert } from "@app/db/schemas"; +import { TSecretFoldersInsert } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; import { TSecretSnapshotServiceFactory } from "@app/ee/services/secret-snapshot/secret-snapshot-service"; @@ -63,8 +63,7 @@ export const secretFolderServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -245,8 +244,7 @@ export const secretFolderServiceFactory = ({ actorId, projectId: project.id, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); folders.forEach(({ environment, path: secretPath }) => { @@ -377,8 +375,7 @@ export const secretFolderServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -479,8 +476,7 @@ export const secretFolderServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -562,8 +558,7 @@ export const secretFolderServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const env = await projectEnvDAL.findOne({ projectId, slug: environment }); @@ -631,8 +626,7 @@ export const secretFolderServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const envs = await projectEnvDAL.findBySlugs(projectId, environments); @@ -673,8 +667,7 @@ export const secretFolderServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const envs = await projectEnvDAL.findBySlugs(projectId, environments); @@ -709,8 +702,7 @@ export const secretFolderServiceFactory = ({ actorId, projectId: folder.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const [folderWithPath] = await folderDAL.findSecretPathByFolderIds(folder.projectId, [folder.id]); @@ -738,8 +730,7 @@ export const secretFolderServiceFactory = ({ actorId: actor.id, projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId: actor.orgId }); const envs = await projectEnvDAL.findBySlugs(projectId, environments); @@ -766,8 +757,7 @@ export const secretFolderServiceFactory = ({ actorId: actor.id, projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId: actor.orgId }); const environments = await projectEnvDAL.find({ projectId }); diff --git a/backend/src/services/secret-import/secret-import-service.ts b/backend/src/services/secret-import/secret-import-service.ts index 403484fc2..297c5d01f 100644 --- a/backend/src/services/secret-import/secret-import-service.ts +++ b/backend/src/services/secret-import/secret-import-service.ts @@ -2,7 +2,7 @@ import path from "node:path"; import { ForbiddenError, subject } from "@casl/ability"; -import { ActionProjectType, TableName } from "@app/db/schemas"; +import { TableName } from "@app/db/schemas"; import { TLicenseServiceFactory } from "@app/ee/services/license/license-service"; import { hasSecretReadValueOrDescribePermission, @@ -87,8 +87,7 @@ export const secretImportServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); // check if user has permission to import into destination path @@ -205,8 +204,7 @@ export const secretImportServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -303,8 +301,7 @@ export const secretImportServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -378,8 +375,7 @@ export const secretImportServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); // check if user has permission to import into destination path @@ -455,8 +451,7 @@ export const secretImportServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionActions.Read, @@ -489,8 +484,7 @@ export const secretImportServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const filteredEnvironments = []; for (const environment of environments) { @@ -543,8 +537,7 @@ export const secretImportServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionActions.Read, @@ -593,8 +586,7 @@ export const secretImportServiceFactory = ({ actorId, projectId: folder.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -642,8 +634,7 @@ export const secretImportServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionActions.Read, @@ -678,8 +669,7 @@ export const secretImportServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionActions.Read, @@ -762,8 +752,7 @@ export const secretImportServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const filteredEnvironments = []; for (const environment of environments) { @@ -815,8 +804,7 @@ export const secretImportServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); if ( permission.cannot( diff --git a/backend/src/services/secret-sync/secret-sync-service.ts b/backend/src/services/secret-sync/secret-sync-service.ts index 3fdb7fea6..bd52c0b77 100644 --- a/backend/src/services/secret-sync/secret-sync-service.ts +++ b/backend/src/services/secret-sync/secret-sync-service.ts @@ -1,6 +1,5 @@ import { ForbiddenError, subject } from "@casl/ability"; -import { ActionProjectType } from "@app/db/schemas"; import { TLicenseServiceFactory } from "@app/ee/services/license/license-service"; import { throwIfMissingSecretReadValueOrDescribePermission } from "@app/ee/services/permission/permission-fns"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; @@ -75,7 +74,7 @@ export const secretSyncServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId }); @@ -111,7 +110,7 @@ export const secretSyncServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId }); @@ -154,7 +153,7 @@ export const secretSyncServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId: secretSync.projectId }); @@ -196,7 +195,7 @@ export const secretSyncServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId: secretSync.projectId }); @@ -234,7 +233,7 @@ export const secretSyncServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId }); @@ -314,7 +313,7 @@ export const secretSyncServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId: secretSync.projectId }); @@ -430,7 +429,7 @@ export const secretSyncServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId: secretSync.projectId }); @@ -507,7 +506,7 @@ export const secretSyncServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId: secretSync.projectId }); @@ -579,7 +578,7 @@ export const secretSyncServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId: secretSync.projectId }); @@ -645,7 +644,7 @@ export const secretSyncServiceFactory = ({ actorId: actor.id, actorAuthMethod: actor.authMethod, actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager, + projectId: secretSync.projectId }); diff --git a/backend/src/services/secret-tag/secret-tag-service.ts b/backend/src/services/secret-tag/secret-tag-service.ts index 8a08c44dd..a4be06b4f 100644 --- a/backend/src/services/secret-tag/secret-tag-service.ts +++ b/backend/src/services/secret-tag/secret-tag-service.ts @@ -1,6 +1,5 @@ import { ForbiddenError } from "@casl/ability"; -import { ActionProjectType } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; import { BadRequestError, NotFoundError } from "@app/lib/errors"; @@ -29,8 +28,7 @@ export const secretTagServiceFactory = ({ secretTagDAL, permissionService }: TSe actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Create, ProjectPermissionSub.Tags); @@ -61,8 +59,7 @@ export const secretTagServiceFactory = ({ secretTagDAL, permissionService }: TSe actorId, projectId: tag.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.Tags); @@ -79,8 +76,7 @@ export const secretTagServiceFactory = ({ secretTagDAL, permissionService }: TSe actorId, projectId: tag.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Delete, ProjectPermissionSub.Tags); @@ -97,8 +93,7 @@ export const secretTagServiceFactory = ({ secretTagDAL, permissionService }: TSe actorId, projectId: tag.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Tags); @@ -114,8 +109,7 @@ export const secretTagServiceFactory = ({ secretTagDAL, permissionService }: TSe actorId, projectId: tag.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Tags); @@ -128,8 +122,7 @@ export const secretTagServiceFactory = ({ secretTagDAL, permissionService }: TSe actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Tags); diff --git a/backend/src/services/secret-v2-bridge/secret-v2-bridge-service.ts b/backend/src/services/secret-v2-bridge/secret-v2-bridge-service.ts index fc758b4f5..71180772f 100644 --- a/backend/src/services/secret-v2-bridge/secret-v2-bridge-service.ts +++ b/backend/src/services/secret-v2-bridge/secret-v2-bridge-service.ts @@ -2,14 +2,7 @@ import { ForbiddenError, MongoAbility, subject } from "@casl/ability"; import { Knex } from "knex"; import { z } from "zod"; -import { - ActionProjectType, - ProjectMembershipRole, - SecretsV2Schema, - SecretType, - TableName, - TSecretsV2 -} from "@app/db/schemas"; +import { ProjectMembershipRole, SecretsV2Schema, SecretType, TableName, TSecretsV2 } from "@app/db/schemas"; import { hasSecretReadValueOrDescribePermission, throwIfMissingSecretReadValueOrDescribePermission @@ -243,8 +236,7 @@ export const secretV2BridgeServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const folder = await folderDAL.findBySecretPath(projectId, environment, secretPath); @@ -387,8 +379,7 @@ export const secretV2BridgeServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); if (inputSecret.newSecretName === "") { @@ -615,8 +606,7 @@ export const secretV2BridgeServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const folder = await folderDAL.findBySecretPath(projectId, environment, secretPath); @@ -752,8 +742,7 @@ export const secretV2BridgeServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); throwIfMissingSecretReadValueOrDescribePermission(permission, ProjectPermissionSecretActions.DescribeSecret); } @@ -798,8 +787,7 @@ export const secretV2BridgeServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); throwIfMissingSecretReadValueOrDescribePermission(permission, ProjectPermissionSecretActions.DescribeSecret); @@ -898,8 +886,7 @@ export const secretV2BridgeServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); if (!isInternal) { throwIfMissingSecretReadValueOrDescribePermission(permission, ProjectPermissionSecretActions.DescribeSecret); @@ -952,8 +939,7 @@ export const secretV2BridgeServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); throwIfMissingSecretReadValueOrDescribePermission(permission, ProjectPermissionSecretActions.DescribeSecret); @@ -1221,8 +1207,7 @@ export const secretV2BridgeServiceFactory = ({ actorId, projectId: secret.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); throwIfMissingSecretReadValueOrDescribePermission(permission, ProjectPermissionSecretActions.ReadValue, { @@ -1285,8 +1270,7 @@ export const secretV2BridgeServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const folder = await folderDAL.findBySecretPath(projectId, environment, path); @@ -1497,8 +1481,7 @@ export const secretV2BridgeServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const folder = await folderDAL.findBySecretPath(projectId, environment, secretPath); @@ -1665,8 +1648,7 @@ export const secretV2BridgeServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const secretsToUpdateGroupByPath = groupBy(inputSecrets, (el) => el.secretPath || defaultSecretPath); @@ -2016,8 +1998,7 @@ export const secretV2BridgeServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const folder = await folderDAL.findBySecretPath(projectId, environment, secretPath); @@ -2173,8 +2154,7 @@ export const secretV2BridgeServiceFactory = ({ actorId, projectId: folder.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const canRead = @@ -2239,8 +2219,7 @@ export const secretV2BridgeServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); if (!hasRole(ProjectMembershipRole.Admin)) @@ -2287,8 +2266,7 @@ export const secretV2BridgeServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const sourceFolder = await folderDAL.findBySecretPath(projectId, sourceEnvironment, sourceSecretPath); @@ -2674,8 +2652,7 @@ export const secretV2BridgeServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); throwIfMissingSecretReadValueOrDescribePermission(permission, ProjectPermissionSecretActions.DescribeSecret, { @@ -2767,8 +2744,7 @@ export const secretV2BridgeServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); throwIfMissingSecretReadValueOrDescribePermission(permission, ProjectPermissionSecretActions.DescribeSecret, { environment, @@ -2892,8 +2868,7 @@ export const secretV2BridgeServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const canRead = diff --git a/backend/src/services/secret/secret-fns.ts b/backend/src/services/secret/secret-fns.ts index 847ef17df..e12dc2ee3 100644 --- a/backend/src/services/secret/secret-fns.ts +++ b/backend/src/services/secret/secret-fns.ts @@ -3,7 +3,6 @@ import path from "path"; import RE2 from "re2"; import { - ActionProjectType, SecretEncryptionAlgo, SecretKeyEncoding, SecretType, @@ -185,8 +184,7 @@ export const recursivelyGetSecretPaths = ({ actorId: auth.actorId, projectId, actorAuthMethod: auth.actorAuthMethod, - actorOrgId: auth.actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId: auth.actorOrgId }); // Filter out paths that the user does not have permission to access, and paths that are not in the current path diff --git a/backend/src/services/secret/secret-service.ts b/backend/src/services/secret/secret-service.ts index 159bee8e3..ce03791f2 100644 --- a/backend/src/services/secret/secret-service.ts +++ b/backend/src/services/secret/secret-service.ts @@ -3,7 +3,6 @@ import { ForbiddenError, subject } from "@casl/ability"; import { - ActionProjectType, ProjectMembershipRole, ProjectUpgradeStatus, ProjectVersion, @@ -212,8 +211,7 @@ export const secretServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -330,8 +328,7 @@ export const secretServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -491,8 +488,7 @@ export const secretServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -607,8 +603,7 @@ export const secretServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); let paths: { folderId: string; path: string }[] = []; @@ -713,8 +708,7 @@ export const secretServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); throwIfMissingSecretReadValueOrDescribePermission(permission, ProjectPermissionSecretActions.ReadValue, { environment, @@ -819,8 +813,7 @@ export const secretServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionSecretActions.Create, @@ -906,8 +899,7 @@ export const secretServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -1029,8 +1021,7 @@ export const secretServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionSecretActions.Delete, @@ -2477,8 +2468,7 @@ export const secretServiceFactory = ({ actorId, projectId: folder.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.SecretRollback); const secretVersions = await secretVersionDAL.findBySecretId(secretId, { @@ -2568,8 +2558,7 @@ export const secretServiceFactory = ({ actorId, projectId: project.id, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -2674,8 +2663,7 @@ export const secretServiceFactory = ({ actorId, projectId: project.id, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan( @@ -2781,8 +2769,7 @@ export const secretServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); if (!hasRole(ProjectMembershipRole.Admin)) @@ -2866,8 +2853,7 @@ export const secretServiceFactory = ({ actorId, projectId: project.id, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); const { botKey } = await projectBotService.getBotKey(project.id); @@ -3270,8 +3256,7 @@ export const secretServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); if (!hasRole(ProjectMembershipRole.Admin)) @@ -3299,8 +3284,7 @@ export const secretServiceFactory = ({ actorId: actor.id, projectId: params.projectId, actorAuthMethod: actor.authMethod, - actorOrgId: actor.orgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId: actor.orgId }); const secrets = secretV2BridgeService.getSecretsByFolderMappings({ ...params, userId: actor.id }, permission); diff --git a/backend/src/services/service-token/service-token-service.ts b/backend/src/services/service-token/service-token-service.ts index d68b48d78..4c3cc67c0 100644 --- a/backend/src/services/service-token/service-token-service.ts +++ b/backend/src/services/service-token/service-token-service.ts @@ -3,7 +3,6 @@ import crypto from "node:crypto"; import { ForbiddenError, subject } from "@casl/ability"; import bcrypt from "bcrypt"; -import { ActionProjectType } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionActions, @@ -68,8 +67,7 @@ export const serviceTokenServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Create, ProjectPermissionSub.ServiceTokens); @@ -124,8 +122,7 @@ export const serviceTokenServiceFactory = ({ actorId, projectId: serviceToken.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.SecretManager + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Delete, ProjectPermissionSub.ServiceTokens); @@ -159,8 +156,7 @@ export const serviceTokenServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.ServiceTokens); diff --git a/backend/src/services/webhook/webhook-service.ts b/backend/src/services/webhook/webhook-service.ts index eb58ee5bd..ba3f2170a 100644 --- a/backend/src/services/webhook/webhook-service.ts +++ b/backend/src/services/webhook/webhook-service.ts @@ -1,6 +1,6 @@ import { ForbiddenError } from "@casl/ability"; -import { ActionProjectType, TWebhooksInsert } from "@app/db/schemas"; +import { TWebhooksInsert } from "@app/db/schemas"; import { TPermissionServiceFactory } from "@app/ee/services/permission/permission-service-types"; import { ProjectPermissionActions, ProjectPermissionSub } from "@app/ee/services/permission/project-permission"; import { NotFoundError } from "@app/lib/errors"; @@ -54,8 +54,7 @@ export const webhookServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Create, ProjectPermissionSub.Webhooks); const env = await projectEnvDAL.findOne({ projectId, slug: environment }); @@ -93,8 +92,7 @@ export const webhookServiceFactory = ({ actorId, projectId: webhook.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Edit, ProjectPermissionSub.Webhooks); @@ -111,8 +109,7 @@ export const webhookServiceFactory = ({ actorId, projectId: webhook.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Delete, ProjectPermissionSub.Webhooks); @@ -129,8 +126,7 @@ export const webhookServiceFactory = ({ actorId, projectId: webhook.projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); const project = await projectDAL.findById(webhook.projectId); @@ -181,8 +177,7 @@ export const webhookServiceFactory = ({ actorId, projectId, actorAuthMethod, - actorOrgId, - actionProjectType: ActionProjectType.Any + actorOrgId }); ForbiddenError.from(permission).throwUnlessCan(ProjectPermissionActions.Read, ProjectPermissionSub.Webhooks);