Единая аутентификация Windows NT/2000 и Oracle
При использовании Windows NT/2000 как платформы для работы Oracle, и на стороне сервера и на стороне клиентов, имеется возможность использовать единую систему аутентификации для пользователей базы данных и операционной системы.
Механизм аутентификации привилегированных пользователей более-менее широко известен, а вот аутентификация рядовых пользователей, несмотря на свои определенные плюсы, применяется далеко не часто.
При включении такого механизма аутентификации, Oracle полностью полагается на операционную систему, которая согласно своим правилам, принимает или отвергает запросы удаленных клиентских машин на использование внутренних ресурсов. В Windows NT/2000 единый механизм аутентификации применяется повсеместно, для доступа к различным сервисам. Например, при работе Exchange Server или SQL Server Вам, скорее всего не придется вводить имя и пароль второй раз, после того как вы уже произвели аутентификацию при входе в Windows (все зависит от настроек). Oracle тоже может интегрироваться сWindows, используя единый механизм аутентификации. При подобной аутентификации, Oracle, используя несложные правила, пытается сопоставить имя пользователя Windows с зарегистрированным пользователем базы данных. Я не знаю другой операционной системы, кроме Windows, где бы возможно было использование подобного механизма аутентификации без привлечения программного обеспечения третьих фирм (с удовольствием сделаю коррекцию этого утверждения, если, кто ни будь, имеет другие сведения).
Для использования единой аутентификации, в поставке Oracle как сервера, так и клиента для Windows NT, есть специальный аутентификационный адаптер. Как на клиенте, так и на сервере этот адаптер активизируется при занесении в файл sqlnet.ora строки “SQLNET.AUTHENTICATION_SERVICES= (NTS)”. Во время инсталляции Oracle 8i подобная строка прописывается в этот файл автоматически.
Аутентификация администраторов
Решение имеет или не имеет право пользователь Windows произвести соединение с базой данных как SYSDBA, Oracle производит на основании проверки принадлежности этого пользователя в одну из предопределенных групп операционной системы:
- Группа ORA_DBA позволяет всем входящим в нее пользователям регистрироваться как SYSDBA на любом экземпляре (instance), работающем на данной машине (или любом экземпляре любой машины домена, если группа определена на уровне домена).
- Группа ORA_XXX_DBA (где XXX – имя экземпляра) позволяет подобную регистрацию только в экземпляре с именем XXX.
Если вышеприведенное условие соблюдено, то пользователь может произвести регистрацию как SYSDBA, введя следующее:
SQL> connect / as sysdba
или
SQL> connect /@SERVICE_NAME as sysdba
При инсталляции Oracle 8i, программа установки автоматически создает локальную группу с названием “ORA_DBA” и добавляет в нее текущего пользователя.
Аутентификация пользователей
В случае рядовых пользователей, Oracle использует некоторые специальные правила, для ассоциации пользователя базы данных с пользователем операционной системы.
Подобная ассоциация может производиться с или без использования доменного имени пользователя Windows.
Используется или нет имя домена, определяется значением регистровой переменной OSAUTH_PREFIX_DOMAIN. При установке этой переменной в значение TRUE производится учет доменного имени, в FALSE, соответственно нет. Эта переменная в регистре располагается по следующему адресу: HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ HOMEID (где ID номер 0,1,2…)
Кроме этого при сопоставлении имен, учитывается значение параметра Oracle OS_AUTHEN_PREFIX (значение по умолчанию OPS$).
При попытке пользователя произвести соединение через SQL*Plus следующей строкой:
SQL> connect /
или
SQL> connect / @SERVICE_NAME
Oracle пытается найти пользователя базы данных с именем сформированным из значения параметра OS_AUTHENT_PREFIX, имени домена(если домен используется) и имени пользователя Windows. Например, имеем пользователя SCOTT из домена DOMAIN и значение переменной OS_AUTHENT_PREFIX равное “OS_”.
- Без учета домена Oracle будет искать пользователя базы данных с именем OS_SCOTT;
- С учетом домена, с именем OS_DOMAIN\SCOTT
При создании пользователя базы данных должна задаваться внешняя аутентификация. Например:
SQL> create user “OS_DOMAIN\SCOTT” identified externally;
Т.е. этот пользователь не может произвести соединение через стандартную процедуру аутентификации Oracle, по той простой причине, что не имеет пароля. Исключение из правила при использовании внешней аутентификации происходит только тогда, когда параметр OS_AUTHENT_PREFIX имеет значение по умолчанию (“OPS$”). В этом случае пользователь, может использовать внешнюю аутентификацию, даже если он был создан с обычным паролем.
SQL> create user SCOTT identified by TIGER;
В пакете установки для Windows, Oracle поставляет инструмент Oracle Administration Assistant for Windows NT, с помощью которого можно все перечисленные действия автоматизировать.
Стоит еще заметить, что я перечислил не все возможности Oracle по взаимодействию с операционной системой в плане аутентификации и авторизации пользователей. Для краткости только скажу, что Oracle позволяет подобным (как описано выше) образом производить ассоциацию между группами пользователей операционной системы и внутренними ролями.
Важное замечание: При использовании подобной аутентификации Вам не нужно устанавливать параметр REMOTE_OS_ATHENT=TRUE. Более того Oracle всегда рекомендует воздержатся от включения этого параметра - потому как это создает огромную дыру в безопасности системы.
Дайджест новых статей по интернет-маркетингу на ваш email
Новые статьи и публикации
- 2024-03-13 » Стратегии SEO на 2024 год
- 2024-03-13 » Как использовать анимацию с помощью JavaScript-библиотеки GSAP
- 2024-03-13 » Использование GSAP 3 для веб-анимации
- 2024-03-13 » Cогласование топографической съёмки с эксплуатирующими организациями
- 2024-02-19 » Теряются лиды? Как настроить сквозную аналитику
- 2024-02-17 » Мерч и IT: на что обратить внимание в 2024 году
- 2024-02-16 » Копируем с RSync: основные примеры синхронизации файлов
- 2024-02-15 » Лучшие noCode AI платформы для создания диалоговых ботов
- 2024-02-14 » Факторы ранжирования Google 2024 — исследование Semrush
- 2024-02-12 » Перенос сайта на другой хостинг
- 2024-02-05 » В России сформирован реестр хостинг-провайдеров
- 2024-02-04 » Использование SSH для подключения к удаленному серверу Ubuntu
- 2024-02-03 » Подключаемся к серверу за NAT при помощи туннеля SSH. Простая и понятная инструкция
- 2024-02-02 » Настройка CI/CD для Gitlab-репозитория: схемы и гайд по шагам
- 2024-02-01 » GitLab CI Pipeline. Запуск сценария через SSH на удаленном сервере
- 2024-01-29 » Introduction to GitLab’s CI/CD for Continuous Deployments
- 2024-01-26 » Настройка GitLab CI/CD
- 2024-01-25 » Установка shell gitlab runner
- 2024-01-25 » Установка и регистрация gitlab-runner в docker контейнере
- 2024-01-25 » Переменные Gitlab-Ci
- 2024-01-25 » Настройка CI/CD в GitLab для синхронизации проекта с веб-серверами
- 2024-01-25 » Копирование файлов scp
- 2024-01-18 » Современная обработка ошибок в PHP
- 2024-01-18 » Пример шаблона проектирования MVC в PHP
- 2024-01-18 » Мифический человеко-DevOps
- 2023-12-28 » Google подвел итоги 2023 года в поиске
- 2023-12-28 » 5 ошибок отдела продаж, из-за которых вы теряете клиентов
- 2023-12-28 » Американский суд признал монополию Google на рынках дистрибуции Android-приложений
- 2023-12-28 » Хостинг-провайдер GoDaddy перестанет оказывать услуги пользователям из России
- 2023-12-28 » ТОП-5 методов юзабилити-исследований. Разбор слабых и сильных сторон
"Успеха в ближайшем десятилетии добьются только те компании, которые сумеют реорганизовать свою работу с помощью электронного инструментария. Только это позволит им быстро принимать правильные решения, предпринимать эффективные действия и поддерживать тесные плодотворные связи со своими клиентами." |
Мы создаем сайты, которые работают! Профессионально обслуживаем и продвигаем их , а также по всей России и ближнему зарубежью с 2006 года!
Как мы работаем
Заявка
Позвоните или оставьте заявку на сайте.
Консультация
Обсуждаем что именно Вам нужно и помогаем определить как это лучше сделать!
Договор
Заключаем договор на оказание услуг, в котором прописаны условия и обязанности обеих сторон.
Выполнение работ
Непосредственно оказание требующихся услуг и работ по вашему заданию.
Поддержка
Сдача выполненых работ, последующие корректировки и поддержка при необходимости.