Criar usuários no Banco de Dados do Azure para MySQL
Este artigo descreve como criar novas contas de usuários para interagir com um servidor do Banco de Dados do Azure para MySQL.
Observação
Este artigo faz referência ao termo escravo, que a Microsoft não usa mais. Quando o termo for removido do software, também o removeremos deste artigo.
Você forneceu um nome de usuário e senha do administrador do servidor ao criar seu servidor do Banco de Dados do Azure para MySQL. Para obter mais informações, confira este guia de Início Rápido. Você pode determinar o nome de usuário administrador do servidor no portal do Azure.
O usuário administrador do servidor tem estes privilégios:
SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS, REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER
Depois de criar um servidor do Banco de Dados do Azure para MySQL, você poderá usar a primeira conta de administrador de servidor para criar mais usuários e conceder acesso de administrador a eles. Você também pode usar a conta de administrador do servidor para criar usuários menos privilegiados que têm acesso a esquemas de banco de dados individuais.
Observação
Não há suporte para o privilégio SUPER nem para a função DBA. Revise os privilégios no artigo de limitações para entender o que não tem suporte no serviço.
Plug-ins de senha como validate_password
e caching_sha2_password
não têm suporte do serviço.
Criar um banco de dados
Obter o nome de usuário do administrador e as informações de conexão.
Para conectar o servidor de banco de dados, você precisa do nome do servidor completo e as credenciais de entrada do administrador. Localize facilmente o nome do servidor e as informações de entrada na página Visão Geral ou na página Propriedades do servidor no portal do Azure.
Use a conta de administrador e a senha para se conectar ao seu servidor de banco de dados. Use sua ferramenta de cliente preferida, como o MySQL Workbench, o mysql.exe ou HeidiSQL.
Edite e execute o código SQL a seguir. Substitua o valor de espaço reservado
db_user
pelo novo nome de usuário. Substitua o valor do espaço reservadotestdb
pelo nome do banco de dados.
Este código SQL cria um novo banco de dados com nome testdb. Em seguida, ele cria um novo usuário no serviço do MySQL e concede a esse usuário todos os privilégios para o novo esquema de banco de dados (testdb*).
CREATE DATABASE testdb;
Criar um usuário não administrador
Agora que criou o banco de dados, você pode criar um usuário não administrador usando a instrução CREATE USER
do MySQL.
CREATE USER 'db_user'@'%' IDENTIFIED BY 'StrongPassword!';
GRANT ALL PRIVILEGES ON testdb . * TO 'db_user'@'%';
FLUSH PRIVILEGES;
Verificar as permissões de usuário
Para exibir os privilégios permitidos para o usuário db_user no banco de dados testdb, execute a instrução MySQL SHOW GRANTS
.
USE testdb;
SHOW GRANTS FOR 'db_user'@'%';
Conectar o banco de dados com o novo usuário
Entre no servidor, especifique o banco de dados designado e use o novo nome de usuário e senha. Este exemplo mostra a linha de comando do MySQL. Ao usar esse comando, você será solicitado a fornecer a senha do usuário. Use seu próprio nome de servidor, o nome do banco de dados e o nome de usuário. Veja como se conectar na tabela a seguir.
--host mydemoserver.mysql.database.azure.com --database testdb --user db_user -p
Limitar privilégios para um usuário
Para restringir o tipo de operações que um usuário pode executar no banco de dados, você precisa adicionar explicitamente as operações na instrução de CONCESSÃO. Consulte o seguinte exemplo:
CREATE USER 'new_master_user'@'%' IDENTIFIED BY 'StrongPassword!';
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS, REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER ON *.* TO 'new_master_user'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
Sobre azure_superuser
Todos Banco de Dados do Azure para MySQL servidores são criados com um usuário chamado "azure_superuser". Essa é uma conta do sistema criada pela Microsoft para gerenciar o servidor e efetuar o monitoramento, os backups e outras manutenções periódicas. Os engenheiros de plantão também podem usar essa conta para acessar o servidor durante um incidente com autenticação de certificado e precisam solicitar o acesso usando processos Just-In-Time (JIT).