Система Привилегий TeamSpeak 3 — КиберПедия 

Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...

Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...

Система Привилегий TeamSpeak 3

2022-10-03 86
Система Привилегий TeamSpeak 3 0.00 из 5.00 0 оценок
Заказать работу

Система Привилегий TeamSpeak 3

Итак, прежде чем приступать к самой настройке непосредственно, нам нужно узнать, что из себя представляет система привилегий.

Понятие системы привилегий

Система привилегий — это очень универсальная и многофункциональная система, которая определяет, каким пользователям разрешается производить определенные действия.

Привилегии — права на совершение того или иного действия, или запрет совершения того или иного действия, которые получает пользователь тем или иным количеством.

Группа — совокупность прав, которые могут быть назначены тому или иному пользователю.

Принципы базовой выборки значений разрешений

Уровень привилегий — показатель старшинства той или иной совокупности разрешений в независимости от их значения. Т.е. возможность перезаписывать совпадающие разрешения в пользу более старшего уровня привилегий. {Данное правило работает тогда и только тогда, когда разрешение не содержит специальных флагов}

Отношение разрешений на одном уровне — если случается так, что в системе встречаются два одинаковых разрешения на одном уровне, то из двух разрешений с разными значениями будет выбрано то, значение которого больше. {Данное правило работает тогда и только тогда, когда разрешение не содержит специальных флагов}

Специальные флаги — это дополнительные значения для разрешений, которые позволяют обойти принципы базовой выборки значений. {См. Следующий раздел}

Теперь, когда у нас есть условный принцип работы системы привилегий, мы можем рассматривать структуру разрешений и их отношение друг к другу.

Структура разрешения в системе привилегий (Value, Skip, Negate, Grant)

Структура одного разрешения представляет из себя набор значений:

Имя разрешения

Это основной идентификатор, который является кратким описанием того или иного разрешения (привилегии), который еще указывает на тип значения (Value).

Типов значения всего два: Boolean (Логические) и Integer (Целые).

Какой тип значения использует разрешение очень легко определить по начальному префиксу в имени разрешения.

Если имя разрешения начинается с префикса «b_», то оно имеет логический тип.

Если имя разрешения начинается с префикса «i_», то оно имеет целочисленный тип.

Значение разрешения (Value)

Подробнее разберем два типа значений с примерами.

Привилегии со значением типа Boolean

Эти разрешения могут иметь только два значения, TRUE или FALSE (ИСТИНА или ЛОЖЬ).

Пример:

b_virtualserver_modify_name

Взятое в пример разрешение определяет, можете ли вы изменить имя виртуального сервера. Если установлено значение TRUE, вы можете изменить имя виртуального сервера, при значении FALSE или отсутствии значения как такового, изменить имя не получится.

Уровень 1: Группы сервера

Каждый клиент является частью одной или нескольких групп серверов. Эти группы серверов могут содержать любое количество разрешений, которые вы получаете

когда становится частью группы. Так как вы можете быть частью нескольких групп

одновременно, и так как-то же самое разрешение может предоставляется в нескольких из этих групп. Система привилегий использует лучшее или наивысшее значение разрешения из всех доступных для него в качестве результата.

Так как каждый клиент всегда часть, по меньшей мере, одной группы серверов, есть специальная группа, которая может быть настроена в конфигурации сервера, называется

«DefaultServerGroup» (Группа по умочанию). Когда новый (ранее неизвестный) клиент присоединяется к серверу, он автоматически становится членом этой группы.

Кроме того, если вы в настоящее время в группе по умолчанию и вас назначили в другую группу, вы автоматически покинете группу по умолчанию.

Пример:

Допустим, вы являетесь членом трех групп сервера: «Admin Server», «ClanLeader» и «WarOrganizer».

«Admin Server» имеет i_client_kick_power = 50.

«Clan Leader» имеет i_client_kick_power = 100.

«WarOrganizer» не имеет i_client_kick_power (Если параметр не задан он равен 0).

В результате чего на Ур. 1 для вас i_client_kick_power будет равен 100, так как это самое высокое значение, которое вы имеете от всех групп сервера.

Иногда вы можете захотеть создать новую группу, что негативно влияет на клиентов, которые помещаются в нее. Например, создадим группу с названием «Sticky» (Липкий), которая запрещает клиенту перемещение по каналам, или группу с названием «Silent» (Тишина), которая удаляет привилегии использовать голосовой чат. Чтобы это работало, нам понадобится флаг «Negate».

