Habilitar a autenticação de banco de dados usando o Microsoft Entra ID
Dois componentes de cada banco de dados seguro são autenticação e autorização.
A autenticação é o processo de provar que o utilizador é quem diz ser. Um utilizador liga-se a uma base de dados através de uma conta de utilizador. Quando um utilizador tenta ligar-se a uma base de dados, introduz uma conta de utilizador e as informações de autenticação. O utilizador é autenticado através de um dos dois métodos de autenticação seguintes:
- Autenticação SQL - Com esse método de autenticação, o usuário envia um nome de conta de usuário e uma senha associada para estabelecer uma conexão. Esta palavra-passe é armazenada na base de dados mestra das contas de utilizador associadas a um início de sessão ou na base de dados que contém as contas de utilizador não associadas a um início de sessão.
- Autenticação do Microsoft Entra - Com esse método de autenticação, o usuário envia um nome de conta de usuário e solicita que o serviço use as informações de credenciais armazenadas na ID do Microsoft Entra.
Você pode criar contas de usuário no banco de dados mestre e conceder permissões em todos os bancos de dados no servidor ou pode criá-las no próprio banco de dados (chamados usuários de banco de dados contidos). Usando bancos de dados contidos, você obtém portabilidade e escalabilidade aprimoradas.
Logons e usuários: no SQL do Azure, uma conta de usuário em um banco de dados pode ser associada a um logon armazenado no banco de dados mestre ou pode ser um nome de usuário armazenado em um banco de dados individual.
- Um início de sessão é uma conta individual na base de dados mestra ao qual pode ser associada uma conta de utilizador numa ou mais bases de dados. Com o início de sessão, as informações das credenciais da conta de utilizador são armazenadas no início de sessão.
- Uma conta de usuário é uma conta individual em qualquer banco de dados que pode ser, mas não precisa ser vinculada a um login. Com uma conta de utilizador não associada a um início de sessão, as informações das credenciais são armazenadas na conta de utilizador.
A autorização para acessar dados e executar várias ações é gerenciada usando funções de banco de dados e permissões explícitas. Autorização refere-se às permissões atribuídas a um usuário e determina o que esse usuário tem permissão para fazer. A autorização é controlada pelas associações da função de base de dados e as permissões ao nível do objeto da conta de utilizador. Como melhor prática, deverá conceder aos utilizadores o mínimo de privilégios necessários. Como melhor prática, a sua aplicação deve utilizar uma conta dedicada para a autenticação. Desta forma, pode limitar as permissões concedidas à aplicação e reduzir os riscos de atividades maliciosas, caso o código da aplicação seja vulnerável a um ataque de injeção SQL. A abordagem recomendada consiste em criar um utilizador de base de dados contido, que permite que a sua aplicação se autentique diretamente na base de dados.
Inícios de sessão e contas de utilizador existentes após a criação de uma base de dados nova
Ao implantar o SQL do Azure pela primeira vez, você pode especificar um nome de logon e uma senha para um tipo especial de logon administrativo, o administrador do servidor. A seguinte configuração de logons e usuários nos bancos de dados mestre e de usuário ocorre durante a implantação:
- Um logon SQL com privilégios administrativos é criado usando o nome de logon especificado. Um logon é uma conta individual para fazer logon no Banco de Dados SQL, na Instância Gerenciada do SQL e na Sinapse do Azure.
- Esse login recebe permissões administrativas completas em todos os bancos de dados como uma entidade de segurança no nível do servidor. O login tem todas as permissões disponíveis e não pode ser limitado. Em uma Instância Gerenciada do SQL, esse logon é adicionado à função de servidor fixa sysadmin (essa função não existe no Banco de Dados SQL do Azure).
- Quando essa conta entra em um banco de dados, ela é correspondida à conta
dbo
de usuário especial (conta de usuário, que existe em cada banco de dados de usuário. O usuário dbo tem todas as permissões de banco de dados no banco de dados e é membro dadb_owner
função de banco de dados fixa.
Para identificar a conta de administrador do servidor para um servidor lógico, abra o portal do Azure e navegue até a guia Propriedades do seu servidor ou instância gerenciada.
O nome da conta de administrador do servidor não pode ser alterado após a sua criação. Para redefinir a senha do administrador do servidor, vá para o portal do Azure, clique em SQL Servers, selecione o servidor na lista e clique em Redefinir Senha. Para redefinir a senha da Instância Gerenciada do SQL, vá para o portal do Azure, clique na instância e clique em Redefinir senha. Você também pode usar o PowerShell ou a CLI do Azure.