quinta-feira, 31 de maio de 2012

Entendendo Tudo sobre RAID


RAID

RAID, sigla de redundant array of independent disks (Conjunto Redundante de Discos Independentes), e com pelo menos dois discos rígidos você pode montar um arranjo RAID de modo a aumentar capacidade/desempenho/confiabilidade que você pretende atingir.

RAID 0 (Striping)


É um RAID, onde o objetivo é unicamente melhorar o desempenho, sacrificando a confiabilidade.
Ao usar o RAID  0, todos os HD’s passam a ser acessados como se fossem um único drive. Ao serem gravados, os arquivos são fragmentados nos vários discos, permitindo que os fragmentos possam ser lidos e gravados simultaneamente, com todos os HD realizando parte do trabalho. Usando RAID 0 a performance fica em um patamar próximo da velocidade de todos os HDs somada. Ao usar 4 HDs com uma taxa de transferência e 50 MB/s (em leituras seqüenciais) em RAID 0, você teria uma taxa de transferência total de quase 200 MB/s em muitas situações.
Ao criar um RAID 0 com 4 HDs de 500 GB em RAID 0, você teria um espaço total de armazenamento de 2 TB, onde toda a capacidade é dedicada ao armazenamento de dados, sem redundância.
O problema é que todos os HD armazenam apenas fragmentos de cada arquivo e não arquivos completos. Por causa desta peculiaridade, caso qualquer um dos HD’s apresente defeito, você simplesmente perde todos os dados.
O RAID 0 é possivelmente o mais usado em desktops e também em alguns servidores de alto desempenho. Ele é a melhor opção caso você queira o melhor desempenho possível e tenha como manter um backup atualizado dos dados gravados.
Assim como em outros modos RAID, não é realmente obrigatório usar HDs idênticos, mas isso é fortemente aconselhável, pois tanto a capacidade quanto o desempenho ficam limitados à capacidade do HD mais lento.
Ao utilizar um HD de 500 GB e outro de 300 GB em RAID 0, o sistema ignora os últimos 200 GB do HD maior, de forma que você acaba ficando com um total de 600 GB disponíveis. Os acessos também precisam ser sincronizados, de forma que ao utilizar um HD com taxa de transferência máxima de 50 MB/s, em conjunto com 30 MB/s, você acaba tendo um máximo de 60 MB/s. Ou seja, utilizar dois HDs diferentes é possível, mas geralmente não é um bom negócio.

RAID 1 (Mirroring)


O RAID 1 (Mirroring) usando dois HDs,  o segundo armazenará uma imagem idêntica do primeiro. Na pratica, será como se você tivesse apenas um disco rígido instalado, mas caso o disco titular falhe por qualquer motivo, você terá uma cópia de segurança armazenada no segundo disco. Este é o modo ideal se você deseja aumentar a confiabilidade do sistema.
Também é possível utilizar RAID 1 com quatro ou mais discos (desde que seja utilizado sempre um número par). Neste caso, um dos discos de cada par é visto pelo sistema como um HD separado e o outro ficam ocultos, guardado a cópia atualizada do primeiro. Ao utilizar 4 HDs de 500 GB em RAID 1, por exemplo, o sistema enxergaria 2 HDs, de 500 GB cada um.
Usar RAID 1 não proporciona qualquer ganho de desempenho. Pelo contrário, ele acaba causando uma pequena perda em comparação com usar um único drive, já que todas as alterações precisam ser duplicadas e realizadas em ambos os drives.
Caso um dos HDs titulares falhe, o segundo entra em ação automaticamente, substituindo-o até que você possa substituir o drive.
Uma dica é que, ao fazer RAID 1 utilizando discos IDE, procure colocar um em cada uma das duas interfaces IDE da placa, isto melhorará o desempenho. Outro ponto é que caso os dois discos estejam na mesma interface, como master e slave, você precisa reiniciar o micro caso o primeiro falhe. Usando um em cada interface, a controladora fará a troca automaticamente, sem necessidade de reset. Da próxima vez que inicializar o micro você receberá um aviso pedindo para substituir o HD defeituoso.
Este problema não afeta as controladoras SATA, já que nelas cada HD é ligado a uma porta separada, sem a divisão de master/slave como nos HDs IDE.
Ao invés de usar dois HDs em RAID 1, seus dados estarão mais seguros se você colocar o segundo HD numa gaveta USB e usá-lo para manter backups de todos os arquivos e dados pessoais. Deixe o HD desconectado do PC e, de preferência, guarde-o num local separado ou carregue-o com você.

