Linux Chmod 스타일 권한 숫자 만들기.

JWT토큰 관련 설계를 만들다가

파라미터를 짧게 만들려고

웹사이트 화면이나 API에서 사용할 수 있는 권한의 종류는 생각보다 많지 않아서 미리 정의가능하다.

VIEW
READ
WRITE
MODIFY
DELETE
EXECUTE

 

좀 더 나올수도 있지만

Chmod Style

--- user ---
r 400
w 200
x 100
--- group ---
r 40
w 20
x 10
--- other ---
r 4
w 2
x 1

여기서 숫자 규칙은..

어떤숫자 조합을 더해도 중복숫자가 없어야한다.

이 규칙에 따라 위의 정의된 권한에 숫자를 부여해보면

VIEW 1
READ 2
WRITE 4
MODIFY 8
DELETE 16
EXECUTE 32

ex) WRITE = VIEW + READ + 1

이런 규칙으로 계산을 하면된다. 어차피 2씩 곱하는거나 마찬가지.

숫자를 더 줄일 규칙이 있는지 찾아봐야겠다.