Inquiridor
Autenticação Via Windows + PHP

Pergunta
-
Pessoal Boa tarde,
Preciso desenvolver um código PHP que pegue o usuário logado na máquina "domínio\usuário" e com essa informação consiga autenticar em um SQL Server habilitado para autenticação via Windows. Sou iniciante em PHP e SQL Server, isso é possível?
Obrigado.
Todas as Respostas
-
Oziel,
Sinceramente falando, acredito que você deveria postar a sua dúvida nos fóruns de desenvolvimento ou algum forum do PHP, esta dúvida esta mais para desenvolvimento do que para o SQL Server.
Pedro Antonio Galvão Junior [MVP | MCC | MSTC | MIE | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados Relacional e Data Warehouse | Professor Universitário | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]
-
-
-
Já tinha dado uma olhada nesse link, mas se entendi bem, esse modo, pegaria a autenticação do servidor Web em que o apache está rodando e não o usuário final que está executando a página. O que nesse caso, para o meu problema, não resolveria.
Obrigado pelo retorno. -
OzielBr,
Sim, ele vai justamente fazer isso, no caso de alguma maneira o SQL Server consegue identificar de que forma o mesmo esta sendo acessado, por quem e como.
Mas acredito que isso não iria te ajudar.
O que você poderia pensar em fazer, não sei se é possível, mas quando o link da sua aplicação for aberto, será que o uso de algum arquivo de texto, xml ou json armazenado na máquina a qual a aplicação esta sendo utilizada não poderia te ajudar?
Pedro Antonio Galvão Junior [MVP | MCC | MSTC | MIE | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados Relacional e Data Warehouse | Professor Universitário | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]
-
Junior,
Já havia pensado nisso guardando em um LOG, inclusive cheguei a fazer notificação via e-mail também. Mas o pessoal não aceitou, pois no monitoramento do SQL Server, eles precisam que mostre o usuário que está consultando em tempo real.
Obrigado pelo retorno. -
OzielBr,
Ok, veja se os exemplos abaixo poderá lhe ajudar de alguma forma:
-- Identificando o número de conexões por aplicação -- Select hostname, program_Name, count(*) Quantidade From sysprocesses A Where spid > 50 Group By hostname, program_Name Order by Quantidade Desc
Neste outro exemplo você vai obter a relação de conexões, IPs e nomes de programas utilizados:
SELECT ec.client_net_address, es.[program_name], es.[host_name], es.login_name, COUNT(ec.session_id) AS [connection count] FROM sys.dm_exec_sessions AS es INNER JOIN sys.dm_exec_connections AS ec ON es.session_id = ec.session_id GROUP BY ec.client_net_address, es.[program_name], es.[host_name], es.login_name ORDER BY ec.client_net_address, es.[program_name];
Já este você consegui identificar todas as informações relacionadas aos usuários e filtrar por nome de aplicação:
SELECT sess.session_id, sess.login_time, sess.original_login_name, sess.login_name, sess.host_name, sess.program_name FROM sys.dm_exec_sessions sess Inner JOIN sys.dm_exec_connections conn ON sess.session_id = conn.session_id WHERE program_name = 'Microsoft SQL Server Management Studio'
Espero que estes exemplos possam te ajudar, destaco que ambos não são de minha autoria, alguns extraídos de partes da documentação official da Microsoft em relãção a DMV sys.dm_exec_sessions e sys.dm_exec_connections.
Pedro Antonio Galvão Junior [MVP | MCC | MSTC | MIE | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados Relacional e Data Warehouse | Professor Universitário | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]
- Sugerido como Resposta Junior Galvão - MVPMVP terça-feira, 8 de outubro de 2019 13:02
-
Obrigado pelo retorno Júnior, mas infelizmente para o meu caso não me ajudou.
Depois de muita pesquisa, acredito que não seja possível realizar o que eu preciso, pelo menos via APACHE.
Vou realizar um teste em um ambiente com IIS. Vi que ele tem alguns diferenciais que não tem no APACHE.
Obrigado mais uma vez. -
OzielBr,
Ok, ficamos no aguardo de um retorno.
Pedro Antonio Galvão Junior [MVP | MCC | MSTC | MIE | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados Relacional e Data Warehouse | Professor Universitário | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]
-
Deleted
- Sugerido como Resposta Junior Galvão - MVPMVP terça-feira, 8 de outubro de 2019 13:02