Если вы являетесь членом группы, которая имеет разрешение c флагом «Negate», вы не будете получать самое высокое значение этого разрешения, а наоборот, получите помеченное флагом значение, при условии, что оно меньше остальных.

Пример:

Вы создали группу сервера под названием «Sticky». Она содержит только одно разрешение:

Для i_channel_join_power установлено значение -1, и флаг «Negate» применяется к этому разрешению.

Теперь, если я предоставить эту группу любому клиенту, он не сможет больше перемещаться по каналам.

Это также работает, если клиент имеет разрешение i_channel_join_power с неотрицательным значением.

Причина прекращения возможности переключения каналов кроется в том, что обычно канал имеет разрешение i_channel_needed_join_power, которое, даже если не установлено, задается как 0 (Ноль).

Так как -1 < 0, то клиент данной группы не сможет присоединиться к каналу.

Так как серверные группы это Ур. 1 привилегий, вполне возможно, что они будут перезаписаны привилегиями более высокого уровня.

Поскольку это так, иногда желательно предотвратить перезапись разрешениями групп каналов (Ур. 4), например, есть флаг «Skip».

Если разрешение в любой группе сервера (Ур. 1) или в специальной привилегии клиента (Ур. 2) имеет флаг «Skip», это разрешение не будет изменено любым перекрытием разрешений группами каналов (Ур. 4) или специальными привилегиями канала (Ур. 3).

Пример:

Как администратор вашего сервера вы не хотите, чтобы группа канала ограничивала ваши разрешения группы «Admin Server» в каком-либо плане.

Путем добавления флага «Skip» все разрешения в этой группе сервера вы убедитесь, что независимо от значений разрешений группы канала, вы останетесь с разрешениями группы сервера «Admin Server», т.е. группа канала не окажет никакого влияния на ваши способности.

Уровень 4: Группы каналов

Каждый клиент является частью ровно одной группы каналов. Когда клиенту назначается в новую группу канала, сервер автоматически удаляет этого клиента из предыдущей группы каналов. Все разрешения, полученные через группы каналов, могут быть применены только на уровне канала.

Пример:

Вам предоставляется разрешение b_channel_modify_password, оно позволит вам изменить пароль канала, в котором вы имеете это разрешение.

Есть две специальные группы каналов, которые задаются в настройках сервера.

1. «Default ChannelGroup», которая присваивается любому клиенту, присоединяющемуся в канал первый раз.

2 .»DefaultChannel Admin Group», которая предоставляется клиенту, который создает новый канал.

Правила хорошего тона

0. Группа «Admin Server» неприкосновенна!!!!

Просто молитесь на нее и не трогайте! Иначе рискуете не хило потратить время на восстановление ее работоспособности. Не повторяйте чужих ошибок.

Продумайте иерархию групп

Чем лучше вы будете представлять как относятся друг к другу группы, какая от какой зависит, и какая какую сможет «наказать» тем или иным способом, тем лучше и быстрее вы сделаете настройку. Всегда начинайте от меньшего к большему, по увеличению функционала.

Немного справочного материала:

Для добавления клиента в группы сервера или каналов, вам необходимо разрешение i_group_member_add_power, значение которого больше или равно значения i_group_needed_member_add_power конкретной группы, в которую должен быть добавлен клиент.

Аналогично, для удаления клиента из групп сервера или каналов, вам необходимо разрешение i_group_member_remove_power, значение которого должно быть больше или равно значения i_group_needed_member_remove_power конкретной группы, из которой должен быть удален клиент.

Никогда не оставляйте параметры i_group_needed_member_add_power и i_group_needed_member_remove_power не заданными — равными, или меньше 0 (Нуля) для любых групп сервера и групп каналов!

Стоит заметить, что в Системе Привилегий можно создать только одну независимую иерархическую ветку с помощью групп сервера!!!

 

Разрешения для редактирования разрешений (Разрешения типа « Grant »)

Вот и развязка всей статьи, все то на что нужно обращать внимание при работе с любыми разрешениями, если возникает необходимость создавать группы привилегий для их редактирования.

