В этом учебном пособии вы узнаете, какой выполнить запрос в SQL Server, чтобы узнать всех созданных пользователей.
Описание
В SQL Server существует системный вид sys.database_principals. Вы можете запустить запрос этого системного представления, который возвращает всех пользователей, созданных на SQL Server, а также информацию об этих пользователях.
Синтаксис
Синтаксис Find Users in SQL Server в SQL Server (Transact-SQL):
|
1 2 |
SELECT * FROM master.sys.database_principals; |
В представлении sys.database_principals содержатся следующие столбцы:
| Колонки | Пояснение |
|---|---|
| name | Это имя пользователя, которое было присвоено в операторе CREATE USER |
| principal_id | Уникальное числовое значение |
| type | Тип principal S = пользователь SQL Server U = пользователь Windows G = группа Windows A = роль приложения R = роль базы данных C = Сертификат K = Асимметричный ключ |
| type_desc | Описание для типа principal SQL_USER WINDOWS_USER WINDOWS_GROUP APPLICATION_ROLE DATABASE_ROLE CERTIFICATE_MAPPED_USER ASSYMETRIC_KEY_MAPPED_USER |
| default_schema_name | Имя, которое следует использовать, если схема не указана |
| create_date | Дата / время, когда Пользователь был создан с использованием оператора CREATE USER |
| modify_date | Дата / время, когда Пользователь был изменен |
| owning_principal_id | Идентификатор principal, которому принадлежит этот пользователь |
| sid | Это s sid, который был назначен с использованием оператора CREATE LOGIN |
| is_fixed_role | 0 или 1 |
| authentication_type | NONE, WINDOWS, INSTANCE |
| default_language_name | Указывает язык по умолчанию для этого principal. |
| default_language_lcid | Указывает LCID по умолчанию для этого principal. |
Совместимость с более старыми версиями
В старых версиях SQL Server вы можете получить всех пользователей с помощью системных таблиц SQL Server 2000, таких как таблица sys.sysusers.
Чтобы загрузить всех пользователей на SQL Server с использованием системных таблиц SQL Server 2000, вы можете выполнить следующий оператор SQL:
|
1 2 |
SELECT * FROM master.sys.sysusers; |
Системная таблица sys.sysusers (SQL Server 2000) содержит следующие столбцы:
| Колонки | Пояснение |
|---|---|
| uid | Уникальное числовое значение |
| status | Не используется |
| name | Это имя пользователя, которое было присвоено в операторе CREATE USER |
| sid | Это sid, который был назначен в операторе CREATE LOGIN |
| roles | Не используется |
| createdate | Дата / время, когда Пользователь был создан с использованием оператора CREATE USER |
| updatedate | Дата / время, когда Пользователь был изменен |
| altuid | Не используется |
| password | Не используется |
| gid | Идентификатор группы, присвоенный пользователю |
| environ | Не используется |
| hasdbaccess | 0 или 1 |
| islogin | 0 или 1 |
| isntname | 0 или 1 |
| isntgroup | 0 или 1 |
| isntuser | 0 или 1 |
| issqluser | 0 или 1 |
| isaliased | 0 или 1 |
| issqlrole | 0 или 1 |
| isapprole | 0 или 1 |