Немного неважно, но это пробудило мое любопытство.
Я только что вошел в базу данных Oracle 10g в первый раз, используя Oracle SQL Developer Tools.
Я использовал общий логин пользователя, который не является моим именем (nottstest2), с машины, которая называется чем-то, что не является моим именем (кабачок). Мое имя нигде в базе данных и не связано с логином.
Тем не менее, журналы сервера показывают соединение от «Джона Хопкинса».
Откуда он знает, кто я? Это каким-то образом извлекается из моего входа в Windows (хотя я не использую единый вход)?
oracle
oracle-sql-developer
Джон Хопкинс
источник
источник
Ответы:
Как вы входите в систему
courgette
? Будет ли это имя пользователя идентифицировать вас?Вы можете проверить это, запустив
Пространство имен USERENV может извлекать много различной информации о пользователе и его среде. Узнайте больше .
источник
Клиент Oracle (он же драйвер) знает, кто вы в вашей операционной системе (потому что этот код работает на вашем компьютере).
Эта информация передается как часть процесса входа в систему.
В зависимости от вашего приложения и типа драйвера (OCI / JDBC) он даже передает информацию, такую как имя вашего компьютера.
Если вы можете, запустите,
SELECT * FROM v$session WHERE sid = userenv('SID')
и вы увидите всю информацию, которую водитель показал о вашей среде.Возможно, вы не сможете запросить v $ session, потому что для этого нужны нестандартные привилегии.
источник
Используете ли вы сервер LDAP для проверки подлинности имен входа (например, Microsoft Active Directory, Novel eDirectory и т. Д.)? Oracle может запросить это, основываясь на вашем логине сеанса ОС, как вы предлагаете, чтобы получить ваше настоящее имя.
источник