Сделаю отступление и скажу, что в 90% случаев данный материал по настройке не будет полезен для обычных нужд какого-либо клана или гильдии. Как самый частый вариант, у вас на сервере будут несколько групп с минимальным нужным функционалом для администрирования сервера для клиентов, которым лазить в раздел разрешений нельзя и тем более менять что-то там крайне нежелательно.

В моей практике я столкнулся с настройкой группы, которой нужны были разрешения для изменения значений разрешений («Grant» разрешения) один раз.

Напомню, что изначально полностью редактировать все разрешения имеет право только группа сервера «Admin Server», и зачастую ее более чем достаточно.

 

Итак, для того чтобы редактировать Систему Привилегий или ее раздел, нужна система из 4 (четырех) разрешений для успешного редактирования.

Перечень необходимых разрешения для редактирования СП на определенном уровне:

1. Наличие разрешения для просмотра привилегий определенного уровня

2. Наличие разрешения для редактирования привилегий определенного уровня

3. Наличие разрешения для редактирования переменных СП

4. Наличие у редактируемого разрешения «Grant» привилегии

1+2. Разрешения для просмотра списка привилегий и для редактирования раздела СП (По уровням)

Объединение пунктов выполнено для простоты обращения с материалом и из-за взаимосвязанности пунктов.

Разрешения для редактирования разрешений групп серверов (Уровень 1):

Разрешения для просмотра привилегий данного уровня:

b_virtualserver_servergroup_permission_list созначением TRUE

Разрешения для редактирования привилегий данного уровня:

i_group_permission_modify_power, значение которого больше или равно значения i_group_needed_permission_modify_power конкретной группы каналов, в которой нужно изменить/создать/удалить разрешение.

Разрешения для редактирования разрешений клиента (Уровень 2):

Разрешения для просмотра привилегий данного уровня:

b_virtualserver_client_permission_list созначением TRUE

Разрешения для редактирования привилегий данного уровня:

i_client_permission_modify_power, значение которого больше или равно значения i_client_needed_permission_modify_power конкретного клиента, у которого нужно изменить/создать/удалить разрешение.

Разрешения для редактирования разрешений каналов (Уровень 3):

Разрешения для просмотра привилегий данного уровня:

b_virtualserver_channel_permission_list созначением TRUE

Разрешения для редактирования привилегий данного уровня:

i_channel_permission_modify_power, значение которого больше или равно значения i_channel_needed_permission_modify_power конкретного канала, в котором нужно изменить/создать/удалить разрешение.

Разрешения для редактирования разрешений группы каналов (Уровень 4):

Разрешения для просмотра привилегий данного уровня:

b_virtualserver_channelgroup_permission_list созначением TRUE

Разрешения для редактирования привилегий данного уровня:

i_group_permission_modify_power, значение которого больше или равно значения i_group_needed_permission_modify_power конкретной группы каналов, в которой нужно изменить/создать/удалить разрешение.

T.e. совершенно то же разрешение, что используется для доступа к редактированию групп сервера.

Разрешения для редактирования разрешений канала и клиента (Уровень 5):

Разрешения для просмотра привилегий данного уровня:

b_virtualserver_channelclient_permission_list созначением TRUE

Разрешения для редактирования привилегий данного уровня:

i_client_permission_modify_power, значение которого больше или равно значения i_client_needed_permission_modify_power конкретного клиента, у которого нужно изменить/создать/удалить разрешение.

i_channel_permission_modify_power, значение которого больше или равно значения i_channel_needed_permission_modify_power конкретного канала, в котором нужно изменить/создать/удалить разрешение.

T.e. система из разрешений, что используются для доступа к редактированию разрешений канала и разрешений клиента.

3+4. Разрешение для редактирования переменных СП и разрешения «Grant»

Разрешением для редактирования переменных является i_permission_modify_power, относящееся к типу силовых разрешений, единственным отличием от которых является то, что данному силовому разрешению требуются наличие других разрешений: наборсиловых и совокупность из «Grant» привилегий, зависящей от конкретной ситуации.

О силовых разрешениях было рассказано выше.

«Grant» привилегия

Для редактирования любого значения у вас должна быть «Grant» привилегия у этого значения больше 0 (Нуля), причем вы можете изменять значение разрешения на любое в приделах его типа значений.

Пример:

У разрешения i_client_private_textmassage_power c привилегией «Grant» больше 0 (Нуля) можно изменять значение от -999999999 до 999999999.

