Pages

Subscribe:

Ads 468x60px

segunda-feira, 16 de maio de 2011

Mover pastas compartilhadas sem perder o compartilhamento

Olá,
Depois que precisei mover a localização das pastas de arquivos de nosso Storage descobri que não existe software e nem mesmo pelo windows é possível mover pastas com compartilhamentos ativos, no mesmo servidor, sem perder tais compartilhamentos. Para migrar compartilhamentos entre servidores pode ser usado um software chamado Henya, mas para mover no mesmo servidor deve-se seguir os passos abaixo:

  1. Abra o registro do windows (regedit) e vá até a chave HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\LanmanServer\Shares
  2. Exporte a chave acima em um arquivo *.reg e salve em algum local seguro. Esse chave contém todos os compartilhamentos da máquina e sua devidas permissões.
  3. Vá no Windows Explorer e MOVA (não copie, pois a cópia não leva as permissões NTFS apenas o ato de mover sim) as pastas para o novo local (seja em outra unidade ou na mesma). O sistema irá dizer que você perderá todos os compartilhamentos, clique em sim e aguarde a conclusão da tarefa.
  4. Depois que as pastas estiverem no novo local, execute o arquivo *.reg salvo no passo 2 para escrever novamente o registro.
  5. Vá novamente na chave  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\LanmanServer\Shares e clique em cada chave que representa os compartilhamentos que você moveu editando a linha PATH. Coloque lá o novo caminho para chegar na pasta.
  6. Reinicie o sistema.
Após o recarregamento do registro do windows todos os compartilhamentos voltarão a funcionar novamente com todos as permissões NTFS e de compartilhamento anteriores.
O Google não mostra nenhuma resposta com essa solução então... guardem bem essa dica.

quarta-feira, 6 de abril de 2011

Event ID referente ao LOGON no Event Viewer

Nos Logs de Segurança do Windows vemos muitos eventos de Logon e Logoff. A dúvida que sempre fica é: Qual destes eventos de Logon se refere a um logon local? remoto? de sistema? etc...
Como fazemos para descobrir quem fez um logon remoto em um servidor ou estação num determinado dia ou hora?
A resposta é simples, se usarmos as informações abaixo:
Identificações de evento 528 e 540 significam um logon bem-sucedido, o evento ID 538 um logoff e todos os outros eventos nesta categoria identificam razões diferentes para uma falha de logon. Sabendo disso, filtre seu Log de Eventos procurando pelos IDs 528 e 540.
Na descrição do evento, busque pelo TIPO DE LOGON. Ele identificará qual a origem do logon, veja abaixo:
Logon Tipo 2 - Interactivo
Esse tipo de logon se dá quando o usuário faz logon usando teclado e tela locais com uma conta de domínio ou uma conta local.
Logon Tipo 3 - Rede
Ocorre quando se acessa a estação ou servidor de algum lugar da rede como por exemplo o acesso a pastas compartilhadas ou impressoras.
Logon Tipo 4 - Lote
Quando o Windows executa uma tarefa agendada, o serviço de tarefas agendadas primeiro cria uma nova sessão de logon para a tarefa para que ele possa ser executado sob a autoridade da conta do usuário especificado quando a tarefa foi criada. Quando isso ocorre tentativa de logon, o Windows registra o tipo de logon 4. Ocorre também com softwares desenvolvidos que precisam se logar no sistema por alguma razão (provavelmnete para startar alguma ação no sistema).
Logon Tipo 5 - Serviço
Semelhante a Tarefas Agendadas, cada serviço é configurado para executar com uma conta de usuário especificada. Quando um serviço é iniciado, o Windows cria primeiro uma sessão de logon para a conta do usuário especificado o que resulta em um evento de Logon / Logoff com o tipo de logon 5.
Logon Tipo 7 - Unlock
Esse tipo de logon é registrado quando o usuário desbloqueia uma estação bloqueada ou com screen saver que requer senha.
Tipo de logon 8 - NetworkCleartext
Este tipo de logon indica um logon na rede como o tipo de logon 3, mas onde a senha foi enviada pela rede em texto claro. Um exmplo prático e o mais comum desse tipo de logon é quando digitamos usuário e senha em sistemas web que utilizam autenticação básica e sem criptografia (SSL).
Tipo de logon 9 - NewCredentials
Se você usar o comando runas para iniciar um programa em uma conta de usuário diferente e especificar a opção / netonly, o Windows grava um evento de logon / logoff com o tipo de logon 9. Quando você inicia um programa com RunAs usando / netonly, o programa é executado no computador local com o usuário que estiver conectado no momento, mas como para qualquer conexão para outros computadores na rede, o Windows liga-o aos computadores usando a conta especificada no comando runas. Sem / netonly o Windows executa o programa no computador local e na rede como o usuário especificado e registra o evento de início de sessão com o tipo de logon 2.
Tipo de logon 10 - RemoteInteractive
Quando você acessar um computador através de Terminal Services, Windows Remote Desktop ou Remote Assistance registra a tentativa de logon com o tipo de logon 10, que torna mais fácil distinguir a verdadeira fonte dos logons de uma sessão do desktop remoto. Note no entanto que, antes de XP, Windows 2000 não utilizam o mesmo tipo de logon 10 e inícios de sessão de serviços de terminal são relatados como tipo de logon 2.
Tipo de logon 11 - CachedInteractive
O Windows suporta um recurso chamado cache Logons que facilitam a usuários móveis. Quando você não está conectado à rede da sua organização e tentar fazer logon no seu computador portátil com uma conta de domínio e não há nenhum controlador de domínio disponível para o portátil verificar a sua identidade. Para resolver esse problema, o Windows armazena um hash das credenciais dos últimos 10 domain logons interativos. Mais tarde, quando nenhum controlador de domínio está disponível, o Windows usa esses hashes para verificar sua identidade quando você tenta fazer logon com uma conta de domínio.
---------------------------------------------------------------------------------------------------------------------------------------

