Получите права для определенного пользователя на файле/dir

Авторитетный источник того, что находится в /proc документируется в исходное дерево ядра в Documentation/filesystem/proc.txt. Это ссылается на Documentation/sysctl как на документ, который описывает /proc/sys. То, что другие ссылок на документы в исходной документации дерева ядра, так быть готовым перейти через то дерево.

Те ссылки к интерфейсу gitweb, таким образом, можно выбрать конкретную версию Linux, которым Вы интересуетесь. Те ссылки указывают текущей ГОЛОВЕ.

2
03.09.2011, 19:33
1 ответ

Я разрабатываю следующий код удара

#!/bin/bash
# Use: $0 user files

user="$1"
shift
sudo -u "$user" bash -c 'for f; do
      [[ -r "$f" ]] && printf 'r' || printf '-'
      [[ -w "$f" ]] && printf 'w' || printf '-'
      [[ -x "$f" ]] && printf 'x' || printf '-'
      printf " %s\\n" "$f"
  done' _ "$@"

Это должно автоматически принять во внимание acl, при наличии, но недостаток является использованием sudo (или альтернативно su) стать $user.

1
27.01.2020, 22:24
  • 1
    я думал об этом, но разве это не создает огромную утечку безопасности? Выполняющемуся пользователю были бы нужны sudo права... –  dtech 03.09.2011, 20:21
  • 2
    , я понял, что вскоре после комментария, см. мой отредактированный комментарий –  dtech 03.09.2011, 20:28
  • 3
    Что, если у вызывающего абонента нет доступа к тем родительским каталогам файлов? Это не может всегда определить права доступа для другого пользователя. –  enzotib 03.09.2011, 20:33
  • 4
    Если бы у вызывающего абонента нет доступа, он должен возвратить false или ошибку (я хотел бы использовать его в качестве дополнительного слоя управления доступом, сервис не может даже обслуживать ничто, что он не имеет доступом к), –  dtech 03.09.2011, 20:39
  • 5
    @dtech: у Меня нет четкого представления о том, как сделать, таким образом, я надеюсь, что кто-то еще входит с лучшим ответом. –  enzotib 03.09.2011, 20:45

Теги

Похожие вопросы