RAID  5 (Parity Across Disks)


O RAID 5 é um modo é muito utilizado em servidores com um grande número de HD’s. Ele utiliza um método bastante engenhoso para criar uma camada de redundância, sacrificando apenas uma fração do espaço total, ao invés de simplesmente usar metade dos HD’s para armazenar cópias completas, como no caso do RAID 1.
O RAID 5 usa um sistema de paridade para manter a integridade dos dados. Os arquivos são divididos em fragmentos de tamanho configurável e, para cada grupo de fragmentos, é gerado um fragmento adicional, contendo códigos de paridade.
Note que, ao invés de reservar um HD inteiro para a tarefa, os códigos de correção são espalhados entre os discos. Desta forma, é possível gravar dados simultaneamente em todos os HDs, melhorando o desempenho.
O RAID 5 pode ser implementado com a partir de 3 discos. Independentemente da quantidade de discos usados, sempre temos sacrificado o espaço equivalente a um deles. Ou seja, quanto maior é a quantidade de discos usados no array, menor é a proporção de espaço desperdiçado.
Em um sistema com 5 HDs de 500 GB, teríamos 2 TB de espaço disponível e 500 GB de espaço consumido pelos códigos de paridade. Usando 8 HDs teremos 3.5 TB para dados e os mesmos 500 GB para paridade, e assim por diante.
Graças à forma como os bits de paridade são dispostos, é possível recuperar os dados de qualquer um dos HDs que eventualmente falhe. Mais ainda, o sistema pode continuar funcionando normalmente, mesmo sem um dos HDs.
A idéia por trás desta aparente "mágica" é bastante simples. A paridade consiste em adicionar um bit adicional para cada grupo de bits. Ao usar 5 HDs, por exemplo, temos um bit extra para cada 4 bits de dados.
Caso dentro destes 4 bits exista um número par de bits 1, então o bit de paridade é 0. Caso exista um número ímpar de bits 1, então o bit de paridade é 1.
Veja que, graças ao bit de paridade, é possível saber apenas que, dentro do grupo de 4 bits existe um número par ou ímpar de bits 1. Isso é o suficiente para recuperar qualquer um dos 4 bits que seja perdido, desde que sejam respeitadas duas condições:
a) Que apenas um bit de cada grupo seja perdido
b) Que se saiba qual dos bits foi perdido
No RAID 5 cada um dos bits dentro de cada grupo fica guardado em um dos HDs. Quando um deles é perdido, a controladora sabe exatamente quais bits foram perdidos e têm condições de recuperá-los usando uma verificação muito simples. A controladora pode manter o sistema funcionando mesmo sem um dos HDs, realizando estes cálculos em tempo real para obter os dados que estavam armazenados nele. Quando o HD é finalmente substituído, a controladora reescreve todos os dados (usando o mesmo processo) e o sistema volta ao estado original.

RAID 6



O RAID 6 é um padrão relativamente novo, suportado por apenas algumas controladoras. Ele é semelhante ao RAID 5, porém usa o dobro de bits de paridade, garantindo a integridade dos dados caso até 2 dos HDs falhem ao mesmo tempo. Ao usar 7 HDs de 500 GB em RAID 6, por exemplo, teríamos 2.5 TB para dados mais 1 TB de códigos de paridade.
A percentagem de espaço sacrificado decai conforme são acrescentados mais discos, de forma que o uso do RAID 6 vai tornado-se progressivamente mais atrativo. No caso de um grande servidor, com 41 HDs, por exemplo, seria sacrificado o espaço equivalente a apenas dois discos, ou seja, menos de 5% do espaço total. Em troca, ganha-se proteção contra a possibilidade de um segundo HD falhar durante o processo de substituição e reconstrução dos dados do primeiro.
Tanto no caso do RAID 5, quanto no RAID 6, o servidor continua funcionando normalmente durante todo o processo de substituição do disco, embora a performance decaia, sobretudo logo depois da substituição do drive defeituoso, quando o sistema precisa regravar os dados, lendo as informações armazenados em todos os outros discos e fazendo os cálculos de paridade.

