GT.M - Как я могу добавить определенные роли пользователям

Я читал о документах по безопасности GT.M и вижу, что GT.M не включает конкретное решение безопасности, это зависит от ролей пользователей системы ОС.

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

Пример :

  • пользователь «менеджер» может выполнять команду SET, KILL для глобальной «Учетной записи», «Зарплаты»

  • пользователь «сотрудник» может выполнять команду ZWRITE только для глобальной «Зарплаты».

Предположим, что глобальные переменные «Учетная запись» и «Зарплата» отображаются в одном и том же файле базы данных.

Спасибо,


person Ryo    schedule 08.09.2015    source источник


Ответы (2)


GT.M не реализует сам уровень безопасности, а вместо этого использует управление доступом, реализованное операционной системой (разрешения пользователя/группы/мира и многоуровневая безопасность, такая как SELinux). Я знаю, что некоторые приложения выполнили то, что вы хотите, используя традиционные элементы управления пользователем/группой/миром, но для этого требуется, чтобы схема приложения была податливой. Другие приложения реализуют контроль доступа на прикладном уровне.

Цитата @DAiMor выше датирована. Текущая цитата из руководства:

Убедитесь, что владелец файла базы данных (пользователь и группа), идентификаторы пользователя и группы UNIX и разрешения на уровне UNIX соответствуют предполагаемому доступу. Если необходимы более тонкие элементы управления доступом, чем те, которые предоставляются идентификаторами и разрешениями пользователей и групп, рассмотрите возможность использования, где это уместно и доступно, продуктов безопасности, расположенных поверх операционной системы.

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

person K.S. Bhaskar    schedule 09.09.2015
comment
Спасибо, мистер Бхаскар, так что у меня нет конкретных ролей пользователя для каждой конкретной глобальной переменной с GT.M? .Если я хочу реализовать уровень безопасности для выполнения своей работы, не могли бы вы предложить мне какой-нибудь способ (добавление модуля или плагина в исходный код GT.M). меня очень заинтересовала эта функция - person Ryo; 10.09.2015

Здесь я вижу, что вы говорите о доступе для чтения и записи, поэтому вам нужно изменить доступ к файлу БД, вы можете добавить своих пользователей, которые должны иметь доступ для записи в группу UNIX с таким доступом.
Цитата из GT.M Security Philosophy

Убедитесь, что владелец файла базы данных (пользователь и группа), идентификаторы пользователя и группы UNIX и разрешения на уровне UNIX соответствуют предполагаемому доступу. Если необходимы более тонкие элементы управления доступом, чем те, которые предоставляются идентификаторами и разрешениями пользователей и групп, рассмотрите возможность использования списков управления доступом (ACL) там, где они доступны.

person DAiMor    schedule 08.09.2015
comment
Спасибо, я отредактировал свой вопрос. Пожалуйста, помогите мне проверить еще раз. В случае мультиглобальности в файле базы данных мне нужно указать определенную роль для каждой глобальной переменной. - person Ryo; 08.09.2015
comment
В таком случае это невозможно из-за безопасности пути UNIX. Но не так уж сложно разделить файл базы данных из соображений безопасности. - person DAiMor; 08.09.2015