У разрешения b_client_ignore_bans c привилегией «Grant» больше 0 (Нуля) можно изменять значение от FALSE до TRUE.

Т.е. «Grant» привилегия не накладывает ограничение на конечное значение, что нужно всегда иметь ввиду!

Кроме разрешения i_permission_modify_power, значение которого напрямую зависит от максимального значения «Grant» для разрешений.

Не стоит забывать, что «Grant» разрешение можно удалить, после чего его нельзя будет восстановить напрямую!

Теперь, зная, как работают «Grant» разрешения, нужно рассказать, в каких отношениях состоят i_permission_modify_power и «Grant» разрешения какой-либо привилегии.

Отношение i_permission_modify_power с «Grant» при изменении значения привилегии

Если значение i_permission_modify_power больше или равно значению «Grant» разрешению конкретной привилегии, тогда можно изменить значение этой привилегии.

Пример:

Допустим, что значение i_permission_modify_power равно 30.

b_channel_join_temporary имеетзначение «Grant» равное 25, а i_channel_create_modify_with_codec_maxquality имеетзначение «Grant» равное 30.

В обоих случаях изменения значений данных разрешений пройдет успешно.

Но i_client_max_idletime имеет значение «Grant» равное 31,и изменить значение данного разрешения не получится.

Отношение i_permission_modify_power с «Grant» при изменении значения «Grant»

Если значение i_permission_modify_power больше значения «Grant» разрешения конкретной привилегии, тогда можно изменить значение «Grant» этой привилегии до значения равного i_permission_modify_power, или меньше него.

Пример:

Допустим, что значение i_permission_modify_power равно 40.

b_channel_join_temporary имеет значение «Grant» равное 25, следовательно, мы можем изменить значение «Grant», как в меньшую (до 1), так и в большую (до 40).

Если поставить значение равное 0 (Нулю), то СП выдаст предупреждение о том, что если вы уберете «Grant» привилегию через заданную группу, то через эту же группу вы его не сможете вернуть!

Отношение i_permission_modify_power с «Grant» значением i_permission_modify_power

Еслизначение i_permission_modify_power большезначения «Grant» разрешения i_permission_modify_power, тогдаможноизменитьзначение «Grant» дозначенияравного i_permission_modify_power.

Пример:

Допустим, что значение i_permission_modify_power равно 25, а значение «Grant» для данного разрешения равно 20.

Значит, мы можем изменить значение «Grant» данного разрешения до 25.

Если значение i_permission_modify_power равно значению «Grant» разрешения i_permission_modify_power, тогда можно изменить значение «Grant» исключительно меньшую сторону, без возможности обратно поставить равные значения i_permission_modify_power и «Grant» разрешения i_permission_modify_power.

Пример:

Допустим, что значение i_permission_modify_power равно 40, и значение «Grant» для данного разрешения также равно 40.

Значит, мы можем изменить значение «Grant» данного разрешения только до 39. Назад же вернуть значение до 40 мы не сможем, потому что для данного разрешения не логично редактирование самого себя!

Если значение i_permission_modify_power меньше значения «Grant» разрешения i_permission_modify_power, тогда значение i_permission_modify_power изменить нельзя.

На данной ноте теоретическая информация, необходимая для работы с Системой Привилегий, заканчивается. Надеюсь, материал будет кому-то полезен. Не стоит забывать, что самих разрешений в системе привилегий много, и описывать каждое из них попросту не имеет смысла, т.к. все краткие описания уже представлены непосредственно в интерфейсе программы. Всем спасибо за потраченное на статью время, всем удачи и успешных вам часов возни с данной Системой Привилегий!

Конец

Список вспомогательной литературы:

  • TeamSpeak 3 PermissionsGuide
  • TeamSpeak 3 ServerQueryManual
  • How to use the Server Query

 

Система Привилегий TeamSpeak 3

Итак, прежде чем приступать к самой настройке непосредственно, нам нужно узнать, что из себя представляет система привилегий.

Понятие системы привилегий

Система привилегий — это очень универсальная и многофункциональная система, которая определяет, каким пользователям разрешается производить определенные действия.

Привилегии — права на совершение того или иного действия, или запрет совершения того или иного действия, которые получает пользователь тем или иным количеством.

Группа — совокупность прав, которые могут быть назначены тому или иному пользователю.


Поделиться с друзьями:

Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...

Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...

Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...

Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.079 с.