Pular para o conteúdo principal

Postagem em destaque

BlackTDN :: Autenticação 2FA para Usuário Root no WSL

--- # naldodj-wsl-2FA ## Autenticação 2FA para Usuário Root no WSL ### Introdução O Windows Subsystem for Linux (WSL) é uma ferramenta poderosa que permite aos desenvolvedores executar um ambiente Linux diretamente no Windows. No entanto, a segurança é uma preocupação importante, especialmente quando se trata de acessar o usuário root. Neste post, vamos mostrar como configurar a autenticação de dois fatores (2FA) para o usuário root ao acessar o WSL, garantindo uma camada adicional de segurança. ### Objetivo Vamos configurar um script de login que valida a senha do root e usa autenticação 2FA baseada em Time-based One-Time Password (TOTP), usando ferramentas comuns como `openssl`, `oathtool`, e `perl`. ### Passo 1: Instalar as Ferramentas Necessárias Primeiro, precisamos garantir que temos todas as ferramentas necessárias instaladas. Isso inclui `openssl`, `oathtool`, e `perl`. ```bash sudo apt-get update sudo apt-get install openssl oathtool perl ``` Para os scripts em Lua.

Protheus :: Advpl :: Dicas do Robson :: Usando UniqueKey() para filtrar registros

Função: UniqueKey( <uFields> , <cAlias>, <lResetKeys>, <nMaxRec> )

Objetivo: Verificar se a chave passada é única de acordo com o campo ou campos passados nos parâmetros. Esta função ajuda a apresentar um único registro quando houver vários semelhantes, por exemplo: Fazer consulta SXB na tabela SC7, porém apresentando um registro por pedido de compra independente de quantos itens existam.

Parâmetros:

uFields – String contendo o campo ou Array  unidimensional com as strings dos campos que que serão considerados para pesquisa da chave única.

cAlias – Alias do arquivo para pesquisa.

lResetKeys – Reinicializa as chaves.

nMaxRec – Número máximo de elementos.

Essa mesma dica poderá, por extensão, servir ao fitro do MPSDU/APSDU como abaixo:

!Deleted().and.C7_EMISSAO>=FirstDate(Date()).and.C7_EMISSAO<=LastDate(Date()).and. UniqueKey({"C7_FILIAL","C7_NUM"})

Irá retornar todos os primeiros n registros da tabela SC7, não deletados, com a data de emissão dentro do mês corrente.

Dada a característica da Função UniqueKey() o intervalo de dados não poderá ser muito grande por dois motivos

  • Performance;
  • Tamanho máximo da “Pilha” de armazenamento;

Logo, para tabela com muitos registros, uma condição complementar deverá ser utilizada como filtro “primário” e excludente.

Exemplo:

image

Filtrando com:

!Deleted().and.C7_EMISSAO>=FirstDate(Date()).and.C7_EMISSAO<=LastDate(Date()).and. UniqueKey({"C7_FILIAL","C7_NUM"})

teremos:

image

image 

Uma outra dica, para melhorar a performance do filtro usando UniqueKey() é selecionar uma Chave de índice que corresponda ao filtro desejado. No nosso caso C7_FILIAL+C7_NUM…

E, como bem dito pelo Robson, além de podermos utilizar UniqueKey() para Filtrar informações via MPSDU/APSDU podemos utilizá-la para filtrar uma Consulta Padrão.
 
Observe:
 
Sem o Filtro
 
image
 
image
 
 
Aplicando o Filtro:
 
C7_EMISSAO>=FirstYDate(Date()).and.C7_EMISSAO<=LastYDate(Date()).and. UniqueKey({"C7_FILIAL","C7_NUM"})
 
 
image
 
image
 
Obteremos apenas os n Primeiros registros que atendam a condição.
 
p/ Robson Luiz (feat иαldσ dj)
 
[]s

Comentários

Postar um comentário

Postagens mais visitadas