none
Recuperar nome do Usuário Logado

    Question

  • Pessoas.

    Estou tentando formatar um log de serviço para salvar algumas informações de quem entra numa parte critica do sistema.

    Entre as informações, quero salvao o nome do usuario que está logado.

    Fiz o procedimento para carregar essa informação a partir do registro, localizei aonde está a chave, mas o sistema não consegue recuperar essa chave de jeito algum.

    RegistryKey usu = Registry.;

    usu = usu.OpenSubKey("Software\\Microsoft\\Windows\\CurrentVersion\\Explorer");

    string usuario = usu.GetValue("Logon User Name").ToString();

    Tentei criar um Objeto chamado val e carreguei assim:

    val = usu.GetValueNames();

    Debugando descobri que ele traz duas chaves que constam lá, mas a que eu quero o infeliz não recupera.

    Alguém sabe o possivel motivo do problema?

    Alguém sabe como resolver ou então, um outro modo de conseguir o nome do usuário que está logado?

    Friday, July 21, 2006 7:31 PM

Answers

  • É, esse caso resolve, mas no meu sistema não vai ser possivel aplicar pois ocorre de haver acesso externo.

    De toda forma, agradeço.

    Monday, July 24, 2006 1:56 PM

All replies

  • Olá Rhodes, como vai?

     

    tente com :

    val = Environment.UserName;

     

    []'s

    Friday, July 21, 2006 7:34 PM
  • Retorna sempre o usuário ASPNET, mesmo quando o acesso vem de outra máquina.
    Friday, July 21, 2006 8:02 PM
  • Você deseja pegar o nome do usuário da maquina do cliente que esta acessando o Site?

    Atraves do Asp.Net acho que você não conseguirá fazer isso...

    Você consegue pegar o nome do usuario se for em uma rede e voce estiver trabalhando com Windows Authentication

    Ou ainda se voce conseguir, de alguma forma capturar o nome do usuario via Javascript.

     

    []'s

    Friday, July 21, 2006 8:07 PM
  • Conseguir, consegue. Só que:

    1. Você precisa mudar o modo de autenticação da sua aplicação para Windows;
    2. Você deve ativar o modo de personificação (impersonation) no web.config; e
    3. Você deve desligar o acesso anônimo na sua aplicação (no IIS), deixando apenas autenticação integrada do Windows.
    Exemplo de web.config:

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
    <system.web>
        <identity impersonate="true"/>
        <authentication mode="Windows" />
    </system.web>
    </configuration>

    Friday, July 21, 2006 10:44 PM
  • Vale lembra que esta técnica funciona só precisa ficar atento às permissões do usuário

    []'s
    Shinji
    Microsoft Student Ambassador
    http://thespoke.net/blogs/shinji
    Monday, July 24, 2006 1:49 PM
  • É, esse caso resolve, mas no meu sistema não vai ser possivel aplicar pois ocorre de haver acesso externo.

    De toda forma, agradeço.

    Monday, July 24, 2006 1:56 PM