Discord 권한 정수: 숫자 하나에 권한이 저장되는 방식
권한 정수는 이진수의 각 자리가 Discord 권한 하나를 켜거나 끄는 숫자 하나입니다. 봇 초대 링크의 permissions 뒤에 있는 숫자이며(값 8은 관리자를 뜻합니다), Discord와 봇이 전체 권한 집합을 하나의 값으로 저장할 수 있게 합니다.
숫자가 작동하는 방식
Discord에는 채널 보기, 메시지 보내기, 멤버 밴 등 수십 가지 권한이 있습니다. 각각은 고정된 2의 거듭제곱 값을 가집니다. 채널 보기는 1024, 메시지 보내기는 2048, 메시지 관리는 8192, 관리자는 8입니다. 권한을 합치려면 숫자를 더합니다. 채널 보기와 메시지 보내기를 가진 역할은 1024 + 2048 = 3072입니다.
모든 권한이 자기 비트를 쓰므로, 두 조합이 같은 합계를 만들지 않아서, 합계를 정확한 목록으로 되돌릴 수 있습니다.
어디서 보게 되는가
- 초대 링크:
permissions=값은 봇이 추가될 때 봇의 역할이 어떤 권리를 받는지 정합니다. OAuth2 스코프를 보세요. - 역할과 채널 재정의: Discord는 각 역할의 권한과 각 채널의 허용 및 거부 목록을 이 숫자로 저장합니다.
- 개발자 도구: 봇은 이 값을 읽어 멤버가 무언가를 할 수 있는지 확인합니다.
서버 주인에게 중요한 이유
두 권한은 주의가 필요합니다. 관리자(8)는 모든 채널 재정의를 우회하므로, 그것을 가진 역할은 무엇이든 할 수 있습니다. 완전히 신뢰하는 사람에게만 주세요. 그리고 봇이 큰 정수를 요청하면, 승인하기 전에 해독하세요. 읽을 수 없는 숫자에 봇이 필요 없는 멤버 밴이나 웹훅 관리가 들어 있을 수 있기 때문입니다. 권한 계산기는 체크박스를 숫자로, 숫자를 다시 체크박스로 바꿔 줍니다.
역할은 위치에 따라서도 제한됩니다. 권한이 있다고 해서 자기보다 위에 있는 다른 역할을 관리할 수 있는 것은 아닙니다. 역할 계층을 보세요.
권한과 Noxyr
Noxyr는 관리자 대신 고정된 권리 목록을 요청합니다. 여기에는 게시와 임베드, 티켓과 인증을 위한 채널과 역할 관리, 안티뉴크를 위한 감사 로그 보기, 보호 모듈을 위한 추방, 밴, 타임아웃이 포함됩니다. 권한 참고 자료가 각각과, 없으면 무엇이 깨지는지 보여 줍니다. 채널 재정의가 많은 서버에서는 여전히 관리자가 가장 쉬운 선택입니다. 카테고리의 거부된 재정의 하나가 티켓 생성을 막을 수 있기 때문입니다. 하지만 필수는 아닙니다.
봇에게 딱 필요한 만큼만 주는 것에 대한 쉬운 설명은 봇을 위한 최소 권한을 읽으세요.
손으로 읽는 법
3072 같은 숫자를 생각해 보세요. 들어갈 수 있는 가장 큰 권한 값(2048)을 빼고, 다음(1024)을 빼면 0이 남으므로, 메시지 보내기와 채널 보기입니다. 계산기는 같은 계산을 즉시 하고, 실수를 피하게 해 줍니다.
자주 묻는 질문
권한 값 8은 무엇을 뜻하나요?
값 8은 관리자 권한입니다. 이 값으로 초대된 봇은 서버의 모든 권리를 받습니다.
권한 숫자를 목록으로 어떻게 바꾸나요?
권한 계산기 도구를 쓰세요. 어떤 숫자든 그 안에 든 개별 권한으로 해독해 줍니다.
Noxyr에 관리자 권한이 필요한가요?
아니요. Noxyr의 초대는 고정된 권한 목록을 씁니다. 관리자는 채널 재정의가 많은 서버에서 가장 쉬운 선택일 뿐입니다.