RAID 10


O RAID 10 (Mirror/Strip) é um modo que pode ser usado apenas caso você tenha a partir de 4 discos rígidos e o módulo total seja um número par (6, 8, etc.). Neste modo, metade dos HDs serão usados em modo striping (RAID 0), enquanto a segunda metade armazena uma cópia dos dados dos primeiros, assegurando a segurança.
Este modo é na verdade uma combinação do RAID 0 e RAID 1, daí o nome. O ponto fraco é que você sacrifica metade da capacidade total. Usando 4 HDs de 500 GB, por exemplo, você fica com apenas 1 TB de espaço disponível. No RAID 10 você obtém o dobro de desempenho que em um HD sozinho, mas sem abrir mão da segurança.


VBScript - Mapeando Impressora

Mapeando Impressora com VBScript


'Mapeando Impressora 



Set WshNetwork = WScript.CreateObject ("WScript.Network")
WshNetwork.AddWindowsPrinterConnection "\\computador\compartilhamento", "Nome_Impressora"
'Definindo como impressora padrão
WshNetwork.SetDefaultPrinter "\\computador\compartilhamento", "Nome_Impressora"

VBScript - Caixa de Mensagem retornando Nome de Usuário Logado



Caixa de Mensagem com Nome de Usuário Logado


O Script abaixo exibe uma caixa de mensagem retornando:


Exemplo:


Bom Dia,
Sr(a), NOME COMPLETO USUÁRIO LOGADO
Matricula: 201201




'Retornar Nome do Usuário Completo logado
Set objSysInfo = CreateObject("ADSystemInfo")
strUserDN = objSysInfo.UserName
Set objGroup = GetObject("LDAP://" & strUserDN)
PosInicio = InStr(strUserDN,"")
PosFim = InStr(strUserDN, ",")
Dim FULLNAME
FULLNAME = mid(StrUserDN,PosInicio+3,PosFim-4)


'Retornar nome de logon por exemplo nº de matricula
set ObjUser = WScript.createobject ("wscript.network")
MATRICULA = objUser.UserName




MsgBox ("Bom Dia,"& vbCrLf &"Sr(a) "&FULLNAME& vbCrLf &"Matricula: "&MATRICULA)

VBScript - Mapeando automaticamente pasta/diretório para um grupo de usuários

Mapeando automaticamente pasta/diretório para um grupo de usuários

O Script abaixo mapeia uma pasta compartilhada para um grupo de usuários do AD, utilizado quando desejamos mapear uma pasta compartilhada para um determinado departamento.


Observações: Para automatizar o processo, devemos ter um GRUPO (Group) dentro do AD com o mesmo nome de uma pasta dentro do servidor.


Por exemplo: 
Grupo TI no AD 
Pasta compartilhada: TI$ no Servidor.


VBScript:


Set objSysInfo = CreateObject("ADSystemInfo")
strUserDN = objSysInfo.UserName
Set objUser = GetObject("LDAP://" & strUserDN)
Dim PosInicio
Dim PosFim
Dim MyGrupo 
On Error Resume Next
arrGroups = objUser.GetEx("memberOf")
   If (Err.Number <> 0) Then
      On Error GoTo 0
      Wscript.Echo "USUÁRIO SEM GRUPO"
   Else
      On Error GoTo 0
         For Each strGroup In arrGroups
            Set objGroup = GetObject("LDAP://" & strGroup)
        PosInicio=InStr(strGroup,"")
     Posfim = InStr(strGroup,",") 
            MyGrupo = mid(strGroup,PosInicio+3,PosFim-4)      


                     Set objNetwork = WScript.CreateObject("WScript.Network")
                     Set WshNetwork = CreateObject("WScript.Network")
                     On Error Resume Next
    objNetwork.RemoveNetworkDrive "T:"
    objNetwork.MapNetworkDrive "T:", "\\ad\"&MyGrupo&"$"
msgbox ("Pasta "&MyGrupo&" mapeada com sucesso!")
Next
End If

VBScript - Chamando um outro Script



'Chamando um outro Script
Set ChamaScript = CreateObject ("WScript.Shell")
ChamaScript.Run "C:\VBS\msgbox.vbs"

VBScript - Alterar Hora


