Estou usando sp_help_revlogin há muito tempo para transferir entidades de servidor de uma instância SQL para outra.
Existe um equivalente sp_help_revlogin que pode gerar scripts de criação para usuários de banco de dados parcialmente independentes? Entendo que, se eu fizer backup/restaurar o usuário independente, mas preciso implantar usuários de um banco de dados independente para outro banco de dados independente diferente.
Embora David esteja certo, o usuário independente virá automaticamente junto com o banco de dados independente se você fizer backup/restaurar para outro local (esse é o ponto), posso ver alguns casos de uso para isso, como criar o mesmo usuário independente em um conjunto de bancos de dados, com a mesma senha, sem precisar saber (ou alterar) a senha. Ou implantar o mesmo usuário que foi criado nos ambientes dev/QA/test/staging para a cópia de produção do banco de dados, sem mover o banco de dados.
Se você souber (ou puder alterar) a senha, é claro, criar scripts de todos os usuários contidos em um banco de dados é bastante simples, basta pegar essa saída e substituir
whatever
pela senha desejada para cada usuário contido:Se o requisito é que você não saiba a senha, porém, é um pouco mais complexo. Baseado principalmente neste post de Argenis Fernandez (que atualmente não é muito ágil):
bob
.Execute o seguinte:
Conecte-se ao banco de dados independente de destino (não precisa mais do DAC), crie o usuário a partir do logon no nível do servidor, migre esse usuário para um usuário independente e elimine o logon:
Acabei de testar isso na minha máquina e consegui fazer login nos dois bancos de dados explicitamente usando o mesmo nome de usuário e senha, mas os usuários poderiam fazer o mesmo, mesmo que eu não soubesse sua senha durante todo esse processo.