Вот немного сумасшедшая идея , но тот, который будет соответствовать требованию:
Создайте простую (но безопасную!) Систему, которая содержит все пароли для разных сервисов. Предоставьте каждому индивидуальный доступ к этой системе. Система предоставляет пароль для службы, к которой пользователь запрашивает доступ. Всякий раз, когда пользователь запрашивает пароль для сайта, например, eBay, этот запрос регистрируется. Пользователь получает текущий пароль eBay, а также случайно сгенерированный новый пароль. Затем пользователь должен немедленно сменить пароль eBay на новый, независимо от того, решит ли он использовать службу.
Таким образом, пользователь A несет ответственность за все, что было сделано в период, начиная с получения пароля и заканчивая запросом нового пароля. Когда пользователь B запрашивает пароль, он получает тот же пароль, который знает пользователь A, но затем B становится ответственным и, следовательно, должен немедленно изменить пароль, чтобы запретить пользователю A доступ.
Полная история паролей должна храниться для администраторов, чтобы получить доступ к сервису в случае, если какой-либо пользователь не меняет пароль.
Это не пуленепробиваемый, конечно. Перед сменой пароля существует короткий промежуток времени, когда пользователь А мог доступ к услуге, в то время как B на самом деле подотчетен. Кроме того, если B запрашивает пароль, делает что-то нечистое и впоследствии меняет пароль на что-то совершенно другое, она может правдоподобно утверждать, что A изменил пароль, а тот, который B получил, никогда не работал. Но я не думаю, что такого рода деятельность была проблемой в вашем случае.