'Cria um Objeto da categoria Shell e atribui em AlteraHora.
Set AlteraHora = CreateObject("WScript.Shell")


'Atribui o comando que está entre aspas em StringHora.
StringHora = "net time \\192.168.0.1 /set /yes"


'Executa o objeto AlteraHora com parametro (StringHora).
Set objexec = AlteraHora.exec (StringHora)

VBScripts - Caixa de Mensagens


Caixa de Mensagens com VBScripts


Um ótimo recurso do VBScript é a utilização de caixas de mensagens, abaixo irei apresentar algumas formas para utilização deste recurso.


Exemplo 01:


'Caixa de Mensagem Simples
MsgBox ("Bom Dia Sr(a) Alan Nunes Cerqueira")


Exemplo 02:


'Caixa de Mensagem retornando uma String + Variável
Nome = "Alan Nunes Cerqueira"
MsgBox ("Bom Dia Sr(a) " + Nome)


Exemplo 03:


'Caixa de Mensagem com opção Sim / Não
strOpcao = msgbox ("SIM OU NAO?",vbYesNo)
'Se usuário selecionar opção SIM
if strOpcao = vbYes then
msgbox ("Mensagem igual a SIM")
'Se usuário selecionar opção NÃO
else
msgbox ("Mensagem igual a NAO")
end if

segunda-feira, 28 de maio de 2012

Instalação do IIS no Windows Server 2003 R2


Instalação do IIS no Windows Server 2003 R2

O Servidor Web da Microsoft é o Internet Information Services, que com o Windows Server 2003 chega a sua versão 6.0, mais conhecido como IIS 6.0. As configurações que você aprenderá se aplicam a qualquer uma das edições do Windows Server 2003.

Instalação do IIS 6.0

Para que o servidor Windows Server possa se tornar um Servidor Web, temos que instalar o IIS – Internet Information Services. O IIS é o serviço responsável pela distribuição dos serviços http (para disponibilização de páginas) e ftp (para cópias de arquivos).

1. Acesse o servidor com uma conta com permissões Administrativas.
2. Clique em: Start, Control Panel e selecione: Add or Remove Programs.
3. No lado esquerdo da janela, dê um clique na opção Add/Remove Windows Components.
4. Na tela Windows Components localize e marque a opção: Application Server e clique em: <Details>



5. Na tela de Application Server, selecione a opção: Internet Information Services (IIS) e clique em: <Details>



6. Na tela de Internet Information marque todas as opções;
7. A opção Serviço Worls Wide Web Service também é dividida em vários componentes.
Clique nesta opção para marca-la. Em seguida clique no botão detalhes e certifique-se de que todas as opções estejam marcadas.




8. Clique em Ok, Ok e Ok novamente para aplicar as configurações selecionadas.
9. No meio da instalação, será solicitado o CD-1 de instalação do Windows Server 2003 R2 para instalar/configurar o serviço de IIS, recomendo deixar uma copia do CD-1 e CD-2 numa unidade de disco no servidor para facilitar instalações futuras, no nosso exemplo, foi copiado o conteúdo para a pasta: C:\CD-W2K3 a pasta AMD64 (Versão de 64 Bits), clique em: <OK>
10. Na tela de Completing the Windows Components Wizard, clique em: <Finish>
11. Feche o painel de controle.
12. Pronto o IIS 6.0 está instalado, pelo menos as funcionalidades básicas.


Testando o IIS 6.0

1. Abra o Internet Explorer.
2. Digite o seguinte endereço: http://localhost ou http://ip_do_servidor  ou http://nome_do_servidor 
3. Deverá aparecer a pagina padrão do IIS.
4. Está é a página inicial do IIS logo após a instalação. A pasta padrão do IIS esta localizada em c:\Inerpub\wwwroot.

sexta-feira, 25 de maio de 2012

Gerenciando GPO's através do Group Policy Management


Gerenciando GPO's através do Group Policy Management

Group Policy Management é um sistema que manipula as GPO's que foram criadas no domínio, o que é uma GPO ?

GPO ou Group Policy Objects é uma forma bastante útil de esquematizar planos de segurança (regras), liberando ou restringindo acesso a recursos em estações de trabalho Windows XP/Seven participantes de um domínio com Active Directory.

Você consegue visualizar todas as regras em:
Group Policy Management>Forest: "Seu Domínio">Domains>"Seu Domínio">Group Policy Objects