Por enquanto é só...
Rutenio Dantas

Report Viewer 2010 em servidor remoto (sem instalação)

Após fazer o upload de seu site que estava rodando normalmente na sua estação de desenvolvimento, se depara com o seguinte erro nas suas páginas de relatórios:

Could not load file or assembly 'Microsoft.ReportViewer.ProcessingObjectModel, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.

A solução para esse problema é copiar as DLLs do Report Viewer para a pasta Bin da sua solução, mas a pasta padrão C:\Program Files\Microsoft Visual Studio 10.0\ReportViewer não contém todas as DLLs necessárias. A dll Microsoft.ReportViewer.ProcessingObjectModel.dll não está lá e é dificil de encontrá-la. Para copiar essa DLL siga o procedimento abaixo:

  1. Abra o prompt de comando com permissões de administrador.
  2. Vá até a pasta C:\Windows\assembly\GAC_MSIL\Microsoft.ReportViewer.ProcessingObjectModel\ e escolha a versão que deseja (no nosso caso a 10), abra a pasta e lá estará a bendita DLL.
  3. Copie o arquivo para a pasta Bin usando o COPY e depois faça o upload para seu site remoto.

Isso resolverá o problema acima com essa dll. Outras DLLs também podem ser encontradas nessa mesma pasta. Claro que se você tiver acesso ao servidor, é muito mas facil instalar o pacote do Report Viewer 2010.

quinta-feira, 31 de março de 2011

Carregar DropDownList com tag SELECTED em um item específico

Para carregar o DropDownList setando um item como selecionado a partir de um valor específico, utilize o código abaixo no evento "onload" da página, por exemplo.

DropDownList.SelectedIndex = DropDownList.Items.IndexOf(DropDownList.Items.FindByValue(VALOR))
para buscar por um valor de um item ou:

DropDownList.SelectedIndex = DropDownList.Items.IndexOf(DropDownList.Items.FindByText(TEXTO))

para buscar por um texto de um item.

Como exibir um elemento de uma query Linq pelo seu índice

Para conseguirmos exibir um elemento localizado em um determinado índice (index) de uma coleção usando Linq é preciso adicionar o .ToList ao final da query, senão obteremos o erro:
The query operator 'ElementAtOrDefault' is not supported

Por exemplo:

Dim fotos = (From f In db.FOTOs  Select f).ToList
Dim temp as Integer = fotos(4).ID
Pegando assim o valor do ID do quarto elemento da coleção.

quarta-feira, 16 de março de 2011

Desativar a Tecla NUM LOCK na inicialização do Windows

Para que a tecla NUM LOCK já esteja desabilitada durante a inicialização da máquina, é preciso alterar uma entrada do registro do windows.

A Entrada: "HKEY_USERS\.Default\Control Panel\Keyboard\InitialKeyboardIndicators"
pode assumir 8 posições (segue abaixo), mas setando-a como 0 todas as 3 teclas especiais ( NUM LOCK, SCROLL LOCK, CAPS LOCK) ficam desabilitadas.

0 As três teclas desativadas
1 CAPS LOCK ativada
2 NUM LOCK ativada
3 CAPS LOCK e NUM LOCK ativadas
4 SCROLL LOCK ativada
5 CAPS LOCK e SCROLL LOCK ativadas
6 NUM LOCK e SCROLL LOCK ativadas
7 As três teclas ativadas

Essa dica é muito útil nos notebooks que algumas vezes inicializam com NUMLOCK ativo ocasionando erro de senha no login, uma vez que a maioria dos usuários de notebook não utiliza a função do teclado numérico e por isso não se dá conta de sua existência.


Se quiser criar um script em vb para adicionar essa função nas políticas de grupo (GPO) para ser executado na inicialização das máquinas, use o codigo abaixo:

WScript.regwrite "HKEY_USERS\.Default\Control Panel\Keyboard\InitialKeyboardIndicators", "0","REG_SZ"