/domain/<DOMAIN>/cocon/ - команды управления учётными записями пользователей
В текущем разделе описываются команды управления учётными записями пользователей cocon- и web-конфигуратора на уровне домена.
Описание по управлению пользователями приведено в разделе Управление пользователями или во вкладке ниже.
Управление пользователями
Пользователями в данном случае являются лица, работающие с системой через СoСon- или web-конфигуратор.
Каждый пользователь имеет следующий набор параметров:
- Имя;
- Пароль;
- Группа(ы) пользователей;
- Роль.
Пользователи и пароли
Имя и пароль требуются для каждого входа в систему (авторизация), группа(ы) пользователей определяет перечень разрешённых действий.
В целях регулирования доступа к управлению системой команды ECSS-10 разделены на следующие группы по признаку зоны ответственности пользователя:
- ECSS-ROOT — группа суперпользователей системы. Содержит полный набор команд по управлению и мониторингу системы ECSS-10.
- ECSS-ADMIN — группа администраторов системы. Содержит команды управления системой ECSS-10.
- ECSS-USER — группа пользователей системы. Содержит команды мониторинга системы ECSS-10.
- ECSS-DOMAIN-ADMIN — группа администраторов виртуальной АТС. Содержит команды управления определенной виртуальной АТС.
- ECSS-DOMAIN-USER — группа пользователей виртуальной АТС. Содержит команды мониторинга определенной виртуальной АТС.
Пользователю назначается группа, команды которой он может исполнять.
Пользователь может входить одновременно в несколько групп.
В системе присутствует специальная учетная запись "ECSS-ROOT", которая имеет самый высокий уровень доступа.
Владелец учетной записи "ECSS-ROOT" имеет право на выполнение всех операций в системе ECSS-10.
Управление пользователями в рамках всей сиcтемы ECSS-10 доступно для пользователей группы "ECSS-ADMIN" и "ECSS-ROOT".
Примечание: Для того чтобы пользователю группы "ECSS-ADMIN" стало доступно управление пользователями в рамках определенной виртуальной АТС ECSS-10, он должен включить себя в группу пользователей и администраторов этой АТС.
Управление пользователями в рамках определенной виртуальной АТС доступно для пользователей групп и "ECSS-DOMAIN-ADMIN" и "ECSS-ROOT".
Роли
Существует еще понятие роль пользователя. Роль пользователя назначается на CoCon пользователя. На уровне роли можно задавать, какими "группами доступа" будет обладать пользователь с данной ролью (не надо явно задавать группы доступа на уровне пользователя). Роль обладает уникальным в рамках системы именем (т.к. одна роль может объединять в себе несколько доменов, т.е. включать в себя группы доступа нескольких доменов). На уровне роли можно указать список доменов администраторы которых могут создавать новых пользователей, задавать им данные роли (При удалении роли у пользователя роль будет удаляться).
Если у пользователя заданы и "группы доступа" и определена роль с указанием "групп доступа", то будет произведено объединение данных групп для пользователя.
Работа CoCon с учетом ролей CoCon пользователей
В начале рассмотрим процесс логина пользователя в систему: пользователь вводит свой логин/пароль. Подсистема CoCon проверяет, есть ли в базе её пользователей пользователь с введенным логином. Если такой есть - система проверяется, совпадает ли введенный пароль с тем, что ввел пользователь. В случае совпадения пароля - пользователь проходит авторизацию, попадает в CoCon. На уровне CoCon-а создается сессия. В сессию сохраняется логин пользователя, вычитывается и сохраняется роль данного пользователя. В случае, если пароль не совпал - процесс авторизации необходимо повторить заново.
После того, как пользователь попал в CoCon, он может начать выполнять команды. При попытке выполнить любую команду (включая expand по командам) подсистема CoCon проделывает следующие шаги: для данного пользователя вычитывается список его групп, для роли данного пользователя (если роль задача) вычитывается список её групп. После чего эти два списка групп объединяются в результирующий список групп данного пользователя. Далее, CoCon смотрит права команды, которыми должен обладать пользователь чтобы её выполнить, и если права есть - позволяет выполнить команду (права команды CoCon-а представляют собой список групп. Если у пользователя в результирующем списке групп есть хотя бы одна из групп данного списка - то у него есть права на выполнение данной команды). Иначе - выдается что недостаточно прав.
Добавление, удаление и настройка параметров пользователей может быть выполнено через CoCoN- или web-конфигуратор.
Описание команд управления параметрами пользователей приведено в разделе Команды управления подсистемой CoCon.
Описание приложения web-конфигуратора для управления пользователями приведено в разделе Управление пользователями (User manager).
В CoCoN-конфигураторе для просмотра принадлежности команд к группе пользователей, а также доступности команд текущему пользователю используется команда ls
, подробное описание приведено в разделе "Глобальные команды".
add-user
Команда для создания новой учетной записи пользователя:
- имя пользователя (login);
- пароль пользователя(enter password/confirm password);
- группа пользователей.
Группы пользователей:
- ECSS-DOMAIN-ADMIN – группа администраторов виртуальной АТС (Administrator of <domain_name>). Содержит команды управления определенной виртуальной АТС.
- ECSS-DOMAIN-USER – группа пользователей виртуальной АТС (User of <domain_name>). Содержит команды мониторинга определенной виртуальной АТС.
Путь команды:
/domain/<DOMAIN>/cocon/add-user
Синтаксис:
add-user [--expire-password] [<UserName>] [--force]
Параметры:
--expire-password - пароль должен быть изменен при первом входе в систему;
<UserName> - имя пользователя;
--force - выполнение команды без запроса подтверждения.
Пример:
Добавить пользователя "bsk" как администратора домена
admin@ds1@ecss1:/$ domain/biysk.local/cocon/add-user bsk Enter password: Confirm password: ECSS biysk.local administrator: [n]/y ?> y User bsk has been successfully created [exec at: 16.02.2021 08:46:30, exec time: 16s 926ms, nodes: ds1@ecss1 v.3.14.7.585]
add-user-to-group
Данной командой пользователю назначается группа пользователей домена, команды которой он сможет исполнять.
Группы пользователей:
- ecss-<domain_name>-domain-admin – группа администраторов виртуальной АТС с именем <domain_name>. Содержит команды управления виртуальной АТС с именем <domain_name>.
- ecss-<domain_name>-domain-user – группа пользователей виртуальной АТС с именем <domain_name>. Содержит команды мониторинга виртуальной АТС с именем <domain_name>.
Путь команды:
/domain/<DOMAIN>/cocon/add-user-to-group
Синтаксис:
add-user-to-group <USER> <GROUP>
Параметры:
<USER> - имя пользователя;
<GROUP> - группа пользователя.
Пример:
admin@ds1@ecss1:/$ domain/biysk.local/cocon/add-user-to-group bsk ecss-biysk.local-domain-admin Successful [exec at: 16.02.2021 08:47:31, exec time: 29ms, nodes: ds1@ecss1 v.3.14.7.585] admin@ds1@ecss1:/$ domain/biysk.local/cocon/add-user-to-group bsk ecss-biysk.local-domain-user Successful [exec at: 16.02.2021 08:47:51, exec time: 27ms, nodes: ds1@ecss1 v.3.14.7.585]
del-user
Команда для удаления учетной записи из системы. Команда работает только если пользователь входит в группы ecss-<domain_name>-domain-admin и/или ecss-<domain_name>-domain-user.
Путь команды:
/domain/<DOMAIN>/cocon/del-user
Синтаксис:
del-user <UserName> [--force]
Параметры:
<UserName> - имя пользователя;
--force - выполнение команды без запроса подтверждения.
Пример:
admin@ds1@ecss1:/$ domain/biysk.local/cocon/del-user operator [del-user] You are going to delete CoCon user operator. Are you sure?: yes/no ?> yes User "operator" has been successfully deleted [exec at: 16.02.2021 08:51:34, exec time: 2s 860ms, nodes: ds1@ecss1 v.3.14.7.585]
del-user-from-group
Данной командой осуществляется удаление пользователя из заданной группы пользователей.
Путь команды:
/domain/<DOMAIN>/cocon/del-user-from-group
Синтаксис:
add-user-to-group <USER> <GROUP>
Параметры:
<USER> - имя пользователя;
<GROUP> - группа пользователей.
Пример:
admin@ds1@ecss1:/$ domain/biysk.local/cocon/del-user-from-group bsk ecss-biysk.local-domain-user Successful [exec at: 16.02.2021 08:50:12, exec time: 26ms, nodes: ds1@ecss1 v.3.14.7.585]
list
Отображается список пользователей cocon- и web-конфигураторов, а также принадлежность пользователя к группе пользователей.
Записи в таблице могут быть упорядочены и отфильтрованы по любому параметру по убыванию или возрастанию, ограничены по количеству выводимых строк.
Путь команды:
/domain/<DOMAIN>/cocon/list
Синтаксис:
list users|groups [where <filter>] [order by <column> [asc|desc]] [last|first <N>]
Параметры:
[where <filter>] - при указании команды "where" задается условие отбора записей в таблице:
<filter> - условие отбора записей, задается в виде <сolumn> = <value> [, <filter>], где<column> - название колонки, по которой производится отбор, принимает значения:
login - имя пользователя;
group - группа пользователей.
<value> - значение, по которому совершается отбор.
[order by <column> [asc|desc]] - при указании команды "order by" задается условие сортировки записей в таблице:<column> - название колонки, по которой будет сортировка записей, принимает значения: login, group.
[asc|desc] - способ сортировки:
- asc - по возрастанию;
- desc - по убыванию.
[last|first <N>] - ограничение по количеству выводимых строк:
last - выводить последние N-строк таблицы;
first - выводить первые N-строк таблицы;<N> - количество строк.
Пример:
admin@ds1@ecss1:/$ domain/biysk.local/cocon/list users ┌────────┬─────────────────────────────┬─────┐ │ Login │ Groups │Roles│ ├────────┼─────────────────────────────┼─────┤ │txtuser │ecss-biysk.local-domain-admin│ │ │ │ecss-biysk.local-domain-user │ │ │operator│ecss-biysk.local-domain-user │ │ │bsk │ecss-biysk.local-domain-admin│ │ │ │ecss-biysk.local-domain-user │ │ │admin │ecss-biysk.local-domain-admin│ │ │ │ecss-biysk.local-domain-user │ │ └────────┴─────────────────────────────┴─────┘ [exec at: 16.02.2021 08:49:20, exec time: 21ms, nodes: ds1@ecss1 v.3.14.7.585]
passwd
Команда для изменения текущего пароля пользователя, используемого при входе в систему.
Путь команды:
/domain/<DOMAIN>/cocon/passwd
Синтаксис:
passwd [<UserName>]
Параметры:
<UserName> - имя пользователя.
Пример:
Изменить пароль для пользователя bsk
admin@ds1@ecss1:/$ domain/biysk.local/cocon/passwd bsk [passwd] Changing password for bsk Enter new password: Confirm new password: Password for user "bsk" has been successfully changed [exec at: 16.02.2021 08:52:27, exec time: 11s 361ms, nodes: ds1@ecss1 v.3.14.7.585]