Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Adiciona um novo usuário ao banco de dados atual.
Importante
Esse recurso será removido em uma versão futura do Microsoft SQL Server. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam. Use CREATE USER.
Aplica-se a: SQL Server (SQL Server 2008 à versão atual). |
Convenções da sintaxe Transact-SQL
Sintaxe
sp_adduser [ @loginame = ] 'login'
[ , [ @name_in_db = ] 'user' ]
[ , [ @grpname = ] 'role' ]
Argumentos
[ @loginame = ] 'login'
É o nome do logon do SQL Server ou do logon do Windows. login é sysname, sem valor padrão. login deve ser um logon existente do SQL Server ou do Windows.[ @name_in_db = ] 'user'
É o nome do novo usuário de banco de dados. user é sysname, com um padrão NULL. Se user não for especificado, o nome do novo usuário de banco de dados assumirá como padrão o nome de login. A especificação de user fornece ao novo usuário um nome no banco de dados diferente do nome de logon em nível de servidor.[ @grpname = ] 'role'
É a função de banco de dados da qual o novo usuário se torna um membro. role é sysname, com um padrão NULL. role deve ser uma função de banco de dados válida no banco de dados atual.
Valores de código de retorno
0 (êxito) ou 1 (falha)
Comentários
sp_adduser também criará um esquema que tem o nome do usuário.
Depois que um usuário for adicionado, use as instruções GRANT, DENY e REVOKE para definir as permissões que controlam as atividades executadas pelo usuário.
Use sys.server_principals para exibir uma lista de nomes de logon válidos.
Use sp_helprole para exibir uma lista dos nomes de função válidos. Quando você especifica uma função, o usuário automaticamente ganha as permissões definidas para ela. Se uma função não for especificada, o usuário ganhará as permissões concedidas à função pública padrão. Para adicionar um usuário a uma função, deve ser fornecido um valor para user name. (username pode ser igual a login_id.)
O usuário convidado já existe em todo banco de dados. A adição do usuário convidado habilitará esse usuário, se ele foi desabilitado anteriormente. Por padrão, o usuário convidado é desabilitado em novos bancos de dados.
sp_adduser não pode ser executado em uma transação definida pelo usuário.
Não é possível adicionar um usuário convidado porque um usuário convidado já existe em todo banco de dados. Para habilitar o usuário convidado, conceda ao convidado a permissão CONNECT conforme mostrado:
GRANT CONNECT TO guest;
GO
Permissões
Requer propriedade do banco de dados.
Exemplos
A.Adicionando um usuário de banco de dados
O exemplo a seguir adicionar o usuário de banco de dados Vidur à função existente Recruiting no banco de dados atual, usando o logon existente Vidur do SQL Server.
EXEC sp_adduser 'Vidur', 'Vidur', 'Recruiting';
B.Adicionando um usuário de banco de dados com a mesma ID de logon
O exemplo a seguir adiciona o usuário Arvind ao banco de dados atual para o logon Arvind do SQL Server. Esse usuário pertence à função pública padrão.
EXEC sp_adduser 'Arvind';
C.Adicionando um usuário de banco de dados com um nome diferente de seu logon em nível de servidor
O exemplo a seguir adiciona o logon BjornR do SQL Server ao banco de dados atual que possui um nome de usuário Bjorn, e adiciona o usuário de banco de dados Bjorn à função de banco de dados Production.
EXEC sp_adduser 'BjornR', 'Bjorn', 'Production';
Consulte também
Referência
Procedimentos armazenados de segurança (Transact-SQL)
sys.server_principals (Transact-SQL)