Здравствуйте, скажите пожалуйста, какие минимально разрешения необходимы для выполнения команды ejudge-contests-cmd unload?
Т.е. как установить разрешения для пользователя, чтобы он мог выполнять эту команду, но как можно меньше мог выполнять всего другого?
Сделал MASTER_LOGIN, CONTROL_CONTEST, можно ли еще меньше прав выдать?
И еще предложение - неплохо было бы разделить полномочия доступа через командную строку и веб-интерфейс. А то MASTER_LOGIN, например, дает доступ и туда, и туда. А что если нужно, чтобы пользователь мог выполнять команды для администрирования, но пользоваться веб-интерфейсом не мог?
Также хотелось бы спросить следующее:
В ejudge.xml можно указать привилегированных пользователей с описанием их разрешений. Где данные разрешения используются? Можно ли как-то сделать, чтобы у некоторого пользователя были глобальные разрешения на все турниры?
Спасибо за внимание
ejudge-contests-cmd unload
Re: ejudge-contests-cmd unload
То есть Вы хотите, чтобы было полномочие, позволяющее выполнять только Unload?
Можете пояснить еще, когда может потребоваться, чтобы из командной строки можно было бы выполнять действия, а из веб-интерфейса - нельзя. Мне кажется, что доступ к командной строке уже дает намного больше возможностей для управления системой в целом, нежели веб-интерфейс, поэтому желательно минимизировать необходимость работы с командной строкой.
Можете пояснить еще, когда может потребоваться, чтобы из командной строки можно было бы выполнять действия, а из веб-интерфейса - нельзя. Мне кажется, что доступ к командной строке уже дает намного больше возможностей для управления системой в целом, нежели веб-интерфейс, поэтому желательно минимизировать необходимость работы с командной строкой.
Re: ejudge-contests-cmd unload
Да, именно так.cher wrote:То есть Вы хотите, чтобы было полномочие, позволяющее выполнять только Unload?
Пишу дополнительный интерфейс к системе, не затрагивая оригинальный. При редактировании некоторых свойств турнира для вступления их в силу необходимо перечитать настройки (сделать Reload/Unload). Встает вопрос - как это сделать, не прибегая к администраторскому интерфейсу?cher wrote: Можете пояснить еще, когда может потребоваться, чтобы из командной строки можно было бы выполнять действия, а из веб-интерфейса - нельзя. Мне кажется, что доступ к командной строке уже дает намного больше возможностей для управления системой в целом, нежели веб-интерфейс, поэтому желательно минимизировать необходимость работы с командной строкой.
Делаю через ejudge-contests-cmd unload. Но для выполнения данной команды нужно явно получить админские кукисы, сделав ejudge-contests-cmd master-login. А для выполнения данной команды нужен админский пароль. Отсюда следует, что где-то в файлах системы нужно хранить пароль одного из админов в открытом виде.
Может это конечно параноя, но безопасность системы в целом подкашывается

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

UPD. Реализовано в 2.3.20, спасибо авторам.