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 da senha é verificada quando as senhas das funções do aplicativo são configuradas. 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 Banco de Dados SQL do Azure usavam um hash SHA-512 combinado com um salt aleatório e exclusivo de 32 bits. 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 aplica hash à senha várias vezes (100.000 iterações), tornando os ataques de força bruta significativamente mais lentos. 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 Securizáveis lista todos os securizáveis possíveis e as permissões sobre esses securizáveis que podem ser concedidas ao login.
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<password>por 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.