Se o banco de dados foi restaurado ou migrado, todos os logins terão que ser associados novamente. Isso é chamado de login órfão.
Se houver um login com o mesmo nome, você poderá usar esse script para corrigi-lo.
USE [db_name]
GO
exec sp_change_users_login "auto_fix", "username";
Apenas recriando o login depois que você restaurar o banco de dados, ele não será associado novamente ao usuário. Você precisa alterar o usuário para ser associado a um determinado login.
Você pode usar
ALTER USER [X]
WITH LOGIN = [Y];
Como você pode ter um usuário com o nome A associado ao login B.
Lembre-se: o login é por servidor, o usuário é por banco de dados.