Exercício – Configurar a autenticação

Concluído

Neste exercício, você criará logons, usuários e administradores, além de permitir aos usuários do Microsoft Entra acesso ao banco de dados como faria com usuários normais no SQL Server.

  1. Abra o SSMS (SQL Server Management Studio) e conecte-se ao seu servidor lógico do Banco de Dados SQL do Azure, se você ainda não estiver conectado.

  2. Depois de configurar o seu banco de dados e conectar-se a ele, a próxima etapa pode ser adicionar outros usuários e permitir acesso a eles. Assim como no SQL Server, você pode adicionar novos logons e usuários.

    No SSMS, clique com o botão direito do mouse no servidor de banco de dados, selecione Nova consulta e crie uma nova consulta com o comando a seguir. Selecione Executar para executar a consulta:

    -- Create a new SQL login and give them a password
    CREATE LOGIN ApplicationUser WITH PASSWORD = 'YourStrongPassword1';
    

    Dica

    Na maioria das consultas no Banco de Dados SQL do Azure, você precisa clicar com o botão direito do mouse no banco de dados no servidor lógico do Banco de Dados SQL do Azure. No SQL Server e na Instância Gerenciada de SQL do Azure, você pode consultar no nível do servidor e usar USE <DatabaseName>, mas no Banco de Dados SQL do Azure, você precisa consultar o banco de dados diretamente. Isso ocorre porque a instrução USE não tem suporte. Há algumas exceções para consultar seu banco de dados no Banco de Dados SQL do Azure e uma delas é o logon. Você precisa se conectar ao banco de dados master virtual para criar e alterar logons.

    Agora você tem um logon no nível do servidor. A próxima etapa é criar usuários no banco de dados AdventureWorks e conceder a eles acesso de leitura/gravação, se necessário. Clique com o botão direito do mouse no banco de dados AdventureWorks e selecione Nova Consulta. Crie uma nova consulta com o seguinte comando e selecione Executar:

    -- Create a new SQL user from that login
    CREATE USER ApplicationUser FOR LOGIN ApplicationUser;
    
    -- Until you run the following two lines, ApplicationUser has no access to read or write data
    ALTER ROLE db_datareader ADD MEMBER ApplicationUser;
    ALTER ROLE db_datawriter ADD MEMBER ApplicationUser;
    

    Os usuários poderão fazer logon somente no banco de dados AdventureWorks e não no servidor inteiro.

    A prática recomendada é criar contas que não sejam de administrador no nível do banco de dados, a menos que os usuários precisem executar tarefas de administrador.

  3. No SQL Server, talvez você esteja familiarizado com o conceito de um usuário de banco de dados independente. Isso significa que um usuário tem acesso somente a bancos de dados específicos e não tem um logon para o servidor. No Banco de Dados SQL do Azure, você pode criar usuários de banco de dados independente com autenticação no SQL ou no Microsoft Entra. Você precisa estar no contexto do banco de dados de usuário para o qual deseja criar acesso de usuário (em vez de estar no master). No SSMS, clique com o botão direito do mouse no banco de dados e selecione Nova consulta. Crie uma nova consulta com o seguinte comando e selecione Executar:

    CREATE USER MyDatabaseUser WITH PASSWORD = 'C0mpl3xPa55word!'
    
  4. Selecione Conectar no canto superior esquerdo do Pesquisador de Objetos e selecione Mecanismo de Banco de Dados. Configure a página principal para que você esteja se conectando ao servidor lógico do Banco de Dados SQL do Azure. Para Logon, insira MyDatabaseUser e para Senha, digite C0mpl3xPa55word!.

  5. Você também precisa definir o nome do banco de dados, o que pode ser feito acessando Opções>Parâmetros de Conexão Adicionais, em que você pode inserir Initial Catalog=AdventureWorks. Você precisa fazer isso manualmente porque o MyDatabaseUser não tem acesso para verificar o servidor para selecionar um banco de dados.

  6. Selecione Conectar e confirme que você consegue acessar o banco de dados.

  7. Como uma etapa de limpeza, clique com o botão direito do mouse na conexão do MyDatabaseUser e selecione Desconectar.

Conceder acesso a outros usuários do Microsoft Entra

Você pode criar logons de contas do Microsoft Entra como um usuário de banco de dados independente usando a sintaxe T-SQL CREATE USER [anna@contoso.com] FROM EXTERNAL PROVIDER. Um usuário do banco de dados independente é mapeado para uma identidade no diretório do Microsoft Entra associado ao banco de dados e não tem um logon no banco de dados master.

Com a introdução de logons de servidor Microsoft Entra no Banco de Dados SQL do Azure, você pode criar logons de entidades de segurança do Microsoft Entra no banco de dados virtual master de um Banco de Dados SQL. Você pode criar logons do Microsoft Entra de usuários, grupos e entidades de serviço do Microsoft Entra. Para obter informações, confira Entidades do servidor Microsoft Entra

Além disso, você pode usar o portal do Azure apenas para criar administradores, e as funções de controle de acesso baseadas em função do Azure não se propagam para servidores lógicos do Banco de Dados SQL do Azure. Você precisa conceder permissões adicionais de servidor e do banco de dados usando T-SQL (Transact-SQL).