настроить пермишон для юзера, чтоб он мог иметь доступ только к определенному типу файла (например .jar)?
К определенному типу файла - никак. Все остальное - https://en.wikipedia.org/wiki/Chmod
мб вынести файлы к которым надо дать доступ в отдельную директорию и дать пермишен на нее
Через chmod я смогу настроить чтоби не било прав читать в файловой системе что-то кроме .jar?
а так разве не то что мне нужно? RUN useradd --uid $USER_UID $USERNAME && find ../. -name "*.jar" | chmod r-x USER $USER_UID
RUN addgroup --gid $USER_GID -S $USERNAME \ && adduser -uid $USER_UID -S $USERNAME -G $USERNAME USER $USER_UID:$USER_GID Вот такое решение позволит произвести COPY -> EXPOSE -> ENTRYPOINT под USERNAME?
Тебе даже пользователей в контейнере заводить не нужно.
Всм если ты с хоста укажешь "запускайся под пользователем 1337" - он запустится под пользователем 1337
так его же нет, я его создаю прям тут в контейнере
FROM alpine # Создаем папки, у первого юзера должен быть доступ только к первому юзеру, у второй - только у второго юзера RUN mkdir example-for-user1 RUN mkdir example-for-user2 # Записываем рандомные данные в файлы RUN echo 'Hello world' > example-for-user1/secret.txt RUN echo 'Hello world' > example-for-user2/secret.txt # Даем права на папки # Первый юзер - 1337 # Второй юзер - 1338 RUN chown 1337:1337 -R example-for-user1/ RUN chown 1338:1338 -R example-for-user2/ # Запрещаем доступ к папкам всем остальным, кроме владельцев RUN chmod u+rwx -R example-for-user1/ RUN chmod g-rwx -R example-for-user1/ RUN chmod o-rwx -R example-for-user1/ RUN chmod u+rwx -R example-for-user2/ RUN chmod g-rwx -R example-for-user2/ RUN chmod o-rwx -R example-for-user2/ ENTRYPOINT [ "/bin/sh" ]
Я не очень понимаю к чему ти ведешь. У меня кейс такой: N контейнеров ранятся под root, нужно заменить юзеров для етих контейнеров, и все. Почему? Так как проблема в root, что он имеет unrestricted root access - security weakness.
Обсуждают сегодня