Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
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 novos trabalhos de desenvolvimento e planeje modificar aplicativos que atualmente usam esse recurso. Use CREATE APPLICATION ROLE em vez disso.
Transact-SQL convenções de sintaxe
Sintaxe
sp_addapprole
[ @rolename = ] N'rolename'
, [ @password = ] N'password'
[ ; ]
Argumentos
@rolename [ = ] N'rolename'
O nome da nova função do aplicativo. @rolename é sysname, sem padrão. @rolename deve ser um identificador válido e ainda não pode existir no banco de dados atual.
Os nomes de função do aplicativo podem conter de 1 a 128 caracteres, incluindo letras, 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 de código de retorno
0 (sucesso) ou 1 (fracasso).
Observações
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 declaração substitui .sp_addapprole
Para manter a compatibilidade com versões anteriores do SQL Server, sp_addapprole faça as seguintes verificações:
Se ainda não existir um esquema com o mesmo nome da função de aplicativo, 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_addapprolenã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 a partir de uma transação definida pelo usuário.
Importante
A opção Microsoft ODBC encrypt não é suportada pelo SqlClient. Quando puder, solicite aos usuários que insiram credenciais de função de aplicativo em tempo de execução. Evite armazenar credenciais em um arquivo. Se você precisar persistir as credenciais, criptografe-as usando as funções CryptoAPI.
Permissões
Requer permissão ALTER ANY APPLICATION ROLE na base 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 ao banco de dados atual. Substitua <password> por uma senha forte.
EXECUTE sp_addapprole 'SalesApp', '<password>';
GO