Solução:
O login do servidor deve estar associado a um usuário do banco de dados para executar ações no banco de dados. Ambos são principais no SQL Server. Em uma cadeia de conexão, o valor para o ID do usuário é o nome do login do servidor. Você pode tentar verificar os mapeamentos de usuários para este login de servidor para seu banco de dados atual:
USE main_table -- Server database
SELECT
sp.name AS LoginName,
sp.type_desc AS LoginType,
dp.name AS DatabaseUserName,
r.name AS DatabaseRoleName
FROM sys.server_principals sp
LEFT JOIN sys.database_principals dp ON dp.sid = sp.sid
LEFT JOIN sys.database_role_members drm ON drm.member_principal_id = dp.principal_id
LEFT JOIN sys.database_principals r ON r.principal_id = drm.role_principal_id
WHERE sp.name = 'my_user_id' -- Server Login
Notas:
Com sua string de conexão atual, acho que você tenta se conectar ao SQL Server com autenticação SQL. Em seguida, seu login do SQL é mapeado para um usuário do banco de dados (o login do servidor não é igual ao usuário do banco de dados). Se você deseja se conectar usando a autenticação do Windows, na maioria dos casos é necessário remover a ID do usuário e a senha da string de conexão e incluir IntegratedSecurity = true.