Habilitar a autenticação de banco de dados usando o Microsoft Entra ID

Concluído

Dois componentes de todo banco de dados seguro são autenticação e autorização.

A autenticação é o processo de provar que o usuário é quem diz ser. Um usuário se conecta a um banco de dados com uma conta de usuário. Uma conta de usuário e informações de autenticação são fornecidas quando um usuário tenta se conectar a um banco de dados. O usuário é autenticado usando um dos dois métodos de autenticação a seguir:

  • 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. Essa senha é armazenada no banco de dados mestre das contas de usuário vinculadas a um logon ou é armazenada no banco de dados que contém as contas de usuário não vinculadas a um logon.
  • 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 credencial armazenadas no Microsoft Entra ID.

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 de usuários de banco de dados independente). Usando bancos de dados independentes, 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 que é armazenado no banco de dados mestre ou pode ser um nome de usuário que é armazenado em um banco de dados individual.

  • Um logon é uma conta individual no banco de dados mestre para a qual uma conta de usuário pode ser vinculada em um ou mais bancos de dados. Com um logon, as informações de credencial para a conta de usuário são armazenadas com o logon.
  • Uma conta de usuário é uma conta individual em qualquer banco de dados que pode estar, mas não precisa estar vinculada a um logon. Com uma conta de usuário que não está vinculada a um logon, as informações da credencial são armazenadas com a conta de usuário.

A autorização para acessar dados e executar várias ações são gerenciadas usando funções de banco de dados e permissões explícitas. A autorização refere-se às permissões atribuídas a um usuário e determina o que o usuário tem permissão para fazer. A autorização é controlada pelas associações de função e permissões no nível do objeto do banco de dados da conta de usuário. Como uma prática recomendada, você deve conceder aos usuários os privilégios mínimos necessários. Como melhor prática, seu aplicativo deve usar uma conta dedicada para se autenticar. Dessa forma, você pode limitar as permissões concedidas ao aplicativo e reduzir os riscos de atividades mal-intencionadas, caso o código do aplicativo seja vulnerável a um ataque de injeção de SQL. A abordagem recomendada é criar um usuário de banco de dados independente, o que permite que seu aplicativo seja autenticado diretamente no banco de dados individual.

Logons existentes e contas de usuário após criar um novo banco de dados

Ao implantar SQL do Azure pela primeira vez, você poderá especificar uma ID 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 do SQL com privilégios de administrador é criado usando o nome de logon especificado. Um logon é uma conta individual para fazer logon no Banco de Dados SQL, na Instância Gerenciada SQL e no Azure Synapse.
  • Esse logon recebe permissões administrativas completas em todos os bancos de dados como uma entidade de segurança no nível do servidor. O logon tem todas as permissões disponíveis e não pode ser limitado. Em uma instância gerenciada, 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 de usuário especial dbo (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 da função de banco de dados fixa db_owner.

Para identificar a conta de Administrador do servidor para um servidor lógico, abra o portal do Azure e navegue para a guia Propriedades do seu servidor ou da instância gerenciada.

O nome da conta de Administrador do servidor não pode ser alterado após sua criação. Para redefinir a senha do administrador do servidor, acesse 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 de SQL, acesse 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.