Skip to content

Commit a7cc00c

Browse files
Unauthorized route migration for routes owned by appex-sharedux (#214779)
### Authz API migration for unauthorized routes This PR migrates last unauthorized routes owned by your team to a new security configuration. Please refer to the documentation for more information: [Authorization API](https://docs.elastic.dev/kibana-dev-docs/key-concepts/security-api-authorization) ### **Before migration:** ```ts router.get({ path: '/api/path', ... }, handler); ``` ### **After migration:** ```ts router.get({ path: '/api/path', security: { authz: { enabled: false, reason: 'This route is opted out from authorization because ...', }, }, ... }, handler); ```
1 parent df55627 commit a7cc00c

File tree

3 files changed

+36
-3
lines changed

3 files changed

+36
-3
lines changed

src/core/packages/ui-settings/server-internal/src/routes/get.ts

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,14 +38,32 @@ export function registerGetRoute(router: InternalUiSettingsRouter) {
3838
}
3939
};
4040
router.get(
41-
{ path: '/api/kibana/settings', validate: false },
41+
{
42+
path: '/api/kibana/settings',
43+
validate: false,
44+
security: {
45+
authz: {
46+
enabled: false,
47+
reason: 'This route delegates authorization to the UI Settings Client',
48+
},
49+
},
50+
},
4251
async (context, request, response) => {
4352
const uiSettingsClient = (await context.core).uiSettings.client;
4453
return await getFromRequest(uiSettingsClient, context, request, response);
4554
}
4655
);
4756
router.get(
48-
{ path: '/api/kibana/global_settings', validate: false },
57+
{
58+
path: '/api/kibana/global_settings',
59+
validate: false,
60+
security: {
61+
authz: {
62+
enabled: false,
63+
reason: 'This route delegates authorization to the UI Settings Client',
64+
},
65+
},
66+
},
4967
async (context, request, response) => {
5068
const uiSettingsClient = (await context.core).uiSettings.globalClient;
5169
return await getFromRequest(uiSettingsClient, context, request, response);

src/platform/plugins/shared/files/server/routes/public_facing/download.ts

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,9 +74,18 @@ export function register(router: FilesRouter) {
7474
path: FILES_API_ROUTES.public.download,
7575
validate: { ...rt },
7676
options: {
77-
authRequired: false,
7877
access: 'public',
7978
},
79+
security: {
80+
authz: {
81+
enabled: false,
82+
reason: 'This route is public and does not require user authentication',
83+
},
84+
authc: {
85+
enabled: false,
86+
reason: 'This route is public and does not require user authentication',
87+
},
88+
},
8089
},
8190
handler
8291
);

src/platform/plugins/shared/share/server/url_service/http/short_urls/register_goto_route.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,12 @@ export const registerGotoRoute = (router: IRouter, core: CoreSetup) => {
1818
core.http.resources.register(
1919
{
2020
path: '/goto/{id}',
21+
security: {
22+
authz: {
23+
enabled: false,
24+
reason: 'This route handles redirection',
25+
},
26+
},
2127
validate: {
2228
params: schema.object({
2329
id: schema.string({

0 commit comments

Comments
 (0)