Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Agrega un rol de aplicación a la base de datos actual.
Convenciones de sintaxis de Transact-SQL
Sintaxis
CREATE APPLICATION ROLE application_role_name
WITH PASSWORD = 'password' [ , DEFAULT_SCHEMA = schema_name ]
Argumentos
application_role_name
Especifica el nombre del rol de aplicación. Ninguna entidad de seguridad de la base de datos debe utilizar este nombre.
PASSWORD = 'contraseña'
Especifica la contraseña que utilizarán los usuarios de la base de datos para activar el rol de aplicación. Debe utilizar siempre contraseñas seguras.
password debe cumplir los requisitos de la directiva de contraseñas de Windows del equipo que ejecuta la instancia de SQL Server.
DEFAULT_SCHEMA = schema_name
Especifica el primer esquema donde buscará el servidor cuando resuelva los nombres de objetos de este rol. Si DEFAULT_SCHEMA se deja sin definir, el rol de aplicación usará dbo como esquema predeterminado.
schema_name puede ser un esquema que no existe en la base de datos.
Comentarios
Importante
Al establecer las contraseñas de los roles de aplicación se comprueba la complejidad de la contraseña. Las aplicaciones que invocan roles de aplicación deben almacenar sus propias contraseñas. Las contraseñas de roles de aplicación deben almacenarse cifradas.
Puede ver los roles de aplicación en la vista de catálogo sys.database_principals.
Para saber más sobre cómo usar roles de aplicación, vea Roles de aplicación.
Nota:
Los esquemas no son equivalentes a los usuarios de la base de datos. Use vistas de catálogo del sistema para identificar las diferencias entre los usuarios y esquemas de la base de datos.
A partir de SQL Server 2012 (11.x), SQL Server y Azure SQL DB usaron un hash SHA-512 combinado con una sal aleatoria y única de 32 bits. Este método lo hizo estadísticamente inviable para que los atacantes deducen contraseñas.
SQL Server 2025 (17.x) presenta un algoritmo hash iterado, RFC2898, también conocido como función de derivación de claves basada en contraseña (PBKDF). Este algoritmo sigue usando SHA-512, pero aplica hash a la contraseña varias veces (100 000 iteraciones), lo que ralentiza significativamente los ataques por fuerza bruta. Este cambio mejora la protección con contraseña en respuesta a las amenazas de seguridad en evolución y ayuda a los clientes a cumplir las directrices de NIST SP 800-63b. Esta mejora de seguridad usa un algoritmo hash más seguro, que puede aumentar ligeramente el tiempo de inicio de sesión para los inicios de sesión de autenticación de SQL. Por lo general, el impacto es menor en entornos con agrupación de conexiones, pero puede ser más notable en escenarios sin agrupación o donde se supervisa estrechamente la latencia de inicio de sesión.
Permisos
Requiere el permiso ALTER ANY APPLICATION ROLE en la base de datos.
Ejemplos
En el siguiente ejemplo se crea un rol de aplicación denominado weekly_receipts con la contraseña 987Gbv876sPYY5m23 y con el esquema predeterminado Sales.
CREATE APPLICATION ROLE weekly_receipts
WITH PASSWORD = '987G^bv876sPY)Y5m23'
, DEFAULT_SCHEMA = Sales;
GO