Exportar (0) Imprimir
Expandir Tudo

Gerenciando bancos de dados e logons no Banco de dados SQL do Azure

Atualizado: fevereiro de 2014

No Microsoft Banco de dados SQL do Microsoft Azure, quando você assina o serviço, o processo de provisionamento cria um servidor do Banco de dados SQL do Azure, um banco de dados denominado master e um logon que é a entidade de segurança no nível de servidor do seu servidor do Banco de dados SQL do Azure. Esse logon é semelhante à entidade de segurança no nível de servidor, sa, para uma instância do SQL Server em seu local.

A conta da entidade de segurança no nível de servidor do Banco de dados SQL do Azure sempre tem permissão para gerenciar toda a segurança nos níveis de servidor e banco de dados. Este tópico descreve como você pode usar a entidade de segurança no nível de servidor e outras contas para gerenciar logons e bancos de dados no Banco de dados SQL do Microsoft Azure.  

A administração de segurança no Banco de dados SQL do Microsoft Azure é semelhante à administração de segurança para uma instância local do SQL Server. Gerenciar a segurança no nível de banco de dados é quase idêntico, com diferenças apenas nos parâmetros disponíveis. Como os Banco de dados SQL do Azure podem ser dimensionados em um ou mais computadores físicos, o Banco de dados SQL do Microsoft Azure usa uma estratégia diferente para a administração no nível de servidor. A tabela a seguir resume como a administração de segurança para um SQL Server local difere do Banco de dados SQL do Microsoft Azure.

 

Ponto de diferença SQL Server local Banco de dados SQL do Microsoft Azure

Onde você gerencia a segurança no nível de servidor

A pasta Segurança no Pesquisador de Objetos do SQL Server Management Studio

O banco de dados master

Função de segurança no nível de servidor para criar logons

Função de servidor fixa securityadmin

Para obter mais informações, consulte Funções de nível de servidor.

Função de banco de dados loginmanager no banco de dados mestre

Comandos para gerenciar logons

CREATE LOGIN

ALTER LOGIN

DROP LOGIN

CREATE LOGIN

ALTER LOGIN

DROP LOGIN

(Há algumas limitações de parâmetros e você deve estar conectado ao banco de dados master)

Exibição que mostra todos os logons

sys.syslogins (sys.sql_logins para logons de autenticação do SQL Server)

sys.sql_logins

(Você deve estar conectado ao banco de dados master)

Função no nível de servidor para criar bancos de dados

Função de banco de dados fixa dbcreator

Para obter mais informações, consulte Funções de nível de servidor.

Função de banco de dados dbmanager no banco de dados mestre

Comando para criar um banco de dados

CREATE DATABASE

CREATE DATABASE

(Há algumas limitações de parâmetros e você deve estar conectado ao banco de dados master)

Removendo bancos de dados

DROP DATABASE

DROP DATABASE

Se um usuário estiver na função dbmanager, ele terá permissão para DROP qualquer banco de dados, independentemente de qual usuário o criou originalmente.

Exibição que lista todos os bancos de dados

sys.databases

(exibição)

sys.databases

(Você deve estar conectado ao banco de dados master)

Seu servidor do Banco de dados SQL do Azure é uma abstração que define um agrupamento de bancos de dados. Bancos de dados associados ao seu servidor do Banco de dados SQL do Azure podem residir em computadores físicos separados no data center Microsoft. Execute a administração no nível de servidor em todos eles usando um único banco de dados denominado master.

O banco de dados master mantém o controle de logons e quais logons têm permissão para criar bancos de dados ou outros logons. Você deve estar conectado ao banco de dados master sempre que criar CREATE, alterar ALTERou remover DROP logons ou bancos de dados. O banco de dados master também tem as exibições sys.sql_logins e sys.databases que você pode usar para exibir logons e bancos de dados, respectivamente.

noteObservação
Não há suporte para o comando USE para alternar entre bancos de dados. Estabeleça uma conexão diretamente com o banco de dados de destino.

