Renamed identity auth template permissions

This commit is contained in:
Carlos Monastyrski
2025-08-04 16:28:57 -03:00
parent dc4db40936
commit 830a2f9581
8 changed files with 22 additions and 16 deletions
@@ -34,7 +34,7 @@ export enum OrgPermissionMachineIdentityAuthTemplateActions {
CreateTemplates = "create-templates", CreateTemplates = "create-templates",
DeleteTemplates = "delete-templates", DeleteTemplates = "delete-templates",
UnlinkTemplates = "unlink-templates", UnlinkTemplates = "unlink-templates",
UseTemplates = "use-templates" AttachTemplates = "attach-templates"
} }
export enum OrgPermissionAdminConsoleAction { export enum OrgPermissionAdminConsoleAction {
@@ -383,7 +383,10 @@ const buildAdminPermission = () => {
OrgPermissionMachineIdentityAuthTemplateActions.UnlinkTemplates, OrgPermissionMachineIdentityAuthTemplateActions.UnlinkTemplates,
OrgPermissionSubjects.MachineIdentityAuthTemplate OrgPermissionSubjects.MachineIdentityAuthTemplate
); );
can(OrgPermissionMachineIdentityAuthTemplateActions.UseTemplates, OrgPermissionSubjects.MachineIdentityAuthTemplate); can(
OrgPermissionMachineIdentityAuthTemplateActions.AttachTemplates,
OrgPermissionSubjects.MachineIdentityAuthTemplate
);
can(OrgPermissionSecretShareAction.ManageSettings, OrgPermissionSubjects.SecretShare); can(OrgPermissionSecretShareAction.ManageSettings, OrgPermissionSubjects.SecretShare);
@@ -425,7 +428,10 @@ const buildMemberPermission = () => {
OrgPermissionMachineIdentityAuthTemplateActions.UnlinkTemplates, OrgPermissionMachineIdentityAuthTemplateActions.UnlinkTemplates,
OrgPermissionSubjects.MachineIdentityAuthTemplate OrgPermissionSubjects.MachineIdentityAuthTemplate
); );
can(OrgPermissionMachineIdentityAuthTemplateActions.UseTemplates, OrgPermissionSubjects.MachineIdentityAuthTemplate); can(
OrgPermissionMachineIdentityAuthTemplateActions.AttachTemplates,
OrgPermissionSubjects.MachineIdentityAuthTemplate
);
return rules; return rules;
}; };
@@ -360,7 +360,7 @@ export const identityAuthTemplateServiceFactory = ({
actorOrgId actorOrgId
); );
ForbiddenError.from(permission).throwUnlessCan( ForbiddenError.from(permission).throwUnlessCan(
OrgPermissionMachineIdentityAuthTemplateActions.UseTemplates, OrgPermissionMachineIdentityAuthTemplateActions.AttachTemplates,
OrgPermissionSubjects.MachineIdentityAuthTemplate OrgPermissionSubjects.MachineIdentityAuthTemplate
); );
@@ -224,7 +224,7 @@ export const identityLdapAuthServiceFactory = ({
if (templateId) { if (templateId) {
ForbiddenError.from(permission).throwUnlessCan( ForbiddenError.from(permission).throwUnlessCan(
OrgPermissionMachineIdentityAuthTemplateActions.UseTemplates, OrgPermissionMachineIdentityAuthTemplateActions.AttachTemplates,
OrgPermissionSubjects.MachineIdentityAuthTemplate OrgPermissionSubjects.MachineIdentityAuthTemplate
); );
} }
@@ -386,7 +386,7 @@ export const identityLdapAuthServiceFactory = ({
if (templateId) { if (templateId) {
ForbiddenError.from(permission).throwUnlessCan( ForbiddenError.from(permission).throwUnlessCan(
OrgPermissionMachineIdentityAuthTemplateActions.UseTemplates, OrgPermissionMachineIdentityAuthTemplateActions.AttachTemplates,
OrgPermissionSubjects.MachineIdentityAuthTemplate OrgPermissionSubjects.MachineIdentityAuthTemplate
); );
} }
@@ -227,4 +227,4 @@ Supports conditions and permission inversion
| `edit-templates` | Modify existing identity auth templates | | `edit-templates` | Modify existing identity auth templates |
| `delete-templates` | Remove identity auth templates | | `delete-templates` | Remove identity auth templates |
| `unlink-templates` | Unlink identity auth templates from identities | | `unlink-templates` | Unlink identity auth templates from identities |
| `use-templates` | Attach identity auth templates to identities | | `attach-templates` | Attach identity auth templates to identities |
@@ -27,7 +27,7 @@ export enum OrgPermissionMachineIdentityAuthTemplateActions {
EditTemplates = "edit-templates", EditTemplates = "edit-templates",
DeleteTemplates = "delete-templates", DeleteTemplates = "delete-templates",
UnlinkTemplates = "unlink-templates", UnlinkTemplates = "unlink-templates",
UseTemplates = "use-templates" AttachTemplates = "attach-templates"
} }
export enum OrgPermissionSubjects { export enum OrgPermissionSubjects {
@@ -149,8 +149,8 @@ export const IdentityLdapAuthForm = ({
const { data: templates } = useGetAvailableTemplates(MachineIdentityAuthMethod.LDAP); const { data: templates } = useGetAvailableTemplates(MachineIdentityAuthMethod.LDAP);
const { permission } = useOrgPermission(); const { permission } = useOrgPermission();
const canUseTemplates = permission.can( const canAttachTemplates = permission.can(
OrgPermissionMachineIdentityAuthTemplateActions.UseTemplates, OrgPermissionMachineIdentityAuthTemplateActions.AttachTemplates,
OrgPermissionSubjects.MachineIdentityAuthTemplate OrgPermissionSubjects.MachineIdentityAuthTemplate
); );
@@ -352,7 +352,7 @@ export const IdentityLdapAuthForm = ({
<Tab value={IdentityFormTab.Advanced}>Advanced</Tab> <Tab value={IdentityFormTab.Advanced}>Advanced</Tab>
</TabList> </TabList>
<TabPanel value={IdentityFormTab.Configuration}> <TabPanel value={IdentityFormTab.Configuration}>
{canUseTemplates && ( {canAttachTemplates && (
<Controller <Controller
control={control} control={control}
name="scope" name="scope"
@@ -90,7 +90,7 @@ const machineIdentityAuthTemplatePermissionSchema = z
[OrgPermissionMachineIdentityAuthTemplateActions.DeleteTemplates]: z.boolean().optional(), [OrgPermissionMachineIdentityAuthTemplateActions.DeleteTemplates]: z.boolean().optional(),
[OrgPermissionMachineIdentityAuthTemplateActions.CreateTemplates]: z.boolean().optional(), [OrgPermissionMachineIdentityAuthTemplateActions.CreateTemplates]: z.boolean().optional(),
[OrgPermissionMachineIdentityAuthTemplateActions.UnlinkTemplates]: z.boolean().optional(), [OrgPermissionMachineIdentityAuthTemplateActions.UnlinkTemplates]: z.boolean().optional(),
[OrgPermissionMachineIdentityAuthTemplateActions.UseTemplates]: z.boolean().optional() [OrgPermissionMachineIdentityAuthTemplateActions.AttachTemplates]: z.boolean().optional()
}) })
.optional(); .optional();
@@ -45,7 +45,7 @@ const PERMISSION_ACTIONS = [
label: "Unlink Templates" label: "Unlink Templates"
}, },
{ {
action: OrgPermissionMachineIdentityAuthTemplateActions.UseTemplates, action: OrgPermissionMachineIdentityAuthTemplateActions.AttachTemplates,
label: "Attach Templates" label: "Attach Templates"
} }
] as const; ] as const;
@@ -108,7 +108,7 @@ export const OrgPermissionMachineIdentityAuthTemplateRow = ({
[OrgPermissionMachineIdentityAuthTemplateActions.CreateTemplates]: true, [OrgPermissionMachineIdentityAuthTemplateActions.CreateTemplates]: true,
[OrgPermissionMachineIdentityAuthTemplateActions.DeleteTemplates]: true, [OrgPermissionMachineIdentityAuthTemplateActions.DeleteTemplates]: true,
[OrgPermissionMachineIdentityAuthTemplateActions.UnlinkTemplates]: true, [OrgPermissionMachineIdentityAuthTemplateActions.UnlinkTemplates]: true,
[OrgPermissionMachineIdentityAuthTemplateActions.UseTemplates]: true [OrgPermissionMachineIdentityAuthTemplateActions.AttachTemplates]: true
}, },
{ shouldDirty: true } { shouldDirty: true }
); );
@@ -122,7 +122,7 @@ export const OrgPermissionMachineIdentityAuthTemplateRow = ({
[OrgPermissionMachineIdentityAuthTemplateActions.CreateTemplates]: false, [OrgPermissionMachineIdentityAuthTemplateActions.CreateTemplates]: false,
[OrgPermissionMachineIdentityAuthTemplateActions.DeleteTemplates]: false, [OrgPermissionMachineIdentityAuthTemplateActions.DeleteTemplates]: false,
[OrgPermissionMachineIdentityAuthTemplateActions.UnlinkTemplates]: false, [OrgPermissionMachineIdentityAuthTemplateActions.UnlinkTemplates]: false,
[OrgPermissionMachineIdentityAuthTemplateActions.UseTemplates]: true [OrgPermissionMachineIdentityAuthTemplateActions.AttachTemplates]: true
}, },
{ shouldDirty: true } { shouldDirty: true }
); );
@@ -138,7 +138,7 @@ export const OrgPermissionMachineIdentityAuthTemplateRow = ({
[OrgPermissionMachineIdentityAuthTemplateActions.CreateTemplates]: false, [OrgPermissionMachineIdentityAuthTemplateActions.CreateTemplates]: false,
[OrgPermissionMachineIdentityAuthTemplateActions.DeleteTemplates]: false, [OrgPermissionMachineIdentityAuthTemplateActions.DeleteTemplates]: false,
[OrgPermissionMachineIdentityAuthTemplateActions.UnlinkTemplates]: false, [OrgPermissionMachineIdentityAuthTemplateActions.UnlinkTemplates]: false,
[OrgPermissionMachineIdentityAuthTemplateActions.UseTemplates]: false [OrgPermissionMachineIdentityAuthTemplateActions.AttachTemplates]: false
}, },
{ shouldDirty: true } { shouldDirty: true }
); );