Kerberos аутентификация в веб приложениях#
Общая информация.#
В домене Freeipa имеется возможность, используя внутренние средства безопасности ALSE, осуществлять сквозную аутентификацию по билету Kerberos. Сквозная аутентификация дает возможность создать систему с единой точкой входа(SSO). Рассмотрим пример веб-приложения, трёхзвенного. Клиентом, первым звеном, является браузер на машине введённой в домен Freeipa, пользователем домена вошедшим в сессию на этой машине. Вторым звеном является машина введённая в домен с веб-сервером Apache2 и приложением. Третьим звеном является машина введённая в домен Freeipa, с настроенной для режима аутентификации по протоколу Kerberos(GSS) СУБД Postgresql. Браузер использую билет Kerberos и доменное имя пользователя, взятые из контекста сессии пользователя, обращается к веб-серверу Apache2 который делегирует выполнение запроса приложению, приложение обращается к БД и получает ответ от БД без использования логина и пароля. В приложении за передачу вышеуказанных параметров и соединения с БД отвечает, драйвер подключения к БД. Драйвер имеется практически во всех современных языках программирования в виде библиотеки.
Языки программирования и драйвера подключения к базе данных Postgresql, поддерживающие технологию Kerberos аутентификации GSS:#
Python, psycopg2
C# , Npgsql
Разграничение прав доступа к информации хранящейся в БД, осуществляется внутренними средствами СУБД Postgresql:#
row level security
column level security
мандатное управление доступом (МРД)