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
Agrega un rol de aplicación a la base de datos actual.
Importante
Esta característica se quitará en una versión futura de SQL Server. Evite utilizar esta característica en nuevos trabajos de desarrollo y tenga previsto modificar las aplicaciones que actualmente la utilizan. Use CREATE APPLICATION ROLE en su lugar.
Convenciones de sintaxis de Transact-SQL
sp_addapprole
[ @rolename = ] N'rolename'
, [ @password = ] N'password'
[ ; ]
Nombre del nuevo rol de aplicación. @rolename es sysname, sin ningún valor predeterminado. @rolename debe ser un identificador válido y aún no puede existir en la base de datos actual.
Los nombres de roles de aplicación pueden contener entre 1 y 128 caracteres, y pueden incluir letras, símbolos y números. Los nombres de rol no pueden contener una barra diagonal inversa (\
) ni ser NULL
ni una cadena vacía ("").
Contraseña necesaria para activar el rol de aplicación. @password es sysname, sin ningún valor predeterminado. @password no puede ser NULL
.
0
(correcto) o 1
(erróneo).
En versiones anteriores de SQL Server, los usuarios (y los roles) no son totalmente distintos de los esquemas. A partir de SQL Server 2005 (9.x), los esquemas son totalmente distintos de los roles. Esta arquitectura se refleja en el comportamiento de CREATE APPLICATION ROLE
. Esta instrucción reemplaza sp_addapprole
a .
Para mantener la compatibilidad con versiones anteriores de SQL Server, sp_addapprole
realiza las siguientes comprobaciones:
Si aún no existe un esquema con el mismo nombre que el rol de aplicación, se crea el esquema. El nuevo esquema es propiedad del rol de aplicación y es el esquema predeterminado del rol de aplicación.
Si ya existe un esquema con el mismo nombre que el rol de aplicación, se produce un error en el procedimiento.
sp_addapprole
no comprueba la complejidad de la contraseña. La complejidad de la contraseña se comprueba mediante CREATE APPLICATION ROLE
.
El parámetro @password se almacena como un hash unidireccional.
El sp_addapprole
procedimiento almacenado no se puede ejecutar desde dentro de una transacción definida por el usuario.
Importante
SqlClient no admite la opción ODBC encrypt
de Microsoft. Cuando pueda, pida a los usuarios que escriban las credenciales del rol de aplicación en tiempo de ejecución. No guarde las credenciales en un archivo. Si debe conservar las credenciales, cífrelas con las funciones CryptoAPI.
Requiere el permiso ALTER ANY APPLICATION ROLE en la base de datos. Si aún no existe un esquema con el mismo nombre y propietario que el nuevo rol, también requiere el permiso CREATE SCHEMA en la base de datos.
En el ejemplo siguiente se agrega el nuevo rol SalesApp
de aplicación con la contraseña x97898jLJfcooFUYLKm387gf3
a la base de datos actual.
EXEC sp_addapprole 'SalesApp', 'x97898jLJfcooFUYLKm387gf3';
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