Мы хотим разрешить доступ к БД (Oracle) нашим пользователям только через наше собственное приложение - назовем его «ourTool.exe», установленный локально на компьютерах пользователей. В настоящее время пользователи должны указывать имя пользователя / пароль всякий раз, когда они запускают "ourTool". Предоставленный пароль пароля расшифровывается, и мы используем имя пользователя / расшифрованный пароль, чтобы наконец войти в базу данных Oracle. Этот подход предотвращает прямой доступ пользователей к нашей БД с помощью сторонних инструментов (SQLplus, Excel, Access, ...), и все в БД гарантированно будет введено / отредактировано с использованием «ourTool».
Теперь один из наших клиентов хочет разрешить своим пользователям «единый вход» (с помощью SmartCards / Oracle PKI). Благодаря этому пользователь сможет подключаться к нашей БД без ввода пароля при каждом запуске «ourTool». Но то же самое будет верно для потенциально опасных инструментов, таких как SQLplus, Excel, Access и т. Д.
Есть ли способ предотвратить это? Как мы можем быть уверены, что каждая запись в нашей БД создается / редактируется / удаляется только с использованием «ourTool» в этом сценарии?