Предыстория
Я работаю в компании, у которой есть веб-сайт, который позволяет пользователю отправлять текстовые данные для сбора. Мы собираем данные и делаем их доступными в Интернете. Пользователи могут делиться данными с другими пользователями.
Идем вперед
В какой-то момент это может быть классифицировано как медицинский инструмент, управляемый FDA. В ожидании мы хотели бы иметь систему ведения журналов, которая показывает каждый раз, когда кто-то обращается к данным наших пользователей, будь то сам пользователь, другой авторизованный пользователь или сотрудник службы поддержки.
Текущая архитектура
В настоящее время мы используем Ruby / Rails и используем базу данных MySQL. Личная информация зашифрована в базе данных.
Доступ к данным для поддержки
Сегодня сотрудники службы поддержки могут получить доступ к данным одним из трех способов:
- Администратор сайта Администратор сайта ограничен теми экранами, которые мы разрабатываем. Пока мы этого не делаем, мы могли бы легко добавить ведение журнала, чтобы вести учет того, кто получал доступ к каким данным с помощью инструмента администратора.
- клиент sql Я использую MySQLWorkbench для доступа к производству. Однако при таком подключении вся личная информация (имя пользователя, номер сотового телефона и т. Д.) Шифруется.
- Консоль Ruby Rails. Наконец, служба поддержки может войти в один из рабочих ящиков и использовать консоль Ruby / Rails из командной строки. Ruby расшифровывает данные, поэтому мы можем сделать несколько простых вещей, таких как
и = User.find_all_by_state ( 'активный')
и он вернет набор записей всех пользователей с state = 'active' и расшифрует их личную информацию в наборе результатов.
Святой Грааль
- каротаж
- легкий доступ для поддержки
Мне бы очень хотелось, чтобы у меня был простой способ поддержки доступа (после проверки подлинности) к данным, но при этом регистрировалось бы все, к чему осуществляется доступ (чтение или обновление). Таким образом, если я проверяю данные бывшей жены моего приятеля, например, они записываются в место, куда я не могу войти и почистить контрольный журнал. (См. Google, увольняющий сотрудника Gmail, для примера того, как сотрудники нарушают политику данных).
У кого-нибудь есть идеи, мысли, опыт, предложения по этому вопросу?