Você pode gerenciar a segurança no nível de banco de dados para usuários e objetos do Banco de dados SQL do Microsoft Azure do mesmo modo que você o faz para uma instância local do SQL Server. Há diferenças apenas nos parâmetros disponíveis para os comandos correspondentes. Para obter mais informações, consulte Referência de Transact-SQL (Transact-SQL).)

Gerencie logons com o logon da entidade de segurança no nível de servidor conectando-se ao banco de dados master. Você pode usar as instruções CREATE LOGIN, ALTER LOGIN ou DROP LOGIN. O exemplo a seguir cria um logon denominado login1.

-- first, connect to the master database
CREATE LOGIN login1 WITH password='<ProvidePassword>';
noteObservação
Você deve usar uma senha segura ao criar um logon. Para obter mais informações, consulte Senhas seguras.

Para conectar-se ao Banco de dados SQL do Microsoft Azure usando os logons que você cria, é preciso conceder, primeiramente, permissões no nível de banco de dados a cada logon usando o comando CREATE USER. Consulte Concedendo permissões no nível de banco de dados a um logon para obter mais informações.

Como algumas ferramentas implementam o protocolo TDS de forma diferente, talvez seja necessário acrescentar o nome do servidor do Banco de dados SQL do Azure ao logon na cadeia de conexão usando a notação <login>@<server>. Nesses casos, separe o logon e o nome do servidor do Banco de dados SQL do Azure com o símbolo @. Por exemplo, se seu logon for login1 e o nome totalmente qualificado de seu servidor do Banco de dados SQL do Azure for servername.database.windows.net, o parâmetro de nome de usuário de sua cadeia de conexão deverá ser: login1@servername. Essa restrição impõe limitações no texto que você pode escolher para o nome de logon. Para obter mais informações, consulte CRIAR LOGON (Transact-SQL).

Para que logons diferentes da entidade de segurança no nível de servidor gerenciem a segurança no nível de servidor, o Banco de dados SQL do Microsoft Azure oferece duas funções de segurança: loginmanager, para criar logons e dbmanager para criar bancos de dados. Somente usuários do banco de dados master podem ser adicionados a essas funções de banco de dados.

noteObservação
Para criar logons ou bancos de dados, você deve estar conectado ao banco de dados master (que é uma representação lógica do master).

Assim como a função de servidor fixa securityadmin para uma instância local do SQL Server, a função de banco de dados loginmanager no Banco de dados SQL do Microsoft Azure tem permissão para criar logons. Somente o logon da entidade de segurança no nível do servidor (criado pelo processo de provisionamento) ou membros da função de banco de dados loginmanager podem criar novos logons.

A função de banco de dados dbmanager do Banco de dados SQL do Microsoft Azure é semelhante à função de servidor fixa dbcreator para uma instância local do SQL Server. Somente o logon da entidade de segurança no nível do servidor (criado pelo processo de provisionamento) ou membros da função de banco de dados dbmanager podem criar bancos de dados. Se um usuário for membro da função de banco de dados dbmanager, ele poderá criar um banco de dados com o comando CREATE DATABASE do Banco de dados SQL do Azure, mas esse comando deverá ser executado no banco de dados master. Para obter mais informações, consulte CRIAR BANCO DE DADOS (Transact-SQL).

Para criar um logon e um usuário associado que possa criar bancos de dados ou outros logons, execute as seguintes etapas:

  1. Conecte-se ao banco de dados master usando as credenciais do logon da entidade de segurança no nível do servidor (criado pelo processo de provisionamento) ou as credenciais de um membro existente da função de bancos de dados loginmanager.

  2. Crie um logon usando o comando CREATE LOGIN. Para obter mais informações, consulte CRIAR LOGON (Transact-SQL).

  3. Crie um novo usuário para esse logon no banco de dados master usando o comando CREATE USER. Para obter mais informações, consulte CRIAR USUÁRIO (Transact-SQL).

  4. Use o procedimento armazenado sp_addrolememeber para adicionar um novo usuário à função de banco de dados dbmanager, à função de banco de dados loginmanager ou a ambas.

