sp_helplogins (Transact-SQL)
Предоставляет данные об именах учетных записей и соответствующих пользователях в каждой базе данных.
Применимо для следующих объектов: SQL Server (начиная с SQL Server 2008 до текущей версии). |
Cинтаксические обозначения в Transact-SQL
Синтаксис
sp_helplogins [ [ @LoginNamePattern = ] 'login' ]
Аргументы
- [ @LoginNamePattern = ] 'login'
Имя входа. Аргумент login имеет тип sysname и значение по умолчанию NULL. Значение login должно существовать, если задано. Если аргумент login не указывается, то выводятся сведения обо всех учетных записях.
Значения кода возврата
0 (успешное завершение) или 1 (неуспешное завершение)
Результирующие наборы
Первый отчет содержит данные о каждой заданной учетной записи, как показано в следующей таблице.
Имя столбца |
Тип данных |
Описание |
---|---|---|
LoginName; |
sysname |
Имя входа. |
SID |
varbinary(85) |
Идентификатор защиты имени входа (SID). |
DefDBName |
sysname |
База данных по умолчанию, используемая пользователем с именем входа LoginName при подключении к экземпляру SQL Server. |
DefLangName |
sysname |
Язык по умолчанию, используемый именем входа LoginName. |
Auser |
char(5) |
Yes = Параметр LoginName имеет связанное имя пользователя в базе данных. No = Параметр LoginName не имеет связанного имени пользователя. |
ARemote |
char(7) |
Yes = Параметр LoginName имеет связанную учетную запись для удаленного входа. No = Параметр LoginName не имеет связанного имени пользователя. |
Второй отчет содержит данные о пользователях, сопоставленных с каждым из имен входа, а также ролях, членом которых является каждое имя входа, как показано в следующей таблице.
Имя столбца |
Тип данных |
Описание |
---|---|---|
LoginName; |
sysname |
Имя входа. |
DBName |
sysname |
База данных по умолчанию, используемая пользователем с именем входа LoginName при подключении к экземпляру SQL Server. |
UserName |
sysname |
Учетная запись пользователя, которая сопоставлена с именем входа LoginName в базе данных DBName, и роли, членом которых является пользователь с именем входа LoginName в базе данных DBName. |
UserOrAlias |
char(8) |
MemberOf = Параметр UserName является ролью. User = Параметр UserName является учетной записью пользователя. |
Замечания
Перед удалением имени учетной записи используйте процедуру sp_helplogins для определения пользовательских учетных записей, которые сопоставляются с именем входа.
Разрешения
Необходимо членство в предопределенной роли сервера securityadmin.
Для определения всех учетных записей, сопоставленных с данным именем входа, процедура sp_helplogins должна проверить все базы данных на сервере. Однако для каждой базы данных на сервере должно выполняться как минимум одно из следующих условий.
Пользователь, выполняющий процедуру sp_helplogins, имеет права на доступ к базе данных.
Гостевая учетная запись включена в базе данных.
Если процедура sp_helplogins не может получить доступ к базе данных, то процедура sp_helplogins возвратит столько данных, сколько возможно, и сообщение об ошибке 15622.
Примеры
Следующий пример выдает данные об имени входа John.
EXEC sp_helplogins 'John';
GO
LoginName SID DefDBName DefLangName AUser ARemote
--------- -------------------------- --------- ----------- ----- -------
John 0x23B348613497D11190C100C master us_english yes no
(1 row(s) affected)
LoginName DBName UserName UserOrAlias
--------- ------ -------- -----------
John pubs John User
(1 row(s) affected)