sp_addapprole (Transact-SQL)
Aplica-se a:SQL Server
Adiciona uma função de aplicativo ao banco de dados atual.
Importante
Esse recurso será removido em uma versão futura do SQL Server. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam. Em vez disso, use CREATE APPLICATION ROLE .
Convenções de sintaxe de Transact-SQL
Sintaxe
sp_addapprole
[ @rolename = ] N'rolename'
, [ @password = ] N'password'
[ ; ]
Argumentos
@rolename [ = ] N'nomedafunção'
O nome da nova função de aplicativo. @rolename é sysname, sem padrão. @rolename deve ser um identificador válido e não pode já existir no banco de dados atual.
Os nomes de função de aplicativo podem conter de 1 até 128 caracteres, inclusive cartas, símbolos e números. Os nomes de função não podem conter uma barra invertida (\
) nem ser NULL ou uma cadeia de caracteres vazia ('').
@password [ = ] N'senha'
A senha necessária para ativar a função do aplicativo. @password é sysname, sem padrão. @password não pode ser NULL.
Valores do código de retorno
0
(sucesso) ou 1
(falha).
Comentários
Em versões anteriores do SQL Server, os usuários (e funções) não são totalmente distintos dos esquemas. A partir do SQL Server 2005 (9.x), os esquemas são totalmente distintos das funções. Essa arquitetura se reflete no comportamento do CREATE APPLICATION ROLE
. Esta afirmação substitui .sp_addapprole
Para manter a compatibilidade com versões anteriores do SQL Server, sp_addapprole
faça as seguintes verificações:
Se um esquema com o mesmo nome da função de aplicativo ainda não existir, o esquema será criado. O novo esquema pertence à função de aplicativo e é o esquema padrão da função de aplicativo.
Se já existir um esquema com o mesmo nome da função de aplicativo, o procedimento falhará.
sp_addapprole
não verifica a complexidade da senha. A complexidade da senha é verificada peloCREATE APPLICATION ROLE
.
O parâmetro @password é armazenado como um hash unidirecional.
O sp_addapprole
procedimento armazenado não pode ser executado de dentro de uma transação definida pelo usuário.
Importante
A opção ODBC encrypt
da Microsoft não é suportada pelo SqlClient. Quando possível, solicite que os usuários insiram as credenciais de função de aplicativo no momento da execução. Evite armazenar as credenciais em um arquivo. Se precisar manter as credenciais, criptografe-as usando as funções CryptoAPI.
Permissões
Requer a permissão ALTER ANY APPLICATION ROLE no banco de dados. Se um esquema com o mesmo nome e proprietário da nova função ainda não existir, também será necessária a permissão CREATE SCHEMA no banco de dados.
Exemplos
O exemplo a seguir adiciona a nova função SalesApp
de aplicativo com a senha x97898jLJfcooFUYLKm387gf3
ao banco de dados atual.
EXEC sp_addapprole 'SalesApp', 'x97898jLJfcooFUYLKm387gf3';
GO
Conteúdo relacionado
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de