ACL
덤프버전 : r20230302
, 십자인대에 대한 내용은 십자인대 문서
참고하십시오.
1. 개요[편집]
Access Control List
방화벽, 웹 사이트 등에서 정보 이용 주체가 정보(객체)에 대해 어떤 권한을 가지는지 정해 놓은 목록. 예시를 들자면 'A파일에 대해 A사용자는 읽기와 쓰기 권한을, B사용자는 읽기 권한을 가진다'와 같이 사용자 이름과 권한을 표시해두는 것이 있다. 주로 임의적 접근통제 방식[3] 에서 사용한다. 모니위키와 나무위키에서 접근 제한에 사용된다. 참고로 접근제한이라고 하지만 열람 권한이 아니라 편집 권한이다. 간혹 '아클'이라고 읽는 경우가 있는데, '에이씨엘'이라고 읽어야 한다. 참고로 문자이름으로 읽기를 하지 않는 경우에도 영어 음소배열론 상으로는 에이클(/eɪkəl/ 혹은 /eɪkl̩/)이 자연스럽다.
2. the seed에서의 ACL[편집]
[인터페이스 보기·접기]
the seed에서 지원하는 기능이다. ACL의 거부 대상에 해당하는 경우 특정 기능의 이용이 제한된다. 문서에 ACL이 지정되었는지 여부는 문서 역사 및 ACL 메뉴에서 확인할 수 있다. 참고로 나무위키 문서에 걸리는 ACL은 다음과 같다. 자세히 열람하려면 이곳을 보자. ACL은 관리자만 변경할 수 있다. 단, 규정 문서, 휴지통 문서나 파일휴지통, 위키운영 문서의 경우에는 사측 관리자를 제외하고는 변경할 수 없다.
- A: 설정/해제 여부. 설정(insert)와 해제(delete)로 나뉜다.
- B: 권한. read(읽기)[4] , edit(편집)[5] , delete(삭제), move(이동), create_thread(토론 발제), write_thread_comment(토론 댓글 달기)[6] , edit_request(편집 요청), acl(ACL 설정)으로 나뉜다.
- C: 허용/거부 여부. 허용(allow)과 거부(deny), 이름공간ACL 실행(gotons)[7][8]
개편 이후에는 해당 기능이 사라졌다으로 나뉜다.
- D: perm, member, ip, aclgroup, geoip으로 나뉜다.
- ip:192.168.0.1, member:umanle, member:관리자(사측 관리자) 등 특정 사용자만 허용/거부할 수 있다.[9][10]
- geoip를 지정하면 특정 국가에 대해 편집을 제한하거나 허용할 수 있다. 예시
- 권한은 perm:으로 시작하며, any(아무나), member(로그인된 사용자), ip(IP 이용자[11] ), admin(관리자), member_signup_15days_ago(가입한지 15일 지난 사용자),
member_not_suspend(차단되지 않은 사용자)[12] ,suspend_account(사용자 차단), blocked_ipacl(IP 주소 차단)[13] , document_contributor(해당 문서 기여자), match_username_and_document_title(문서 제목과 사용자 이름이 일치)[14] , contributor(위키 기여자)[15] 으로 나뉜다. 기본적으로 위의 권한은 위키에서 지원하며 개발자 모드를 사용하여 perm:ip 나 perm:aclgroup, perm:developer, perm:bot 같이 엔진에 없는 권한 설정이 가능하다. - ACLGroup은 aclgroup으로 시작하며 aclgroup 권한을 가진 사용자[16] 가 특정 사용자를 추가하거나 삭제할수 있다. 현재 나무위키에서는 차단이나 경고로만 용도로 쓰인다. 현재까지 확인된 것으로는 경고, 편집요청 차단, 차단된 사용자[17] , IDC[18] , 로그인 허용 차단[19] , VPNGate[20] 가 있다. 이 중 일반 문서 기준 로그인 허용 차단, IDC, VPNGate 그룹의 경우 기본 이름공간에서 perm:member 다음에 위치하고 있어 로그인시 편집이 가능하도록 되어 있다.
- 문서 ACL이 존재하지 않는다면 이름공간 ACL이 적용되는데, 만약 문서 ACL이 존재하는 상태라면 정의되어 있지 않은 사용자는 무조건 거부된다.[21]
사측 관리자의 사용자 문서에 위와 같은 형식이 아니라 (everyone, everyone, everyone, admin, everyone)와 같은 형식으로 기록되어 있는데(#), 이것은 현재 사용 중인 ACL이 아닌 과거에 사용하던 ACL버전에서 설정한 내용으로 당시에는 현재처럼 상세한 설정이 불가능했으며, 단순히 모든 사용자, 로그인한 사용자, 관리자로만 설정이 가능했으며 관리자의 사용자 문서에 나오는 버전은 abcde표기로 앞부터 순서대로 읽기 권한, 쓰기 권한, 삭제 권한, 토론 권한, 이동 권한이다.[22] delete로 ACL 변경은 ACL 초기화를 의미했다. abcdef와 함께 false/true이란 표기도 나오는데 이것은 당시 존재했던 봇을 차단하는 ACL 설정 여부를 의미했다. 또한 한국에서 문서 열람을 차단하는 설정도 있었다 사라졌다.
2.1. IPACL[편집]
위의 문서 ACL과는 다르며, IP의 접근을 제어하는 기능이었다.[23] 4.18.0 업데이트를 통해 ACLGroup 기능이 대신 추가되면서 삭제되었다. IP 접근 제어 기능이라고 부르는 경우보다는 IP 차단 기능이라고 더 많이 불렀다.
3. 모니위키에서의 ACL[편집]
모니위키도 ACL 설정 기능을 제공하고 있으며, 나무위키의 것과는 달리 show(열람), editpage(편집) 등 문서 action의 권한을 지정하는 방식이다. 문제는 변변한 관리 인터페이스가 없어 직접 일일이 파일을 수정해야 반영이 되었다는 점인데, 이 때문에 리그베다 위키는 부관리자를 뽑는 데 소극적이게 되었다. 사유화 사태 이후 기능이 금방 만들어진 걸로 봐서는 못 만들었다기보다는 귀찮아서 넣지 않았을 가능성이 크다.
리그베다 위키에서는 2015년 리그베다 위키 사유화 사태 이후 위키지기라는 자리를 도입하면서 기초적인 관리 기능은 만든 것으로 보이나 모니위키 기본 적용 여부는 알 수 없다.
4. 미디어위키에서의 보호 기능[편집]
미디어위키 엔진의 경우 역시 생성, 삭제, 편집이나 이동, 열람을 제한하는 기능이 존재하나, 이 쪽에서는 ACL이 아닌 '보호'라고 불린다. 위키백과의 경우 회원 수정(가입 후 15일이 되지 않은 신규 가입한 사용자 제외)은 '준보호'로, 장기인증된 사용자는 '장기인증보호'로, 관리자 수정은 '완전 보호'로 불린다.

[1] 편집 요청으로 기여시 편집권한 취득.[2] 사실상 관리자들이 Access Control List을 설정하면, 틀은 수동으로 넣어야 한다. 일반 사용자가 해당 틀들을 무단으로 삽입하면 편집권 남용으로 간주되어 제재를 받을 수 있다. 단, 실제 편집(접근)제한과 일치하는 경우에는 해당하는 접근(편집)제한 틀을 삽입하는 것이 허용된다.[3] 과거에 SELinux가 없던 시절 리눅스가 사용했던 방식이다. 임의적 접근통제는 사용자 ID를 기반으로 자료에 접근하는 것을 제어하는 방식이다. 여기서 ACL은 접근 허용 아이디를 저장해두는 목록이라고 보면 된다.[4] 참고로 이 권한이 거부되는 경우 편집을 비롯한 모든 권한(ACL, 역링크 확인 제외)이 거부된다. 편집에 들어가면 문서의 RAW(문법을 포함한 모든 글자)를 볼 수 있기 때문. 이외에도 문서의 내용을 볼 수 있는 기능이 막힌다. 과거에는 되돌리기 기능을 이용해서 내용을 볼 수 있는 버그가 있었으나 언제부터인가 패치되었다. 읽기 ACL은 과거에는 개별 문서에서 조정할 수 있었으나, 어느 시점부터는 조정할 수 없게 되었으며, 이름공간(네임스페이스)에서만 조정이 가능하다. 대표적으로 휴지통과 위키운영 네임스페이스는 perm:admin ACL이 적용되어 있다.[5] 이게 권한이 없어 거부된다면 이동, 삭제도 거부된다.[6] 토론 발제 ACL하고는 별개로 작동한다.[7] gotons로 설정 시, 해당 사용자는 이름공간 ACL 규칙을 통과할 경우 허용된다. 즉, 이름공간 ACL은 문서에 개별 설정된 ACL보다 우선순위가 떨어지는데, 이 우선순위를 문서별 ACL과 동일한 수준으로 만들어준다.[8] ACL 그룹 개편 이전에는
[10] 즉, 일반 사용자에 대한 권한도 설정할 수 있다. 단, 이는 사측 관리자만 이를 설정할 수 있다.[11] 주로 로그인하지 않은 사용자를 칭하는 말이다.[12] 차단 아이피/사용자 권한이 분리되면서 효력이 없어진 것으로 보인다.[13] 2020년 8월 25일 ACL 개편 이후 차단된 사용자 ACL Group로 대체되었다.#[14] 사용자 문서의 이름공간 ACL에 사용되며, 해당 사용자만 편집할 수 있도록 한다.[15] 임의의 문서에 1번이라도 기여한 사용자. 일반 문서에 기본적으로 적용되는 ACL이었으나, 2020년 8월 25일 ACL 개편 이후에는 거의 보이지 않는다.[16] 나무위키에서는 관리자만 이 권한을 가지고 있다.[17] 이름대로 차단된 아이피나 사용자가 속하는 그룹으로, 기존 차단자 모두 일괄 적용되었다.[18] 데이터센터 IP 등 일반적으로 인터넷 접속에 사용되는 대역이 아닌 경우 적용되며 ACL 개편 전에는 아이피 차단 형태로 되어 있었으나 개편후 별도 그룹으로 분리되었다.[19] 아이피 중 로그인할 경우 이용을 허용하는 것으로, ACL 개편 전에는 차단시 로그인 허용 여부를 지정하는 방식으로 이루어졌다.[20] VPNGate의 공유 기능을 사용하는 아이피가 속하는 대역으로, 해당 그룹에 속해 편집이 막히는 경우 소명 게시판에 VPNGate 자원 공유 해제 인증을 하면 풀어준다.[21] 즉, perm:member_signup_15days_ago만 액션:gotons으로 이름공간 ACL을 적용하는 경우 아이피나 가입한지 15일이 지나지 않은 로그인된 사용자의 계정으로 편집시 적용할 ACL이 없어 편집이 거부된다. 대신 편집 요청이 가능한 경우 편집 요청 페이지로 이동된다.[22] 당시 인터페이스 [23] 그래서 IP Access Control List => IPACL이다.
[*]
표시가 붙은 것은 차단된 사용자는 포함되지 않았고, 이름공간ACL실행이 없었으나, ACL 그룹 개편 이후 새로 생겼고 '허용'은 이전 순서에 거부되는 조건이 없다면 무조건 허용되도록 바뀌었다.[9] 