Аутентификация клиентского приложения
Эта страница переведена при помощи нейросети GigaChat.
Когда клиентское приложение подключается к серверу базы данных, оно указывает имя пользователя PostgreSQL, под которым оно хочет подключиться, аналогично входу в систему Unix под определенным пользователем. В среде SQL активное имя пользователя базы данных определяет привилегии доступа к объектам базы данных — см. «Роли базы данных» для получения дополнительной информации. Поэтому крайне важно ограничить, какие пользователи базы данных могут подключаться.
Как объясняется в разделе «Роли базы данных», PostgreSQL фактически управляет привилегиями с точки зрения «ролей». В этом разделе последовательно используется пользователь базы данных для обозначения «роль с привилегией LOGIN
».
Аутентификация — это процесс, посредством которого сервер базы данных устанавливает личность клиента и определяет, разрешено ли приложению клиента подключаться с запрошенным именем пользователя базы данных.
PostgreSQL предлагает ряд различных методов аутентификации клиентов. Метод, используемый для проверки подлинности конкретного клиентского соединения, может быть выбран на основе адреса хоста клиента, базы данных и пользователя.
Имена пользователей базы данных PostgreSQL логически отделены от имен пользователей операционной системы, в которой работает сервер. Если все пользователи определенного сервера также имеют учетные записи на машине этого сервера, имеет смысл назначать имена пользователей баз данных, которые соответствуют их именам пользователей операционной системы. Однако сервер, принимающий удаленные подключения, может иметь много пользователей баз данных, у которых нет локальной учетной записи операционной системы, и в таких случаях между именами пользователей баз данных и именами пользователей ОС не должно быть никакой связи.