Clicando na OU podemos encontrar as regras que nela são utilizadas.
Verificando os acessos à recursos que foram configurados na GPO:
Duplo clique em cima da regra desejada e entra na guia Settings


Em Details podemos ativar ou desativar a GPO.

Usando a GPO em mais de uma OU:
Botão direito em cima da GPO, "Copy", botão direito em cima da OU "Paste".
Podendo também renomear a mesma.

Criando GPO (Regras de domínio)


Criando GPO 
(Regras de domínio)

No Active Directory Users and Computers clique com o botão direito do mouse em cima da OU selecione Properties na guia Group Policy clique emNew como na imagem abaixo:


Coloque um nome para GPO. 
Vamos configurar a regra, clique em Edit...

Group Policy Object Editor (Editor de políticas de grupo)

Computer Configuration:
Todas configurações feitas dentro desta opção, serão ativadas apenas para computadores que estão dentro da OU.

User Configuration:
Todas configurações feitas dentro desta opção, serão ativadas apenas para os usuários que estão dentro da OU.

Exemplos de configuração:

Proibindo usuários instalarem programas nos computadores entre em:
Computer Configuration>Administrative Templates>Windows Components>Windows Installer>Prohibit User Installs.
Ative e clique em OK.
Todos usuários que entrarem nos computadores desta OU não conseguiram instalar programas. 

Atualizando diretivas :Start>Run e digite: gpupdate /force


Comando gpupdate /force força o sistema a atualizar todas suas diretivas, políticas de segurança e etc.

Definindo quotas em diretórios no windows server 2003


Definindo quotas para pastas no windows server 2003

Acesse:

Start>All Programs>Administrative Tools>File Server Resource Manager

Localize e clique em Quota Management > Quotas;

Criando uma nova Quota:

1. Localize e clique sobre a opção Create Quota ou no centro da tela clique com o botão direito do mouse e escolha a opção Create Quota...

2. Clique no botão Browse e a pasta/unidade de disco que deseja definir a quota.

3. Logo abaixo em Quota properties, selecione o tamanho pré-definido da quota ou personalize selecionando Define custom quota properties > Custom Properties, no campo de texto Space Limit defina o tamanho da quota desejado, clique em OK e Create

4. Se for necessário utilizar está quota em outra pasta/diretório salve-a (opcional).

Escolha o que você quer ver dos seus amigos no Facebook


Não quer mais receber certas atualizações de seus amigos? Aprenda neste tutorial como não ver, por exemplo, os comentários que um amigo faz nas postagens de alguém ou as pontuações do seu colega em jogos. Se você não quer mais receber em seu feed de notíciasessas e outras atualizações, sigas os passos abaixo.
Passo 1. Entre no Facebook e digite o nome de seu amigo para acessar a página dele;

Passo 2. Clique em “Amigos” e depois em “Configurações”; 


Passo 3. Observe que as seguintes opções estão marcadas: eventos cotidianos, atualizações de status, fotos, jogos, músicas, vídeos, comentários, opções de curtir e outras atividades. Basta clicar em quais itens você deseja não receber mais de seu amigo.
Pronto! Você não verá as atualizações do seu colega na timeline. Repita esta operação com quem você quiser.

 


quinta-feira, 24 de maio de 2012

Power Shell Script para listar arquivos/diretórios e salvar em um arquivo.txt


Power Shell Script para listar arquivos/diretórios e salvar em um arquivo.txt


rem Pega a data e hora atual do computador e adiciona na variável $data.
$data = Get-Date -Format "ddMMyyyyhhmm"


rem Adiciona o texto "U_" + $data + ".txt" na variável $nome; 
rem ex: "U_240520120232"
$Nome = "U_" + $data + ".txt"


rem Lista na tela arquivos/diretórios que estão dentro do caminho "C:\teste\"
Get-ChildItem -Force C:\teste\ -Recurse


