"부정적" ACL을 생성할 수 있습니까?

"부정적" ACL을 생성할 수 있습니까?

ACL을 생성하여부정적인jdoe특정 사용자(예:)의 특정 파일에 액세스하시겠습니까 ?

을 제외한 모든 사용자에게 파일에 대한 액세스를 제공하는 간단한 ACL 솔루션에는 관심이 없습니다 jdoe. 이 솔루션의 단점은 시스템에서 연속적으로 생성된 사용자가 파일에 액세스할 수 없다는 것입니다.

이 이외의 모든 사용자를 위한 그룹을 만들고 jdoe그룹에 파일에 대한 액세스 권한을 부여하는 것도 동일한 단점이 있습니다.

이 명령은 setfacl -x u:jdoe /path/file생성된 ACL만 삭제하므로 작동하지 않습니다.

답변1

물론, 그것을 증명하기 위해, 루트로서...

touch /tmp/test
setfacl -m u:jdoe:--- /tmp/test
getfacl /tmp/test
su - jdoe
cat /tmp/test
exit
rm /tmp/test

디렉터리의 모든 파일에 대해 기본적으로 이 작업을 수행할 수도 있습니다.

mkdir /var/data/not-for-jdoe
setfacl -m u:jdoe:--- /var/data/not-for-jdoe
setfacl -d -m u:jdoe:--- /var/data/not-for-jdoe

위의 스위치 -m는 마스크이며, -d스위치는 이를 디렉터리의 모든 새 파일 시스템 개체에 대한 기본 마스크로 만듭니다. ---다음과 같은 다른 권한 값이 있을 수 있습니다.

  • rwx
  • r--
  • rw-
  • r-x
  • 7
  • 4
  • 6
  • 5

이 그룹은 다른 마스크와 동일하게 작동 g:groupname:---하거나 조합하여 작동합니다 u:username:---,g:groupname:---,o::---. 사용자 이름이나 그룹 이름을 지정하지 않으면 현재 사용자/그룹 소유권에 마스크가 적용됩니다.

답변2

setfacl표준화되지 않은 1997년 POSIX ACL 초안 제안에서 철회되었기 때문에 더 이상 사용되지 않는 명령입니다.

setfacl할 수 없습니다.

NFSv4/NTFS ACL을 지원하는 최신 운영 체제가 있는 경우 이 작업을 수행할 수 있습니다. 예를 들어 참조하십시오.http://schillix.sourceforge.net/man/man1/chmod.1.html

19페이지부터 시작되는 예시를 확인하세요.

이는 Solaris에서 작동하지만 AIX 및 OSX도 NFSv4 ACL을 지원합니다.

관련 정보