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
Altera o nome, a senha ou o esquema padrão de uma função de aplicativo.
Convenções de sintaxe de Transact-SQL
Sintaxe
ALTER APPLICATION ROLE application_role_name
WITH <set_item> [ , ...n ]
<set_item> ::=
NAME = new_application_role_name
| PASSWORD = 'password'
| DEFAULT_SCHEMA = schema_name
Argumentos
application_role_name
O nome da função de aplicativo a ser modificada.
NOME = new_application_role_name
Especifica o novo nome da função de aplicativo. Esse nome ainda não deve ser usado para referenciar qualquer entidade no banco de dados.
SENHA = 'senha'
Especifica a senha da função de aplicativo.
password deve atender aos requisitos de política de senha do Windows do computador que está executando a instância do SQL Server. Você sempre deve usar senhas fortes.
DEFAULT_SCHEMA = schema_name
Especifica o primeiro esquema que será pesquisado pelo servidor quando ele resolver os nomes de objetos. schema_name pode ser um esquema que não existe no banco de dados.
Comentários
Se o novo nome da função de aplicativo já existir no banco de dados, a instrução falhará. Quando o nome, a senha ou o esquema padrão de uma função de aplicativo é alterado, a ID associada à função não é alterada.
Importante
A política de expiração de senha não é aplicada a senhas de função de aplicativo. Por esse motivo, tome muito cuidado ao selecionar senhas fortes. Os aplicativos que invocam funções de aplicativo devem armazenar suas senhas.
As funções de aplicativo são visíveis na exibição de sys.database_principals catálogo.
Observação
Esquemas não são equivalentes a usuários de banco de dados. Use as exibições do catálogo do sistema para identificar as diferenças entre os usuários do banco de dados e os esquemas.
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.
Permissões
Requer a permissão ALTER ANY APPLICATION ROLE no banco de dados. Para alterar o esquema padrão, o usuário também precisa da permissão ALTER na função de aplicativo. Uma função de aplicativo pode alterar seu próprio esquema padrão, mas não seu nome ou senha.
Exemplos
a. Alterando o nome da função de aplicativo
O exemplo a seguir altera o nome da função de aplicativo weekly_receipts para receipts_ledger.
USE AdventureWorks2022;
CREATE APPLICATION ROLE weekly_receipts
WITH PASSWORD = '987Gbv8$76sPYY5m23' ,
DEFAULT_SCHEMA = Sales;
GO
ALTER APPLICATION ROLE weekly_receipts
WITH NAME = receipts_ledger;
GO
B. Alterando a senha da função de aplicativo
O exemplo a seguir altera a senha da função de aplicativo receipts_ledger.
ALTER APPLICATION ROLE receipts_ledger
WITH PASSWORD = '897yUUbv867y$200nk2i';
GO
C. Alterando o nome, a senha e o esquema padrão
O exemplo a seguir altera o nome, a senha e o esquema padrão da função de aplicativo receipts_ledger ao mesmo tempo.
ALTER APPLICATION ROLE receipts_ledger
WITH NAME = weekly_ledger,
PASSWORD = '897yUUbv77bsrEE00nk2i',
DEFAULT_SCHEMA = Production;
GO