rem Salva as informações retornadas em um arquivo com o nome "$Nome"
Get-ChildItem -Force C:\teste\ -Recurse >> ("C:\teste\"+$Nome)  




Comandos utilizados no Script acima:

Get-ChildItem: Comando para listar os arquivos/diretórios, funciona igual o comando "dir" antigo MSDOS e "ls" utilizado nas Plataformas Unix e GNU/Linux.


-Recurse: Para listarmos também o conteúdo dentro das pastas e subpastas.


>> ("Caminho") Copia as informações retornadas em um arquivo para o caminho especificado. 
Ex. ipconfig >> ("C:\IpConfig.txt") - Retorna em um arquivo txt informações de configuração de rede do computador.


$data: Cria uma variável. 

quarta-feira, 23 de maio de 2012

Bloqueando acesso Root via SSH CentOS


Bloqueando acesso Root via SSH


Por que bloquear acesso root via ssh ?

Muitos ataques via SSH são feitos pelo usuário root utilizando a famosa força bruta (Brute Force) e é extremamente recomendável desabilitar este acesso.
Quer saber mais sobre Brute Force CLIQUE AQUI.

Para realizar o bloqueio edite o arquivo /etc/ssh/sshd_config.

1. Utilizando o comando "vim /etc/ssh/sshd_config", descomente a linha#PermitRootLogin yes (retirando o "#");
2. Buscar: Para acesso mais rapido a esta linha use o comando de busca "/palavra a ser buscada", exemplo: /Permit (enter);
3. Substitua yes por no;
4. Feche/salve o arquivo com o comando ":wq";
5. Reinicie o serviço do SSHD comando: "service SSHD restart";
Agora o usuário root não tem mais acesso via SSH.

Mas e agora como vou acessar via SSH com o usuário root?

Você irá logar com outro usuário e usar o comando "SU" para substítuir o usuário.
Exemplo: "SU root" ou "SU -" (loga com usuário Root), "SU suporte" (loga com usuário suporte).

BRUTE FORCE (Força Bruta)


BRUTE FORCE (Força Bruta)


As senhas foram criadas com o intuito de proteger algo que queiramos esconder, ou impedir o acesso não autorizado a um arquivo, pasta ou sistema. Já a criptografia foi criada para proteger essas senhas e também arquivos, pastas e sistemas, de forma que os mesmos se tornem ilegíveis, evitando então que uma pessoa não autorizada leia o conteúdo de um arquivo ou acesse um sistema.


Existem várias formas de quebrar uma senha e uma criptografia, praticamente todas consistem em tentativa e erro, ou seja, quando você tenta uma senha, da errado, tenta outra, da errado, tenta outra, da errado, e assim por diante, até que você digite a senha correta e tenha acesso. Para isso, podemos criar essas senhas de duas formas, através de um dicionário com várias senhas, ou através de força bruta, tentando combinar letras, números e símbolos, de a Z de 0a 9 de “ a +.


A famosa BRUTE FORCE (força bruta) remotamente, ou seja, um programinha simples como qualquer outro, mas que testa senha por senha em um site ou sistema.


O problema é que quanto mais difícil for a senha, mais difícil será quebra-la e como criar e tentar várias senhas da muito trabalho, existem programas automatizados que conseguem fazer um ataque do tipo wordlist (dicionário) e/ou força bruta, esses programas são simples em questão de interface, porém são muito potentes e dependendo do tipo de senha e tamanho, pode ser que eles consigam quebra-la em no máximo 1 hora.


Portanto para quem trabalha com Servidores ou tem informações valiosas nos computadores utilizar senhas FORTE usando Números, Letras Maiúsculas e Minusculas além de Caracteres especiais.

Bloquear postagens de JOGOS de amigos do Facebook

Bloquear postagens de JOGOS de amigos do Facebook


Todos já viram e odeiam as postagens que enchem seu mural de informações desnecessárias referente a JOGOS e SOLICITAÇÕES (fulano precisa de tijolos, fulano precisa de ferro, etc), abaixo segue um tutorial para que nunca mais tenha problemas com isto.


1. Clique no amigo JOGADOR;
2. Na linha do tempo do mesmo, coloque o mouse em cima de AMIGOS e aguarde aparecer um painel;
3. Clique em configurações do feed de notícias;
4. Desmarque a opção JOGOS.






Pronto seus problemas terminaram...

segunda-feira, 21 de maio de 2012

Alterar complexidade de senha no Windows Server 2003

Alterar complexidade de senha no Windows Server 2003

Acessar:
Menu Iniciar>Todos os programas>Ferramentas Administrativas>Domain Security Policy

Domain Security Policy:
Account Policies>Password Policy

Enforce Password History = Aplicar histórico de senhas (Define a quantidade de senhas que o dominio irá memorizar).
Maximum password age = Tempo de vida máximo da senha (Define o período que a senha irá expirar).
Minimum password age = Tempo de vida mínimo da senha (Define o período que a senha não pode ser alterada).
Minimum password length = Comprimento mínimo da senha (Define a quantidade de caracteries que a senha deve ter).
Password must meet complexity requirements = A senha deve satisfazer a requisitos de complexidade:

Se essa diretiva estiver habilitada, as senhas deverão atender aos seguintes requisitos mínimos:
Não conter o nome da conta ou mais de dois caracteres consecutivos de partes do nome completo do usuário
Ter pelo menos seis caracteres
Conter caracteres de três destas quatro categorias:
Maiúsculos (A-Z)
Minúsculos (a-z)
Dígitos de base 10 (0 a 9)
Não alfabéticos (por exemplo, !, $, #, %)
Os requisitos de complexidade são impostos quando as senhas são alteradas ou criadas.

Store passwords using reversible encryption = Esta diretiva oferece suporte aos aplicativos que usam protocolos que exigem conhecimento da senha do usuário para fins de autenticação.

sexta-feira, 18 de maio de 2012

Cookies e Sessões


Cookies e Sessões
 
 
Cookies
 
Cookie é um arquivo texto que podemos armazenar no computador do usuário, para ser recuperado posteriormente pelo servidor. Um cookie é formado por um par nome/valor, ou seja, possui um nome pelo qual ele é referenciado e um valor associado a esse nome. Podem ser utilizados em qualquer aplicação que necessite compartilhar dados entre diferentes páginas, ou até entre diferentes acessos (em dias e horários diferentes).
O PHP nos oferece a função setcookie, que envia cookies para o computador do usuários. Essa função é usada tanto para definir um cookie, como também para excluí-lo. Sintaxe:
bool setcookie(String nome [, string valor [, int validade ]])
nome: indica o nome do cookie que está sendo enviado, e é o único parâmetro obrigatório para a função.
valor: é o valor do cookie.
validade: define o tempo de validade do cookie. Deve ser expresso no formato-padrão de tempo do Unix (números de segundos após 1 de janeiro de 1970).
setcookie("nome", "osvaldo");
setcookie("nome, "João", time() + 172800);
Esse cookie é válido por 2 dias, pois utilizamos a função time para obter o tempo atual, e somamos 172.800 segundos, que equivalem a 48 horas.
 
O array superglobal $_COOKIE
 
É importante lembrar que o cookie não pode ser utilizado pela página que o criou, apenas a partir da próxima solicitação.
Para resgatar o valor do cookie usamos:
$_COOKIE["nome"];
 
Sessões
Uma sessão é um período de tempo durante o qual uma pessoa navega pelas páginas de um site. Quando um usuário entra no site, podemos abrir uma sessão e nela registrar diversas variáveis, que ficarão gravadas em arquivos no servidor e poderão ser acessadas em qualquer páginas do site, enquanto essa sessão estiver aberta.
No PHP uma sessão pode ser criada de forma manual ou automática. A criação manual pode ser feita de forma explicita (função session_start) ou de forma implícita (ao registrar uma variável com a função session_register).
Session_start();
Ao registrar uma variável em uma sessão, estamos tornando-a disponível para todas as páginas que serão acessadas até o término dessa sessão.
session_start();
$_SESSION["nome"] = "Alan Nunes Cerqueira";
Para escrever na tela:
echo $_SESSION["nome"];
Servem para armazenar informações que poderão ser utilizadas enquanto o usuário estiver navegando entre as páginas do site.
Algumas utilidades para cookies e sessões:
- Autenticação de Usuários: criação de um sistema envolvendo login, autenticação e logout, o que garante o acesso do conteúdo somente aos usuários autorizados.
- Carrinho de Compras: utilizado nos sites de comércio eletrônico para armazenar todos os produtos já selecionados pelo cliente para compra, enquanto ele navega pelo site da loja.
- Personalização de páginas: por exemplo: uma livraria virtual poderia exibir o anúncio de um livro de culinária, caso o usuário tivesse feito uma pesquisa pela palavra "culinária" na última vez que acessou o site.