Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 33c9aa0

Browse files
authored
fix: require permissions to view pages related to organization roles (#16688)
Closes [this issue](coder/internal#393) This PR adds the`<RequirePermissions />` component to the following routes: - _/organizations/\<org\>/roles_ - _/organizations/\<org\>/roles/create_
1 parent 98dfc70 commit 33c9aa0

File tree

2 files changed

+16
-4
lines changed

2 files changed

+16
-4
lines changed

site/src/pages/OrganizationSettingsPage/CustomRolesPage/CreateEditRolePage.tsx

+8-2
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import type { CustomRoleRequest } from "api/typesGenerated";
88
import { ErrorAlert } from "components/Alert/ErrorAlert";
99
import { displayError } from "components/GlobalSnackbar/utils";
1010
import { Loader } from "components/Loader/Loader";
11+
import { RequirePermission } from "contexts/auth/RequirePermission";
1112
import { useOrganizationSettings } from "modules/management/OrganizationSettingsLayout";
1213
import type { FC } from "react";
1314
import { Helmet } from "react-helmet-async";
@@ -45,7 +46,12 @@ export const CreateEditRolePage: FC = () => {
4546
}
4647

4748
return (
48-
<>
49+
<RequirePermission
50+
isFeatureVisible={
51+
organizationPermissions.assignOrgRoles ||
52+
organizationPermissions.createOrgRoles
53+
}
54+
>
4955
<Helmet>
5056
<title>
5157
{pageTitle(
@@ -83,7 +89,7 @@ export const CreateEditRolePage: FC = () => {
8389
organizationName={organizationName}
8490
canAssignOrgRole={organizationPermissions.assignOrgRoles}
8591
/>
86-
</>
92+
</RequirePermission>
8793
);
8894
};
8995

site/src/pages/OrganizationSettingsPage/CustomRolesPage/CustomRolesPage.tsx

+8-2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import { displayError, displaySuccess } from "components/GlobalSnackbar/utils";
66
import { Loader } from "components/Loader/Loader";
77
import { SettingsHeader } from "components/SettingsHeader/SettingsHeader";
88
import { Stack } from "components/Stack/Stack";
9+
import { RequirePermission } from "contexts/auth/RequirePermission";
910
import { useFeatureVisibility } from "modules/dashboard/useFeatureVisibility";
1011
import { useOrganizationSettings } from "modules/management/OrganizationSettingsLayout";
1112
import { type FC, useEffect, useState } from "react";
@@ -53,7 +54,12 @@ export const CustomRolesPage: FC = () => {
5354
}
5455

5556
return (
56-
<>
57+
<RequirePermission
58+
isFeatureVisible={
59+
organizationPermissions.assignOrgRoles ||
60+
organizationPermissions.createOrgRoles
61+
}
62+
>
5763
<Helmet>
5864
<title>{pageTitle("Custom Roles")}</title>
5965
</Helmet>
@@ -100,7 +106,7 @@ export const CustomRolesPage: FC = () => {
100106
}
101107
}}
102108
/>
103-
</>
109+
</RequirePermission>
104110
);
105111
};
106112

0 commit comments

Comments
 (0)