fix: restrict access to docker containers page to admins (#912)

This commit is contained in:
Meier Lukas
2024-08-04 21:19:16 +02:00
committed by GitHub
parent 0cec1dbb17
commit b8b084c188
3 changed files with 99 additions and 2 deletions

View File

@@ -8,7 +8,7 @@ import type { DockerContainerState } from "@homarr/definitions";
import { createCacheChannel } from "@homarr/redis";
import { z } from "@homarr/validation";
import { createTRPCRouter, permissionRequiredProcedure, publicProcedure } from "../../trpc";
import { createTRPCRouter, permissionRequiredProcedure } from "../../trpc";
import { DockerSingleton } from "./docker-singleton";
const dockerCache = createCacheChannel<{
@@ -16,7 +16,7 @@ const dockerCache = createCacheChannel<{
}>("docker-containers", 5 * 60 * 1000);
export const dockerRouter = createTRPCRouter({
getContainers: publicProcedure.query(async () => {
getContainers: permissionRequiredProcedure.requiresPermission("admin").query(async () => {
const { timestamp, data } = await dockerCache.consumeAsync(async () => {
const dockerInstances = DockerSingleton.getInstance();
const containers = await Promise.all(