O exemplo de código a seguir mostra como criar um logon, login1, e um usuário de banco de dados correspondente denominado login1User que possa criar bancos de dados ou outros logons enquanto conectado ao banco de dados master:

-- first, connect to the master database
CREATE LOGIN login1 WITH password='<ProvidePassword>';
CREATE USER login1User FROM LOGIN login1;
EXEC sp_addrolemember 'dbmanager', 'login1User';
EXEC sp_addrolemember 'loginmanager', 'login1User';
noteObservação
Você deve usar uma senha segura ao criar um logon. Para obter mais informações, consulte Senhas seguras.

Todos os logons devem ser criados no banco de dados master. Depois que um logon for criado, você poderá criar uma conta de usuário em outro banco de dados para esse logon. O Banco de dados SQL do Microsoft Azure também oferece suporte a funções de banco de dados da mesma forma que uma instância local do SQL Server oferece.

Para criar uma conta de usuário em outro banco de dados, supondo que você não tenha criado um logon ou um banco de dados, execute as seguintes etapas:

  1. Conecte-se ao banco de dados master (com um logon que tenha as funções loginmanager e dbmanager).

  2. Crie um novo logon usando o comando CREATE LOGIN. Para obter mais informações, consulte CRIAR LOGON (Transact-SQL). Não há suporte para a Autenticação do Windows.

  3. Crie um novo banco de dados usando o comando CREATE DATABASE. Para obter mais informações, consulte CRIAR BANCO DE DADOS (Transact-SQL).

  4. Estabeleça uma conexão com o novo banco de dados (com o logon que criou o banco de dados).

  5. Crie um novo usuário no novo banco de dados usando o comando CREATE USER. Para obter mais informações, consulte CRIAR USUÁRIO (Transact-SQL).

O código de exemplo a seguir mostra como criar um logon denominado login1 e um banco de dados denominado database1:

-- first, connect to the master database
CREATE LOGIN login1 WITH password='<ProvidePassword>';
CREATE DATABASE database1;
noteObservação
Você deve usar uma senha segura ao criar um logon. Para obter mais informações, consulte Senhas seguras.

Este próximo exemplo mostra como criar um usuário de banco de dados denominado login1User no banco de dados database1 que corresponde ao logon login1:

-- Establish a new connection to the database1 database
CREATE USER login1User FROM LOGIN login1;

Este modelo de permissão no nível de banco de dados do Banco de dados SQL do Microsoft Azure é igual ao de uma instância local do SQL Server. Para obter informações, consulte os tópicos a seguir nas referências dos Manuais Online do SQL Server.

Controle de identidade e acesso (Mecanismo de Banco de Dados)

Tópicos de instruções sobre gerenciamento de logons, usuários e esquemas

Lição 2: Configurando permissões em objetos de banco de dados

noteObservação
As instruções Transact-SQL relacionadas à segurança no Banco de dados SQL do Microsoft Azure podem diferir ligeiramente nos parâmetros que estão disponíveis. Para obter mais informações, consulte Referência de Transact-SQL do Banco de dados SQL do Azure.

Para exibir logons e bancos de dados no servidor Banco de dados SQL do Azure, use as exibições sys.sql_logins e sys.databases do banco de dados master, respectivamente. O exemplo a seguir mostra como exibir uma lista de todos os logons e bancos de dados no servidor do Banco de dados SQL do Azure.

-- first, connect to the master database
SELECT * FROM sys.sql_logins;
SELECT * FROM sys.databases; 

Consulte também

A Microsoft está realizando uma pesquisa online para saber sua opinião sobre o site do MSDN. Se você optar por participar, a pesquisa online lhe será apresentada quando você sair do site do MSDN.

Deseja participar?
Mostrar:
© 2014 Microsoft