Eventos
31 mar, 23 - 2 abr, 23
Evento de aprendizaje de SQL, Fabric y Power BI más grande. 31 de marzo – 2 de abril. Use el código FABINSIDER para ahorrar $400.
Regístrate hoyEste explorador ya no se admite.
Actualice a Microsoft Edge para aprovechar las características y actualizaciones de seguridad más recientes, y disponer de soporte técnico.
Se aplica a: SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Punto de conexión de análisis SQL en Microsoft Fabric
Almacenamiento en Microsoft Fabric
Devuelve el nombre de inicio de sesión asociado a un número de identificación de seguridad (SID).
Convenciones de sintaxis de Transact-SQL
SUSER_SNAME ( [ server_user_sid ] )
Número de identificación opcional de seguridad del inicio de sesión. server_user_sid es varbinary(85). server_user_sid puede ser el número de identificación de seguridad de cualquier inicio de sesión de SQL Server, o de un usuario o grupo de Microsoft Windows. Consulte la columna sid
en las vistas de catálogo sys.server_principals
o sys.sql_logins
. Si no se especifica server_user_sid, se devuelve información acerca del usuario actual. Si el parámetro contiene la palabra NULL
, SUSER_SNAME
devuelve NULL
.
server_user_sid no se admite en Azure SQL Database.
nvarchar(128)
SUSER_SNAME
se puede usar como una restricción DEFAULT en ALTER TABLE
o CREATE TABLE
. Se puede utilizar SUSER_SNAME
en una lista de selección, en una cláusula WHERE y en cualquier lugar en el que se permita una expresión. SUSER_SNAME
siempre debe ir seguido de paréntesis, aunque no se especifique ningún parámetro.
Si se llama sin un argumento, SUSER_SNAME
devuelve el nombre del contexto de seguridad actual. Si se llama sin un argumento en un lote que ha cambiado de contexto mediante EXECUTE AS
, SUSER_SNAME
devuelve el nombre del contexto suplantado. Cuando se llama desde un contexto suplantado, ORIGINAL_LOGIN
devuelve el nombre del contexto original.
SUSER_SNAME
siempre devuelve el nombre de inicio de sesión del contexto de seguridad actual.
La instrucción SUSER_SNAME
no admite la ejecución con un contexto de seguridad suplantado a través de EXECUTE AS.
SUSER_SNAME
no admite el argumento server_user_id.
En el ejemplo siguiente se devuelve el nombre de inicio de sesión para el contexto de seguridad actual.
SELECT SUSER_SNAME();
GO
En el siguiente ejemplo se devuelve el nombre de inicio de sesión asociado a un número de identificación de seguridad de Windows.
SELECT SUSER_SNAME(0x010500000000000515000000a065cf7e784b9b5fe77c87705a2e0000);
GO
En el ejemplo siguiente se utiliza SUSER_SNAME
como restricción DEFAULT en una instrucción CREATE TABLE
.
USE AdventureWorks2022;
GO
CREATE TABLE sname_example (
login_sname SYSNAME DEFAULT SUSER_SNAME(),
employee_id UNIQUEIDENTIFIER DEFAULT NEWID(),
login_date DATETIME DEFAULT GETDATE()
);
GO
INSERT sname_example DEFAULT
VALUES;
GO
En este ejemplo se muestra el comportamiento de SUSER_SNAME
si se llama desde un contexto suplantado.
SELECT SUSER_SNAME();
GO
EXECUTE AS LOGIN = 'WanidaBenShoof';
SELECT SUSER_SNAME();
REVERT;
GO
SELECT SUSER_SNAME();
GO
Este es el resultado.
sa
WanidaBenShoof
sa
En el ejemplo siguiente se obtiene el nombre de inicio de sesión que corresponde al número de identificación de seguridad con un valor de 0x01
.
SELECT SUSER_SNAME(0x01);
GO
En el ejemplo siguiente se devuelve el nombre de inicio de sesión del inicio de sesión actual.
SELECT SUSER_SNAME() AS CurrentLogin;
GO
Eventos
31 mar, 23 - 2 abr, 23
Evento de aprendizaje de SQL, Fabric y Power BI más grande. 31 de marzo – 2 de abril. Use el código FABINSIDER para ahorrar $400.
Regístrate hoy