Почему Вы выполняете su внутри sudo? (или хуже, sudo внутри sudo)
www-data ALL=(user) NOPASSWD: /bin/bash /home/user/bin/script.sh
Это должно работать.
Вы подходите к этому неверно, поскольку выбрали технологию и теперь пытаетесь вставить в нее свою модель данных. Сначала спроектируйте свою DATAMODEL , а затем найдите технологию, которая упрощает ее реализацию.
Начните с доски и напишите то, что вам нужно отслеживать, а затем определите, как все они соотносятся друг с другом. Если вы столкнетесь с естественной иерархией / деревом, LDAP - хороший выбор. Если вы столкнетесь с чем-то похожим на сеть, реляционная система может работать лучше.
Некоторые вопросы, которые следует задать при разработке:
Является ли «пользователь» контейнером (который содержит учетные записи)?
(В этом случае каждая учетная запись будет указывать ровно на одного пользователя. На языке LDAP пользователь будет OU, и учетные записи будут созданы в этом OU. На языке отношений, Account будет иметь обязательный (НЕ NULL) внешний ключ, указывающий at user)
Будут ли пользователи делиться аккаунтами?
(Здесь реляционное моделирование часто работает лучше)
Будут ли учетные записи перемещаться между пользователями (или пользователи перемещаются между учетными записями)?
Какие системы необходимо будет интегрировать с этим хранилищем данных?