Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Paulo Afonso Cordeiro

Passar usuario Logado na conexão

Recommended Posts

Pessoal me ajudem nessa aqui.

 

 

Preciso de passar o usuário de rede na conexão ADO com SQLServer, para registrar na tabela de sistema do SQLSERVER o comando, tempo de execução, e o usuário de rede.

Na hora de verificar os comando executados o usuário que está aparecendo na tabeça é o usuário de banco e não o da rede.

 

Aqui está minha string de conexão.

'Password=' + sPassword + ';Persist Security Info=True;User ID=' + sUser + ';Initial Catalog=' + sDBase + ';Data Source=' + sServidor +';Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;' +';Workstation ID='+GetStation + ';Application Name='+ sAplicacao;

 

T++

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se você usar o modo de conexão integrada com o SQLServer não funcionaria ?

Exemplo:

 

Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=' + sDBase + ';Data Source=' + sServidor

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpe, esqueci de detalhar sim..o SQLSERVER não aceita autenticação pelo usuário do windows, o usuario de banco é único para qualquer estação.Conversei com o suporte de banco de dados e ele me explicou que a conexão padrão é TCP/IP e a alternativa é o named pipes. Com o named pipes funciona corretamente. Mas isso eu teria que mudar em mais de 2000 estações.Queria saber se existe algum parâmetro na connetionString tipo ntuser, network user.Valeu.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom... Poderia configurar no BD para acessar por grupo de usuário....

 

Mas o que não entendi é o seguinte, você diz que têm sempre um usuário que acessa o BD, certo ? No caso criou um user e todas as estações acessam por ele, então, no caso pq precisa de ntuser ou network user ?

 

No meu caso eu passo no ConnectionString o seguinte:

 

Provider=SQLOLEDB.1;Persist Security Info=False;User ID=USUARIO_ACESSO;Initial Catalog=BANCO_DE_DADOS;Data Source=SERVIDOR
No caso todos acessam a base BANCO_DE_DADOS no SERVIDOR usando o usuário USUARIO_ACESSO...

Compartilhar este post


Link para o post
Compartilhar em outros sites

marcio.theisO user é de um grupo que só ele participa. Não iria fazer muita diferença.Todos os sistemas utilizam um único usuário de BD.Porque aqui , na intranet, existe uma página que a auditoria de comandos, sistemas, tempo de respostas, enfim, todos os dados para o pessoal de suporte e segurança de rede usam para rastrear e informar os analistas responsávéis o andamento dos sistemas.Notei que uma aplicação que sou responsável não está gravando o usuário de rede, somente o usuário de BD. Outros sistemas estão gravando corretamente.AH!!! Uso Delphi 6 com ADO.VAleuuuuu

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.