Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Banco de Dados SQL do Azure
Instância Gerenciada de SQL do Azure
Este artigo descreve como criar uma função de aplicativo no SQL Server usando o SQL Server Management Studio ou o Transact-SQL. As funções de aplicativo restringem o acesso do usuário a um banco de dados exceto quando feito por aplicativos específicos. As funções de aplicativo não têm usuários, portanto, a lista Membros da Função não é exibida quando a função Aplicativo é selecionada.
Importante
A complexidade de Senha é verificada quando as senhas de função de aplicativo são definidas. Os aplicativos que invocam funções de aplicativo devem armazenar suas senhas. As senhas de função de aplicativo devem sempre ser criptografadas ao serem armazenadas.
Contexto
A partir do SQL Server 2012 (11.x), o SQL Server e o BD SQL do Azure usaram um hash SHA-512 combinado com um sal aleatório de 32 bits e um sal exclusivo. Esse método tornou estatisticamente inviável que os invasores deduzissem senhas.
O SQL Server 2025 (17.x) introduz um algoritmo de hash iterado, RFC2898, também conhecido como PBKDF ( função de derivação de chave baseada em senha ). Esse algoritmo ainda usa SHA-512, mas hashes a senha várias vezes (100.000 iterações), diminuindo significativamente os ataques de força bruta. Essa alteração aprimora a proteção por senha em resposta às ameaças de segurança em evolução e ajuda os clientes a cumprir as diretrizes do NIST SP 800-63b. Esse aprimoramento de segurança usa um algoritmo de hash mais forte, que pode aumentar ligeiramente o tempo de logon para logons de Autenticação do SQL. O impacto geralmente é menor em ambientes com pool de conexões, mas pode ser mais perceptível em cenários sem pool ou em que a latência de logon é monitorada de perto.
Utilize o SQL Server Management Studio
No Pesquisador de Objetos, expanda o banco de dados onde você deseja criar uma função de aplicativo.
Expanda a pasta Segurança .
Expanda a pasta Funções .
Clique com o botão direito do mouse na pasta Funções de Aplicativo e selecione Nova Função de Aplicativo....
Na caixa de diálogo Função de Aplicativo – Nova, na Página Geral, digite o novo nome da nova função de aplicativo na caixa Nome da função.
Na caixa Esquema Padrão , especifique o esquema que possuirá objetos criados por essa função digitando os nomes dos objetos. Como alternativa, selecione as reticências (...) para abrir a caixa de diálogo Localizar Esquema.
Na caixa Senha , digite uma senha para a nova função. Insira novamente essa senha na caixa Confirmar Senha .
Em Esquemas de propriedade dessa função, selecione ou confira os esquemas que serão de propriedade desta função. Um esquema pode ser de propriedade de um só esquema ou função.
Selecione OK.
Opções adicionais
A caixa de diálogo Função de Aplicativo – Nova também oferece opções em duas páginas adicionais: Protegíveis e Propriedades Ampliadas.
A página Protegíveis lista todos os protegíveis e as permissões possíveis nesses protegíveis que podem ser concedidos ao logon.
A página Propriedades estendidas permite adicionar propriedades personalizadas a usuários de banco de dados.
Usar transact-SQL
No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.
Na barra Padrão, selecione Nova Consulta.
Copie e cole o exemplo a seguir na janela de consulta e selecione Executar. Esse código cria uma função de aplicativo chamada
weekly_receiptsque tem uma senha eSalescomo seu esquema padrão. Substitua por<password>uma senha forte.-- CREATE APPLICATION ROLE weekly_receipts WITH PASSWORD = '<password>' , DEFAULT_SCHEMA = Sales; GO
Permissões
Requer permissão ALTER ANY APPLICATION ROLE no banco de dados.