51.8. pg_authid#
51.8. pg_authid
Каталог pg_authid
содержит информацию о
идентификаторах авторизации базы данных (ролях). Роль объединяет понятия
“пользователей” и “групп”. Пользователь по сути является
ролью с установленным флагом rolcanlogin
. Любая роль (с
или без флага rolcanlogin
) может иметь другие роли в качестве членов; см.
pg_auth_members
.
Поскольку этот каталог содержит пароли, он не должен быть доступен публично.
pg_roles
- это публично доступное представление
pg_authid
, которое заменяет поле пароля на пустое значение.
Глава 21 содержит подробную информацию о управлении пользователями и привилегиями.
Поскольку идентификаторы пользователей являются общими для всего кластера,
структура pg_authid
разделяется между всеми базами данных кластера: существует только одна
копия pg_authid
на весь кластер, а не
по одной на каждую базу данных.
Таблица 51.8. pg_authid
Колонки
Тип столбца Описание |
---|
Идентификатор строки |
Имя роли |
Роль имеет привилегии суперпользователя |
Роль автоматически наследует привилегии ролей, к которым она принадлежит |
Роль может создавать другие роли |
Роль может создавать базы данных |
Роль может войти в систему. То есть, этой роли может быть назначен идентификатор начальной сессии. |
Роль - это роль репликации. Роль репликации может инициировать соединения репликации и создавать и удалять слоты репликации. |
Роль обходит каждую политику безопасности на уровне строк, см. Раздел 5.8 для получения дополнительной информации. |
Для ролей, которые могут войти в систему, это устанавливает максимальное количество одновременных соединений, которое может установить данная роль. Значение -1 означает отсутствие ограничений. |
Пароль (возможно, зашифрованный); null, если отсутствует. Формат зависит от используемого метода шифрования. |
Время истечения срока действия пароля (используется только для аутентификации по паролю); null, если срок действия не установлен |
Для пароля, зашифрованного с помощью MD5, столбец rolpassword
начнется со строки md5
, за которой следует 32-символьный шестнадцатеричный хеш MD5. Хеш MD5 будет получен путем конкатенации пароля пользователя с их именем пользователя. Например, если у пользователя joe
пароль xyzzy
, Tantor SE сохранит md5-хеш от xyzzyjoe
.
Если пароль зашифрован с использованием SCRAM-SHA-256, он имеет следующий формат:
SCRAM-SHA-256$<iteration count>
:<salt>
$<StoredKey>
:<ServerKey>
где salt
, StoredKey
и
ServerKey
находятся в формате Base64. Этот формат
совпадает с форматом, указанным в RFC 5803.
Пароль, не соответствующий ни одному из этих форматов, считается незашифрованным.