 TechNet Magazine January 2007
TechNet Magazine January 2007
JANUARY 2007
SharePoint

Este mês a TechNet Magazine dedica uma edição ao SharePoint e a tudo o que há de novo na versão mais recente. Apresentamos aqui o SharePoint Server 2007 e o guiaremos pelos novos recursos que tornam a criação de um site colaborativo melhor e mais fácil do que nunca. Um artigo de visão geral aborda a pesquisa empresarial ampla e o gerenciamento de documentos e muito mais. Também apresentamos a você artigos sobre segurança no SharePoint, tarefas de administração em linha de comando e criação de um wiki para sua organização com o SharePoint. E, como sempre, temos nosso resumo de colunas populares, incluindo Raymond Chen em Saindo do inferno da DLLL e A equipe de scripts na classificação em VBScript usando o método DataList.Sort do .NET Framework.

RECURSOS
SharePoint Visão geral do Microsoft Office SharePoint Server 2007

A nova versão do SharePoint está ajustada para atender a todas as suas necessidades de gerenciamento de colaboração e de informações em uma única plataforma integrada. Aqui há uma apresentação dos novos recursos e ferramentas do MOSS que mudarão a forma como sua empresa funciona.

Thomas Rizzo 7 novos recursos que aprimoram a segurança no SharePoint

Com o SharePoint acessando cada vez mais dados empresariais e se tornando parte integral do fluxo de trabalho comercial, a segurança se torna muito mais crítica. Descubra como esses sete novos recursos do MOSS podem aumentar rapidamente a segurança em sua organização.

Adam Robert Buenz Encontre tudo com o SharePoint Enterprise Search

Sua empresa perde tempo e dinheiro enquanto os funcionários tentam rastrear informações. A pesquisa empresarial pode ajudar. O MOSS oferece uma ferramenta de pesquisa empresarial que encontra informações de forma rápida, mesmo que elas estejam em um site da intranet, em um aplicativo de linha de negócios ou, até mesmo, com um único funcionário.

Matt Hester Administração de linha de comando potente para SharePoint

Não se sobrecarregue com uma GUI. Existe uma maneira muito mais potente e rápida de gerenciar o SharePoint, que lhe permite realizar tarefas administrativas a partir de um prompt de comando e, até mesmo, criar o script de procedimentos comuns.

Todd Klindt Wiki enquanto você trabalha

Os wikis oferecem uma maneira nova e mais flexível de colaboração, promovendo uma abordagem não estruturada para reflexão e troca de idéias. O MOSS 2007 facilita extraordinariamente a implementação de wikis em sua organização. Eis o que você precisa saber para iniciar a criação e utilização de wikis em seu local de trabalho.

Mauro Cardarelli
COLUNAS
Do editor

Joshua Trupin Toolbox

Novos produtos para os profissionais de TI

Greg Steen Destaque de utilitário

Internet Explorer Administration Kit

Lance Whitney SQL P+R

Arquivamento de dados, Servidores vinculados, Medição de banda larga e muito mais

Editado por Nancy Michell The Cable Guy

Auto-ajuste da janela de recepção TCP

Joseph Davies Windows PowerShell

Construções do Windows PowerShell

Don Jones 		Ei, Equipe de Scripts!

Cuidado com o que diz

A Equipe de Scripts da Microsoft Perguntas e respostas do Exchange

Temos todas as respostas (porque inventamos as perguntas)

KC Lemson e Paul Bowden Security Watch

Sistema de proteção de serviços no Windows Vista

Wole Moses Os arquivos do desktop

Kit de Instalação Automatizada do Windows

Wes Miller Anotações de campo

Suporte técnico para parentes

James Snell Confidencialidade do Windows

Saindo do inferno da DLL

Raymond Chen


 SharePoint: Vis&#227;o geral do Microsoft Office SharePoint Server 2007
SharePoint Thomas Rizzo

Visão geral do Microsoft Office SharePoint Server 2007
Visão geral:
  • Integração do SharePoint com a Web
  • Gerenciamento de conteúdo
  • Inteligência comercial

Dois fenômenos estão alterando a forma como as empresas funcionam no que a Microsoft chama de “novo mundo do trabalho”. Primeiro, as equipes que trabalham juntas freqüentemente trabalham em diferentes locais e
também em diferentes horários durante o dia. Em decorrência disso, o software de colaboração se tornou a ferramenta mais importante para distribuição de trabalho conectada globalmente. Segundo, o uso de informações digitais está crescendo de forma muito rápida, enquanto as regras de conformidade referentes aos dados corporativos se tornam mais complexas. As empresas estão lidando com a permissão de colaboração e compartilhamento, bem como com a garantia de segurança e privacidade das informações. Uma solução que se associa a todos esses requisitos – comunicação entre continentes e fusos horários, ferramentas de colaboração eficientes e manipulação segura de dados – é absolutamente essencial para tornar possível a maioria dos ativos de suas informações e pessoas.
A introdução do Microsoft® Office SharePoint® Server (MOSS) 2007 traz diversas tecnologias em uma única plataforma integrada e um conjunto de serviços empresariais. Essas tecnologias variam desde a colaboração até os portais, a pesquisa empresarial, o fluxo de trabalho e o processo empresarial. O MOSS representa a próxima geração de criação do SPS (SharePoint Portal Server) no WSS (Windows® SharePoint Services). Uma forma fácil para entender como o MOSS e o WSS trabalham juntos é consultar o gráfico de pizza da Figura 1. As áreas sombreadas em verde são fornecidas pelo WSS e, como o MOSS se baseia no WSS, o gráfico inteiro é fornecido pelo MOSS. O MOSS fornece, especificamente, o portal, a pesquisa, o gerenciamento de conteúdo empresarial, os formulários e os processos empresariais e as áreas da inteligência comercial.
Figura 1 Serviço baseado no MOSS e no WSS
Figura 1 Serviço baseado no MOSS e no WSS (Clique na imagem para diminuir a exibição)
Figura 1 Serviço baseado no MOSS e no WSS
Figura 1 Serviço baseado no MOSS e no WSS (Clique na imagem para aumentar a exibição)
O restante deste artigo o conduzirá pelos destaques de tecnologia do MOSS e na forma como você poderá usar esses recursos avançados para tornar seus usuários mais produtivos.

SharePoint atende ao Web 2.0
Web 2.0, Enterprise 2.0, aplicativos compostos, conteúdo orientado pela comunidade – independentemente de você querer chamá-los, as tecnologias da Internet, como AJAX, RSS, blogs e wikis fornecem aos usuários mais controle sobre o conteúdo, mais controle sobre sua colaboração e mais controle nas formas como os dados circulam. Além disso, eles querem a interatividade do Windows com a facilidade de implantação e o uso que a Web oferece. Mas ao descartar conceitos da Internet em uma configuração empresarial são apresentados novos problemas. Por exemplo, você verifica e confia na fonte do serviço? Ela é integrada corretamente à sua infra-estrutura existente?
O MOSS 2007 fornece vários recursos novos enquanto aprimora a plataforma de colaboração existente fornecendo recursos de criação para alertas e gerenciamento do documento, adicionando novos recursos como blogs (consulte a Figura 2), wikis e Web Part para publicação e recebimento de RSS feeds. Ao usar o Microsoft Office Outlook® 2007, é possível executar a sincronização bidirecional dos seus dados de colaboração, como calendário, tarefas e contatos entre o Outlook e o Microsoft SharePoint. Se você desejar alterar um contato ou mover um compromisso, poderá fazer a alteração tanto no Outlook quanto no SharePoint e elas serão exibidas em ambos.
Figura 2 O MOSS 2007 oferece suporte a blogs e wikis
Figura 2 O MOSS 2007 oferece suporte a blogs e wikis (Clique na imagem para diminuir a exibição)
Figura 2 O MOSS 2007 oferece suporte a blogs e wikis
Figura 2 O MOSS 2007 oferece suporte a blogs e wikis (Clique na imagem para aumentar a exibição)
O Outlook também oferece suporte às bibliotecas de documentos quando estiverem no modo offline. É possível fazer alterações nos documentos quando estiverem desconectados da rede e fazer a sincronização assim que ficar online.
Além disso, o MOSS tem a capacidade de fazer auditoria e impor as regras de conformidade no conteúdo orientado pela comunidade, portanto, o fornecimento desses recursos novos não exige que os clientes sacrifiquem a flexibilidade de gerenciamento ou a segurança.
Um grande avanço no MOSS 2007 é o aumento da personalização da experiência do portal. O MOSS apresenta o Meu Site remodelado que utiliza totalmente a funcionalidade de um site SharePoint. Os usuários podem criar listas, bibliotecas de documentos ou subsites em Meu Site e personalizar a exibição desses sites para exibições pessoais e de grupo de trabalho. O Meu Site também fornece novos Web Parts para hierarquias de organização e rastreamento de colegas, incluindo alertas quando os metadados dos seus colegas são alterados, como número de telefone, título, local do escritório ou outras informações. A Figura 3 mostra um Meu Site personalizado no MOSS.
Figura 3 O Meu Site oferece suporte a mais recursos focados em SharePoint
Figura 3 O Meu Site oferece suporte a mais recursos focados em SharePoint (Clique na imagem para diminuir a exibição)
Figura 3 O Meu Site oferece suporte a mais recursos focados em SharePoint
Figura 3 O Meu Site oferece suporte a mais recursos focados em SharePoint (Clique na imagem para aumentar a exibição)

Pesquisa empresarial
Quando os discos rígidos são muito pequenos, lembrar onde determinadas coisas estão armazenadas geralmente não representa um problema. No entanto, com o aumento do armazenamento e com a capacidade ilimitada que os usuários têm de preenchê-lo, a pesquisa se tornou um componente essencial de qualquer arquitetura de informações. O MOSS fornece recursos aprimorados para pesquisa de repositórios empresariais, baseados na plataforma de pesquisa originalmente fornecida no SPS 2003. O MOSS 2007 continua a rastrear repositórios de compartilhamentos de arquivos, sites, Exchange Server e Lotus Notes, os quais são considerados repositórios de dados não estruturados.
O que o SPS não forneceu facilmente foi a capacidade de pesquisar repositórios estruturados, como aplicativos de linha de negócios ou bancos de dados relacionais. Além disso, os repositórios estruturados e não estruturados são complementados pelos metadados e os funcionários com experiência individual contribuem para a organização. O MOSS pesquisa repositórios estruturados por meio de uma nova tecnologia chamada BDC (catálogo de dados corporativos), além de pesquisar pessoas e especialistas por meio da nova Rede de Conhecimento.
O BDC fornece a capacidade de se conectar, rastrear e pesquisar sistemas que expõem seus dados tanto por provedores ADO.NET quanto por serviços da Web. É possível criar um arquivo de configuração XML que contenha as informações necessárias sobre o sistema que deseja se conectar. Ele pode incluir o nome do servidor ou da empresa, como enumerar e recuperar objetos do sistema, qualquer filtragem suportada pelo sistema back-end e como os dados back-end devem fazer o mapeamento para os dados do SharePoint. Você também pode usar os recursos de pesquisa empresarial do SharePoint para pesquisar dados BDC, assim como rastrear outros repositórios empresariais.
Por padrão, o SharePoint cria uma página de perfil para cada entidade corporativa do seu sistema back-end. Essas páginas de perfil podem ser personalizadas da mesma forma que as outras páginas do SharePoint. A Figura 4 mostra uma página de perfil personalizada que retorna dados corporativos e outras informações. Além disso, o SharePoint inclui alguns Web Parts de Dados Corporativos que permitem que você exiba dados BDC em suas páginas, além de filtrar dados opcionalmente nas páginas baseadas em metadados disponíveis. Como os dados corporativos são mapeados para o SharePoint, é possível acessar os dados das listas do SharePoint usando o novo tipo de coluna Dados Corporativos. Não há mais erros de entrada de dados e limpeza de dados devido aos dados da lista serem provenientes do sistema back-end autoritativo.
Figura 4 Recebendo Dados Corporativos em páginas do SharePoint a partir de serviços back-end
Figura 4 Recebendo Dados Corporativos em páginas do SharePoint a partir de serviços back-end (Clique na imagem para diminuir a exibição)
Figura 4 Recebendo Dados Corporativos em páginas do SharePoint a partir de serviços back-end
Figura 4 Recebendo Dados Corporativos em páginas do SharePoint a partir de serviços back-end (Clique na imagem para aumentar a exibição)
A Rede de Conhecimento fornece uma forma excelente para pesquisar pessoas e especialistas. As redes sociais da empresa são a forma como os negócios são feitos. Em muitos casos, os funcionários poderiam ser mais produtivos se encontrassem especialistas para ajudá-los com os problemas de negócio em que estão trabalhando. Entretanto, se o seu círculo direto de colegas não tiver a base de dados de conhecimento de que você precisa, provavelmente você irá parar de procurar o especialista. Com a Rede de Conhecimento, em vez de confiar na rede social física, o software ajuda a criar o mapa social da sua organização e permite que você pesquise a rede social. É possível classificar os resultados por distância social e filtrá-los por meio das propriedades de metadados, como título ou departamento.
Como ocorre com qualquer solução que lida com pessoas e suas informações de identificação pessoal, a Rede de Conhecimento fornece um rico modelo de segurança e privacidade para que os usuários tenham a opção de entrar na rede e controlar o que é exibido para quais partes da rede. A Rede de Conhecimento rastreia suas informações do servidor, como o Meu Site do SharePoint. Ela também tem um componente do cliente que se vincula ao Outlook e ao Sistema de Mensagens Instantâneas para rastrear seu email e contatos. No cliente, você pode controlar quando o rastreamento agendado ocorrerá e o que será publicado do rastreamento do cliente para o seu perfil do servidor. Uma das dificuldades dos sistemas especialistas é manter os dados de pessoas atualizados. Com a Rede de Conhecimento, o software mantém todas as atualizações das informações enquanto permite que os usuários controlem a visibilidade e a acessibilidade de tais dados.

Gerenciamento do conteúdo empresarial
Ao se mover apenas pelo gerenciamento de documentos, o MOSS 2007 fornece uma solução de gerenciamento de conteúdo empresarial robusta adicionando suporte ao gerenciamento de registros, conteúdo da Web e formulários eletrônicos. Os recursos de gerenciamento de registros do SharePoint incluem a capacidade de criar um repositório gerenciado que atende a suas necessidades de conformidade, como retenção de conteúdo, auditoria, uso de código de barras e etiquetagem. Devido a alta integração com o Exchange Server, o repositório de registros pode conter emails, registros oficiais e as informações criadas e armazenadas no SharePoint. Os recursos de gerenciamento de registros permitem que você faça descobertas legais por meio da pesquisa de registros e isenções legais para quebrar diretivas de retenção (dependendo dos procedimentos legais que exigem que você mantenha o conteúdo por mais tempo do que o especificado pelas diretivas de retenção).
No território de gerenciamento de conteúdo da Web, o MOSS 2007 tomou o lugar do Microsoft Content Management Server 2002. Devido a essa alteração, agora o SharePoint pode atender a distribuição das necessidades da Web da intranet, da extranet e dos sites da Internet. Com todos esses recursos no SharePoint, você só precisa oferecer suporte a uma tecnologia em toda a sua infra-estrutura. O SharePoint oferece suporte à implantação do conteúdo, portanto, deve haver servidores de teste e de implantação separados. Além disso, o SharePoint tornou a personalização do site mais fácil por intermédio do seu suporte às Páginas Mestras do ASP.NET 2.0. E, para cenários multilíngües, o SharePoint oferece suporte às variações de site para que um único site tenha diversas variações e seja redirecionado automaticamente, com base nas configurações de idioma do cliente navegador que estiver visualizando a página.
Para formulários eletrônicos, o SharePoint adiciona um novo recurso chamado InfoPath® Forms Services, que permite a conversão de formulários InfoPath em formulários eletrônicos. O processo envolve a criação de formulários InfoPath, a verificação de uma caixa no designer para que você seja avisado quando tentar usar recursos que não serão convertidos para a Web e como salvar o formulário em um local confiável dentro de uma lista do SharePoint. Seus usuários poderão usar apenas um navegador da Web para visualizar, editar e enviar os formulários.
Uma solicitação de recurso significativa dos usuários do SPS 2003 era o aprimoramento dos recursos de fluxo de trabalho. Como muitos clientes queriam incorporar fluxos de trabalho no conteúdo, eles faziam o armazenamento no SharePoint. O MOSS fez muito mais do que apenas aprimorar o fluxo de trabalho ao adicionar os novos recursos do Windows Workflow Foundation do .NET Framework 3.0. Ele permitiu a criação de fluxos de trabalho no Windows Workflow Foundation e a criação de tais funções dos fluxos de trabalho no SharePoint. Além de hospedar o Windows Workflow Foundation, o SharePoint também inclui vários fluxos de trabalho prontos, incluindo fluxos de trabalho de assinatura e aprovação de documento. A Figura 5 mostra como configurar um fluxo de trabalho pronto no MOSS.
Figura 5 Configuração dos fluxos de trabalho no MOSS
Figura 5 Configuração dos fluxos de trabalho no MOSS (Clique na imagem para diminuir a exibição)
Figura 5 Configuração dos fluxos de trabalho no MOSS
Figura 5 Configuração dos fluxos de trabalho no MOSS (Clique na imagem para aumentar a exibição)
O MOSS permite o monitoramento dos seus fluxos de trabalho para que você tenha o status da tarefa atual, bem como o histórico. Além disso, o SharePoint se integra com os clientes do Office de modo que os usuários finais possam disparar os fluxos de trabalho em seus aplicativos do Office. Além disso, poderão ver rapidamente quando tiverem tarefas de fluxo de trabalho atribuídas e poderão concluí-las sem sair de seus aplicativos do Office.
O MOSS também estende seu alcance aos portais de inteligência comercial. Esses portais normalmente contêm relatórios, gráficos e tabelas de dados que podem ser classificados e filtrados, destacando os gráficos que podem ajudar a representar visualmente o status dos dados. Com o MOSS, a criação de portais de inteligência comercial é simplesmente uma questão de criação de uma nova página usando o modelo do painel BI (inteligência comercial). O painel BI inclui, por padrão, uma lista KPI (indicadores de desempenho principais) e o Web Part do Excel® Web Access.
A lista KPI é um novo tipo de lista do MOSS que permite que você se conecte às fontes de informações, como Excel, SQL Server™ Analysis Services, listas SharePoint ou insira informações manualmente. Ele também permite que você rastreie os KPIs dessas fontes de dados. Com a lista KPI, é possível ver os valores atuais, os valores de destino, as tendências e o status que usa indicadores visuais.
O Excel Web Access faz parte do Excel Services no MOSS, uma versão do servidor do Excel que permite que você calcule e exiba suas informações do Excel por meio de um navegador da Web. Para usar o Excel Services, você pode publicar sua planilha diretamente do aplicativo de desktop do Excel para um local confiável do SharePoint. Os usuários podem visualizar a planilha ou os gráficos do Excel usando seus navegadores da Web. Se houver quaisquer parâmetros ou filtragem, os usuários poderão utilizar esses recursos para modificar o processamento do navegador da Web das informações do Excel.

Aprenda mais
Abordei apenas um subconjunto pequeno de todos os recursos novos do MOSS, mas há uma profusão de recursos online para continuar sua jornada de aprendizado. Minha recomendação é iniciar com o SharePoint Team Blog (em inglês) e o SharePoint Server TechCenter (em inglês).

Thomas Rizzo é diretor do grupo SharePoint da Microsoft. Antes disso, Tom trabalhou nos grupos SQL Server e Exchange Server. Ele também é autor de quatro livros. Você pode entrar em contato com ele pelo email thomriz@microsoft.com.
© 2007 Microsoft Corporation e CMP Media, LLC. Todos os direitos reservados. A reprodução parcial ou completa sem autorização é proibida..


 SharePoint: 7 novos recursos que aprimoram a seguran&#231;a no SharePoint
SharePoint Adam Robert Buenz

7 novos recursos que aprimoram a segurança no SharePoint
Visão geral:
  • Provedores de autenticação
  • Recursos de criptografia nativos
  • Mapeamento e zonas de acesso alternativo
  • Gerenciamento de Direitos de Informação

A implementação de medidas de segurança efetivas para o ambiente do MOSS (Microsoft Office SharePoint Server) 2007 pode reduzir significativamente a sobrecarga de gerenciamento, permitindo ao mesmo tempo que as equipes
colaborem entre si e compartilhem dados comerciais em um ambiente seguro. Os recursos de autenticação inovadores internos ao MOSS 2007 permitem que você implante padrões de segurança baseados na Web por intermédio de provedores de autenticação personalizados, autenticação com base em formulários em estilo Internet e SSO (logon único) da Web. Além disso, o MOSS oferece gerenciamento granular de direitos de bens da empresa, como arquivos de sistema do Microsoft® Office 2007, recursos de criptografia nativos e obrigações de autenticação de cliente reduzidas.
Aqui estão os sete recursos de segurança oferecidos pelo MOSS 2007 que você pode colocar em operação rapidamente.
1. Provedor de autenticação conectável Um provedor de autenticação é um componente que permite que você verifique credenciais de usuário. A configuração desse provedor de autenticação para seu ambiente do MOSS é uma decisão de segurança importante ao instalar a autenticação SharePoint® em estilo Internet. O MOSS continua a oferecer suporte aos métodos de autenticação com base no Windows®, disponíveis nas versões anteriores do SharePoint, inclusive autenticação integrada e básica (e acrescentando a autenticação Digest) para resolução de usuários em identidades tangíveis do Windows. No entanto, a resolução em uma identidade do Windows não é mais a única opção. Você pode até mesmo utilizar vários provedores de autenticação de modo que, por exemplo, os usuários internos façam logon por intermédio da autenticação do Windows e usuários externos façam o mesmo com um provedor separado, conectável.
O MOSS foi criado sobre ASP.NET 2.0, o que permite o uso de provedores de autenticação conectáveis. Isso permite que você use diretórios configuráveis para armazenar informações de usuários, desde que haja um provedor de associações ASP.NET 2.0 (e provedor de funções opcional) que corresponda ao armazenamento de dados dos membros. As credencias de provedores conectáveis podem ser em hash, criptografadas ou armazenadas em texto sem formatação, dependendo dos valores de nó armazenados no arquivo machine.config que corresponde ao provedor de associação. Há diversos provedores de associação disponíveis para serem usados com o MOSS, e alguns deles incluem um provedor de associação LDAP V3 (que é incluído no MOSS), além de um provedor de associação SQL Server™ e provedor de associação do Active Directory® disponível com o ASP.NET 2.0.
Os provedores de associação e de funções que podem ser implementados não se limitam aos provedores fornecidos no produto. Usando a arquitetura de associação ASP.NET 2.0, é possível criar provedores personalizados que usam armazenamentos de associação, como o bancos de dados do Microsoft Access™ ou Oracle, arquivos XML ou mesmo arquivos de texto simples. Um provedor de autenticação personalizado herda da interface ASP.NET MembershipProvider que, por sua vez, herda da classe ProviderBase (consulte a Figura 1).
Figura 1 .Hierarquia de classe de associação .NET
Figura 1 .Hierarquia de classe de associação .NET
Há algumas implicações no uso da autenticação ASP.NET 2.0 (comparada com a autenticação do Windows) com o MOSS, que devem ser levadas em conta. Para a maioria dos usuários, a mais significativa delas é a redução de interoperação de cliente do Microsoft Office, resultante do fato de que a comunicação de serviço da Web entre clientes Office e MOSS foi originalmente projetada para ser usada com identidades do Windows.
Além disso, certos serviços do MOSS, principalmente aqueles relacionados a rastreamento e indexação de conteúdo, precisam usar uma conta do Windows mesmo quando estão usando um provedor conectável. Fazer isso com um tipo de autenticação que não resolve em uma identidade do Windows requer a criação de uma zona do MOSS adicional, que usará a autenticação do Windows. (Falarei sobre zonas mais adiante, neste artigo.)
Se você possui uma infra-estrutura de PKI obrigatória com base em mecanismos de segurança, como cartões inteligentes, onde chaves ou certificados públicos são carregados por clientes, isso normalmente requer que uma identidade do Windows seja resolvida para que haja aceitação e autorização adequadas de certificado de cliente, dependendo de sua implementação. Por sua vez, isso pode requerer a criação de uma zona adicional do MOSS, ou outras configurações de autenticação.
2. Autenticação com base em formulários e logon único da Web Outro mecanismo de autenticação interessante disponível com o MOSS 2007 é a autenticação com base em formulários baseada em ASP.NET 2.0. Em versões anteriores do SharePoint, isso só era possível através de uma extensão ISAPI personalizada ou com a extensão CustomAuth ISAPI, do IIS 6.0 Toolkit. E mesmo com essas soluções, o SharePoint ainda precisa da conta para resolver novamente uma identidade de usuário do Windows, restringindo as implantações com base em perímetro.
A autenticação do MOSS com base em formulários utiliza autenticação conectável e provedores de funções para habilitar mecanismos de segurança em estilo Internet que não restringem os clientes a um prompt de logon NT antiquado. Em vez disso, você pode criar um processo de logon personalizado, direcionado para as necessidades de seus usuários. Para proteger ainda mais o processo de autenticação, os cookies de autenticação de formulários e os tíquetes de autenticação são criptografados e à prova de violações.
O provedor de identidades de formulário não precisa residir localmente e pode, na verdade, se conectar a um sistema de gerenciamento de identidades externo que, por sua vez, forneceria a validação das credenciais de usuário. Essa funcionalidade é conhecida como logon único da Web, e utiliza um módulo HTTP para autenticação externa. Em um cenário assim você pode federar identidades entre sua organização e parceiros comerciais, e eles podem usar seus próprios logons organizacionais para fazer autenticação em sua implementação do MOSS.
3. Criptografando as seqüências de conexão de aplicativos do MOSS Colocar informações importantes de seqüências de conexão em texto sem formatação em um arquivo web.config não é uma boa prática de segurança. As informações expostas poderiam permitir que um usuário criasse uma instância de objeto no servidor do banco de dados SQL e manipulasse dados importantes. No entanto, usando funcionalidades inerentes ao ASP.NET 2.0, você pode criptografar os dados usando uma das duas tecnologias disponíveis: criptografia RSA ou DPAPI (Windows Data Protection API). O DPAPI escreve com maiúsculas a funcionalidade criptográfica interna ao Windows para fazer a criptografia e descriptografia usando a chave do computador do servidor do MOSS. A criptografia RSA permite que você use algoritmos de chave pública, mas tem a desvantagem de exigir contêineres adequados para as chaves de criptografia.
Para o MOSS 2007 – e especificamente para o provedor de autenticação ASP.NET 2.0 SQL Server conectável – você deve criptografar o nó <connectionStrings> em texto cifrado, já que é nesse lugar que a violação de segurança mais significativa poderia ocorrer:
<connectionStrings>
<add name="MembershipConnectionString"
     connectionString="connectionString"/>
</connectionStrings>
O uso da criptografia DPAPI é relativamente simples, e ela é a mais fácil de ser implementada, já que usa criptografia de chave do computador nativa para um diretório virtual ou um diretório físico. Há outros modos de implementá-la por meio de programação, mas usar os comandos a seguir em um prompt de comando é o modo menos doloroso:
aspnet_regiis.exe -pe section -app MOSS_virtual_directory -prov provider

aspnet_regiis.exe -pef section MOSS_physical_directory -prov provider
Como você está preocupado principalmente com a implementação de criptografia no nó de seqüências de conexão, você pode criptografar apenas essa seção específica, especificando o parâmetro da seção:
aspnet_regiis.exe -pef "connectionStrings" "C:\Inetpub\wwwroot\WssVirtual " -prov "Provider"

aspnet_regiis.exe -pe "connectionStrings" -app "/MOSSAppinstance" -prov "Provider"
Após a implementação, os nós de informações sensíveis serão substituídos por valores cifrados XML bem formados:
<connectionStrings confiProtectionProvider=
"EncryptionProvider">
<EncryptedData>
<CipherData>
<CipherValue>XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
</CipherValue>
<CipherData>
</EncryptedData>
</connectionStrings>
Como a arquitetura MOSS geral, este modelo é conectável no sentido de que você pode criar seus próprios provedores de criptografia para gerenciar o texto cifrado para arquivos de configuração MOSS relevantes, como web.config ou machine.config e, além disso, você não está limitado à criptografia RSA ou DPAPI.
O uso de criptografia tem algumas conseqüências. Como você está usando a chave do computador local para a criptografia, você só poderá usar esse nó de configuração no servidor MOSS em que ele foi criado – do contrário, o processo de cifragem falhará. Se um invasor obtiver acesso ao servidor, ele poderia obter a chave do computador e descriptografar a seqüência de conexão. O processo de descriptografia também causará um pequeno problema de desempenho de aplicativo.
4. Mapeamento de acesso alternativo e Mapeamento de acesso alternativo de zonas (AAM) é fundamental, especialmente ao configurar mais de um local de entrada para seu ambiente do SharePoint. O AAM simplesmente permite que você especifique diferentes URLs através dos quais os usuários podem acessar um único site físico (consulte o diagrama da Figura 2). O AAM pode direcionar usuários ao mesmo caminho físico para seu site MOSS, mas com provedores de autenticação e diretivas de segurança de aplicativo da Web diferentes. O AAM também compensa o uso de domínios diferentes, proxies reversos e outros mecanismos de redirecionamento de URL. O URL que será usado pelo MOSS já está mapeado para você por padrão, mas isso pode ser estendido a URLs adicionais que um arquiteto do SharePoint cria explicitamente para lidar com diferentes métodos de entrada. O AAM é necessário para garantir que o mapeamento de URLs públicas e internas funcione corretamente.Um provedor de autenticação do SQL Server
Vamos percorrer a implementação do provedor de autenticação conectável do SQL Server ASP.NET 2.0. Esse provedor usa autenticação com base em formulários com seqüências de conexão web.config criptografadas, uma implementação muito típica para implantações de perímetro (extranet) do MOSS.
A primeira etapa da habilitação do provedor conectável SQL Server é verificar se o banco de dados para armazenamento de credenciais de usuários foi criada na instância adequada do SQL Server, para que o provedor do serviço tenha algo para usar como armazenamento de dados de associação. Para isso, execute o seguinte comando a partir da caixa de diálogo Executar ou de um prompt de comando:
%WINDIR%\Microsoft.NET\Framework\v2.0.50727\aspnet_regsql
Isso iniciará um assistente do SQL Server que permite que você configure o banco de dados para armazenar seus dados de membro.
Como é provável que você ainda não tenha instalado o provedor de associação para armazenamento em banco de dados, configure o SQL Server para serviços de aplicativos, para que ele crie um novo banco de dados. Se você já tiver um banco de dados, pode acrescentar as informações relevantes (se a consolidação do banco de dados for um objetivo organizacional).
A seqüência de conexão SQL irá se conectar com essa instancia SQL, então você deve configurar esse banco de dados para usar autenticação do SQL Server (consulte a Figura A). Nesse ponto, usarei um nome de usuário e senha em texto sem formatação já que, mais adiante no processo de instalação, mostrarei como usar funcionalidades de criptografia ASP.NET 2.0 nativa para ocultar essas informações de conexão privadas em texto cifrado, para evitar uma possível exploração.

Criando o formulário de logon
A autenticação baseada em formulários é usada freqüentemente para sites com face externa que residem e uma rede de perímetro e que estão expostos a todos os usuários da Internet. Com isso em mente, ao criar um conjunto de sites de extranet, convém escolher o modelo do MOSS de presença na Internet. Com esse modelo, você não precisará criar um formulário de logon manualmente. Se você estiver estendendo um site atual ou desejar implementar um formulário de logon personalizado, você pode fazer isso usando o Microsoft Visual Studio® 2005. É necessário relativamente pouco código.
Comece abrindo o diretório físico do conjunto de sites como um site por intermédio do Visual Studio, normalmente armazenado em um local como este:
C:\Inetpub\wwwroot\wss\VirtualDirectories\<GUID>
A primeira etapa é acrescentar uma página default.aspx, que é o documento padrão nas configurações do servidor virtual IIS. Use o comando Add Item do Solution Explorer e, em seguida, acrescente um controle de logon à recém-criada superfície Web Form por intermédio do Visual Studio Toolbox.
Figura a Configurando a autenticação do SQL Server
Figura a Configurando a autenticação do SQL Server (Clique na imagem para diminuir a exibição)
Figura a Configurando a autenticação do SQL Server
Figura a Configurando a autenticação do SQL Server (Clique na imagem para aumentar a exibição)

Figura b Escolhendo o provedor de autenticação na tela Gerenciamento de Aplicativos (Clique na imagem para diminuir a exibição)
Figura b Escolhendo o provedor de autenticação na tela Gerenciamento de Aplicativos
Figura b Escolhendo o provedor de autenticação na tela Gerenciamento de Aplicativos (Clique na imagem para aumentar a exibição)
Na mesma página, verifique se o provedor que está sendo usado para autenticação na seção do provedor de associação está especificado como AspNetSqlMembershipProvider e se o nome do Gerenciador de função é AspNetSqlRoleProvider. Especifique onde deseja que os usuários finais tenham acesso anônimo, navegando para /_layouts/setanon.aspx e selecionando o site inteiro ou a configuração de segurança mais adequada para atender às suas necessidades.
As alterações mais importantes serão feitas com modificações em web.config. Verifique se o elemento <authentication> está configurado para usar o elemento <forms>. Normalmente, isso é configurado automaticamente quando você muda de autenticação do Windows para autenticação por Formulários, e é uma parte importante do processo de logon, já que deve carregar os dados sobre o tíquete de autenticação dos usuários, que por sua vez deve verificar as credenciais do usuário na postagem da página por intermédio de métodos de autenticação ASP.NET 2.0. Mas web.config ainda não tem conhecimento da conexão SQL com seu armazenamento de usuários, então você precisa adicionar a entrada de seqüência de conexão à conexão com o banco de dados de associações:
<connectionStrings>
<remove name="LocalSqlServer" />
<add name="LocalSqlServer" connectionString="Server=SQLserver;
Database=aspnetdb;uid=username;
pwd=password;" providerName="System.Data.SqlClient" />
</connectionStrings>
Faça as mesmas modificações no arquivo web.config do site da Administração Central para promover conformidade de tipos de autenticação e garantir que o PeoplePickerWildCard seja resolvido no AspNetSqlMembershipProvider, para que os controles de consulta para adição de usuários saibam o caminho correto para a pesquisa.
Como você está fazendo alterações em arquivos XML back-end, o MOSS requer que você redefina o IIS. Depois que estiver conectado ao banco de dados do SQL Server, você pode navegar no site com facilidade – exceto se não tiver proprietários do conjunto de sites para administrar o conteúdo. Em WAT, vá para a guia Segurança e adicione um usuário, depois transforme esse usuário em um administrador de conjunto de sites em Gerenciamento de Site do SharePoint e acrescente os usuários adequados em Administradores de Conjunto de Sites. O nome deve estar correto por causa das modificações feitas anteriormente no nó peoplepicker, em web.config.
Por último, criptografe as seqüências de conexão com DPAPI, abrindo a caixa de diálogo Executar e executando:
aspnet_regiis.exe -pef "connectionStrings"
"C:\Inetpub\wwwroot\WssVirtual\<GUID> "
£prov "DataProtectionConfigurationProvider"
Quando a operação for concluída com êxito, você receberá uma confirmação na caixa de diálogo.

Figura 2 Zonas e mapeamento de URL
Figura 2 Zonas e mapeamento de URL (Clique na imagem para diminuir a exibição)
Figura 2 Zonas e mapeamento de URL
Figura 2 Zonas e mapeamento de URL (Clique na imagem para aumentar a exibição)
No MOSS, as zonas são um recurso novo que permite maior controle sobre o mapeamento de site oferecido pelo AAM. As zonas permitem que você mapeie provedores de autenticação diferentes para o mesmo caminho físico e conteúdo do MOSS, dependendo dos mapeamentos de URL do AAM através dos quais os usuários estão se conectando ao conteúdo. Ao especificar mapeamentos de URL do AAM, não é necessário, mas é recomendável que a zona seja ligada a um mecanismo de autenticação. Um mapeamento de URL do AAM para uma zona que não está definida nos provedores de autenticação usará a configuração de segurança da zona Padrão.
As zonas requerem algum planejamento, já que têm grande impacto na maneira como as pessoas são autenticadas e roteadas através de seu portal a partir de vários pontos de entrada de URL. Ao estender um novo aplicativo da Web, você pode especificar a zona que deseja usar na seção URL de balanceamento de carga das configurações (consulte a Figura 3). É recomendável colocar seu URL mais acessível publicamente (por exemplo, o URL que planeja expor na Internet) na zona Padrão, porque é esse URL que o SharePoint usará se não conseguir determinar exatamente em qual zona você está.
Figura 3 Configurando zonas do MOSS
Figura 3 Configurando zonas do MOSS (Clique na imagem para diminuir a exibição)
Figura 3 Configurando zonas do MOSS
Figura 3 Configurando zonas do MOSS (Clique na imagem para aumentar a exibição)
Dentro de cada zona, você pode ligar uma diretiva de segurança de aplicativo da Web global que defina as configurações de permissão para usuários da zona. Isso permite que você gerencie centralmente modificações de permissões em larga escala. Aplicativos da Web geralmente incluem diversos sites em vários conjuntos de sites, e o gerenciamento de permissões para esses sites pode se tornar problemático quando os aplicativos se tornam grandes e complexos. O MOSS 2007 permite diretivas de segurança globais que ligam as configurações de segurança, como acesso total, acesso total para leitura, acesso com recusa a gravação, ou recusa total de acesso para um usuário específico ou grupo dentro do aplicativo. Essas diretivas podem sobrepor as configurações de permissão granular fornecidas pelo MOSS e gerenciadas pela interface da Administração Central do SharePoint, então você deve planejar sua configuração com cuidado.
Juntando tudo isso, seu site de face externa pode ter dois URLs, conforme definido nas configurações do AAM: uma para acesso de usuários corporativos e a outra para usuários externos. Cada um tem um URL exclusivo – talvez contoso para usuários internos e extranet.contoso.com para parceiros externos confiáveis. Embora ambos os URLs levem para o mesmo conteúdo, cada uma acessa o site através de sua própria zona, seu próprio provedor de autenticação e sua própria diretiva de segurança de aplicativo. A configuração da zona de intranet no URL interno permite que usuários internos resolvam suas identidades do Windows autenticadas por domínio, enquanto parceiros externos fazem logon via autenticação de logon único da Web através da zona extranet, o que permite que eles usem as credenciais de usuário de sua própria organização. Alavancando o poder de ligar diretivas de segurança de aplicativo da Web a zonas, é possível oferecer acesso total para leitura a todos os usuários externos confiáveis, em vez de configurar o acesso para cada objeto.
5. Conteúdo direcionado para colaboração segura Se você bloquear os conjuntos de sites do SharePoint, os usuários vão manipular apenas informações que você os autorizar a acessar. Novos mecanismos de permissão flexíveis permitem que você tenha mais controle sobre os diversos tipos de informações comerciais armazenados em seu ambiente do MOSS.
O MOSS 2007 oferece a opção de ligar uma identidade a um objeto específico, seja um conjunto de sites, um site individual, uma biblioteca de documentos, uma subpasta, uma lista ou um documento individual ou item de lista. Isso reforça os controles de acesso granular e associação explícita ao item, negando acesso e ajustando a interface do usuário de modo que os usuários não saibam a quais itens eles não têm acesso. Essa funcionalidade do MOSS é conhecida como ILS (segurança de nível de item) ou SO (objetos seguros). As permissões de objeto do MOSS são hierárquicas por natureza, permitindo que elas abranjam desde objetos individuais como itens de lista até itens maiores, como uma lista ou uma biblioteca de documentos. A herança de permissões pode ser implementada, permitindo que objetos filho de níveis inferiores herdem permissões opcionalmente de objetos pai de níveis superiores. Há 33 permissões exclusivas padrão que podem ser concedidas a um usuário ou grupo do SharePoint, cada uma das quais pode ser ligada a um objeto. Você também pode criar novos níveis de permissão.
Por exemplo, em um site de gerenciamento de projeto, você pode permitir que apenas desenvolvedores e gerentes do projeto acessem materiais de desenvolvimento sensíveis, como especificações de design e técnicas de codificação internas aos documentos do Microsoft Word armazenados em uma biblioteca de documentos. As permissões da biblioteca herdarão por padrão das permissões de site, mas as permissões podem ser modificadas para permitir acesso apenas a desenvolvedores e gerentes do projeto, ou mesmo de tal modo que cada documento do Word possa ser visto e acessado apenas pelo gerente de projeto e pela equipe de desenvolvimento apropriados. Por outro lado, materiais não sensíveis podem ficar totalmente públicos, seja no nível de item, pasta, ou biblioteca de documentos.
As permissões podem até mesmo ser especificadas em itens de eventos, como prazos do projeto em uma Lista de eventos, de modo que você possa garantir que apenas determinados membros verão eventos específicos. Além disso, a funcionalidade ILS se estende a resultados de pesquisa retornados, que podem retornar apenas objetos que mapeiam novamente o contexto de segurança da pessoa que faz a pesquisa. Todos esses controles em vigor reduzirão a interface do usuário ao contexto exclusivo ao usuário.
A arquitetura de gerenciamento de permissões foi amplamente aprimorada no MOSS 2007. As permissões podem ser configuradas para grupos do SharePoint e grupos de domínio, bem como em nível individual. Vários grupos são distribuídos por padrão, especialmente o grupo Proprietários (que têm controle total), Visitantes (que têm direitos de contribuição) e Membros (que têm direitos de leitura). Indivíduos ou grupos de domínio podem ser atribuídos a esses grupos padrão ou a grupos personalizados que você pode criar e gerenciar no nível do conjunto de sites, que pode ter vários níveis de permissão exclusivos.
Ao criar grupos com base em funções, você pode criar grupos de "desenvolvedores" e "gerentes de projeto". Depois, é possível atribuir permissões granulares que, por exemplo, permitiriam que desenvolvedores carregassem documentação de codificação relevante, e conceder permissão de leitura e aprovação a gerentes de projeto, para que esses pudessem avaliar e endossar esses documentos. A associação a grupos permanece consistente em todo o conjunto de sites, de modo que os grupos criados podem ser reutilizados em diversos sites de projeto.
6. Integrando o logon único conectável Em um ambiente de computação típico, um usuário pode ter acesso a um número ilimitado de aplicativos de terceiros, cada um com seus próprios critérios de autenticação, o que leva a vários problemas de segurança e excesso de senhas. O serviço SSO do MOSS ajuda a aliviar esse problema, oferecendo um cache back-end criptografado das credenciais dos usuários para mapeamento para sistemas de aplicativos de linha de negócios conectados. Isso pode ajudar a recuperação de informações críticas de negócios para serem exibidas por intermédio de mecanismos do MOSS, como o BDC (catálogo de dados corporativos) ou o DVWP (DataView Web Parts) do SharePoint.
O provedor SSO do MOSS, como vários outros recursos arquitetônicos de aplicativos discutidos, é conectável; você pode especificar um provedor SSO exclusivo diferente do fornecido com o MOSS (SpsSsoProvider), embora apenas um provedor SSO por sistema de linha de negócios possa ser registrado por vez em cada ambiente.
7. IRM (gerenciamento de direitos de informação) A proteção de informações no nível do cliente, mesmo quando as informações comerciais estão offline, é uma preocupação considerável para empresas que tendem a lidar com dados de natureza sensível, especialmente aquelas que precisam lidar com legislações como a Lei do Senado da Califórnia N. 1386, a lei Sarbanes-Oxley (conformidade SOX), e a HIPAA americana (Lei de Responsabilidade e Portabilidade de Seguros de Saúde). O IRM (gerenciamento de direitos de informação) do servidor se integra aos repositórios do MOSS para fornecer uma solução comum integrada à estrutura do WRM (gerenciamento de direitos do Windows). O IRM oferece controle rígido sobre os dados comerciais, impondo restrições de acesso em nível de documento, independentemente de onde o documento está armazenado ou de quem tenta abri-lo. Uma implementação de IRM comum permite que você conceda apenas exibição ou impressão autorizadas, mas isso pode ser estendido a outros cenários, como requerer verificação de credenciais do usuário após um certo tempo; não permitir que usuários carreguem objetos que não se beneficiam do IRM; uma marca que anula a diretiva de restrição; e ligar à diretiva de permissões IRM de uma organização global.
A funcionalidade do IRM é fornecida por um protetor, e diversos deles são instalados com o MOSS 2007. Um protetor é um aplicativo que gerencia o processo de criptografia para um tipo de arquivo; normalmente, todos os arquivos que você armazena no MOSS já têm protetores criados para eles. (Os arquivos do sistema Microsoft Office têm suporte no modo nativo, bem como os formatos de arquivo OpenXML.) Como outros provedores do MOSS, no entanto, a arquitetura do aplicativo é conectável, de modo que você pode implementar protetores personalizados para outros tipos de arquivos.
A primeira etapa na implementação do IRM é verificar se você atende a todos os requisitos de seu ambiente MOSS. Você precisará do WRM Services Client instalado em cada servidor front-end da Web do MOSS, e o RMS (Microsoft Rights Management Services) deve ter conectividade com seus servidores front-end da Web do MOSS. Em seguida, você deve especificar o servidor RMS a ser assimilado pelo MOSS através da Administração Central do SharePoint, usando o padrão do Active Directory ou especificando o local.
O IRM funciona diretamente com estruturas de armazenamento de dados do SharePoint, como bibliotecas de documentos para manter permissões. Quando um usuário navega para uma biblioteca de documentos habilitada para IRM e tenta fazer o download de um documento, o MOSS liga as permissões configuradas da biblioteca de documentos ao documento (consulte a Figura 4). O resultado é um mapeamento 1:1 entre o MOSS e as permissões de documentos, transformando as funções do SharePoint relacionadas ao documento em níveis de permissão IRM no próprio documento.
Figura 4 Transição de permissões IRM de uma biblioteca de documentos
Figura 4 Transição de permissões IRM de uma biblioteca de documentos (Clique na imagem para diminuir a exibição)
Figura 4 Transição de permissões IRM de uma biblioteca de documentos
Figura 4 Transição de permissões IRM de uma biblioteca de documentos (Clique na imagem para aumentar a exibição)
O documento é criptografado localmente para proteção offline e mantido nesse estado até que seja carregado novamente na biblioteca de documentos. Quando o documento é carregado, ele é mantido na forma descriptografada, para que o gatherer do SharePoint possa indexar seu conteúdo a pesquisas de texto completo (embora nenhum usuário possa acessar o conteúdo no formato descriptografado).
O MOSS 2007 oferece vários novos recursos que podem ajudá-lo a implementar segurança efetiva em sua organização sem acrescentar muita sobrecarga de gerenciamento. Melhor ainda, os recursos são muito flexíveis, permitindo bastante personalização e garantindo que os usuários acessem apenas as informações de que necessitam. Consulte a barra lateral "Um provedor de autenticação do SQL Server" para obter um exemplo simples.

Adam Robert Buenz é arquiteto e desenvolvedor do SharePoint para a ARB Security Solutions LLC (sharepointsecurity.com). Ele se concentra em ambientes de colaboração focados em segurança. Contate-o pelo endereço adam@sharepointsecurity.com.


 SharePoint: Encontre tudo com o SharePoint Enterprise Search
SharePoint Matt Hester

Encontre tudo com o SharePoint Enterprise Search
Visão geral:
  • Arquitetura de uma solução de pesquisa empresarial
  • Indexação e consulta de dados corporativos
  • Dados LOB e base de dados de conhecimento das pessoas

Provavelmente, você passa muito tempo preocupado com tarefas, como tempo de atividade e disponibilidade do servidor, atualizações de software e segurança. Mas mesmo que sua infra-estrutura esteja funcionando perfeitamente – todos os aplicativos e
os arquivos disponíveis em toda a rede – talvez seus usuários ainda continuem perdendo produtividade. Claro, todos os dados de que eles precisam estão disponíveis, mas quanto tempo eles demoram para encontrá-los?
Muito se tem feito para ajudar as pessoas a lidarem com sobrecarga de informações. As ferramentas de pesquisa de desktop facilitaram a localização de informações escondidas no meio de todos os outros dados armazenados no sistema. (Consulte meu artigo de agosto de 2006 “Find Anything with Windows Desktop Search” (em inglês)). Mas e todos aqueles dados disponíveis em portais, armazenados em compartilhamentos e interceptados em aplicativos de negócios, que permitem que as informações valiosas sejam armazenadas na memória de vários funcionários? Essas informações são essenciais para seus usuários – eles precisam desses dados para realizarem seus trabalhos e precisam deles rapidamente para tomar decisões comerciais precisas e em tempo hábil. Mas pense no tempo que seus funcionários levam para encontrar e reunir dados espalhados pela rede. Agora, pense no impacto potencial que isso tem no resultado financeiro da sua empresa.
Você precisa reduzir o tempo que seus usuários demoram para rastrear informações armazenadas em toda a empresa. Como fazer isso? A resposta é muito simples, basta usar um mecanismo de pesquisa que fornece recursos de pesquisa empresarial.
A pesquisa empresarial pode encontrar informações armazenadas em qualquer lugar da sua organização. A ferramenta de pesquisa empresarial também pode ajudar na pesquisa de dados armazenados no desktop, em um site da intranet, bloqueados em um aplicativo LOB (linha de negócios) ou guardados na memória de uma pessoa. (Não se preocupe, você não precisará implantar um chip nos cérebros dos seus usuários.)
A solução de pesquisa empresarial combina pesquisa de desktop com recursos rápidos de pesquisa na intranet. Conseqüentemente, a ferramenta de pesquisa empresarial deve ser capaz de realizar pesquisas federadas, aquelas que acessam várias fontes de dados em uma única consulta. O usuário tem uma interface única onde ele digita a consulta. No entanto, nos bastidores, a consulta é enviada a vários mecanismos de pesquisa diferentes e os resultados são exibidos em uma exibição agregada.
Neste artigo, discutirei como o MOSS 2007 (Microsoft® Office SharePoint® Server 2007), as soluções do Microsoft SharePoint de última geração, fornece um mecanismo de pesquisa poderoso que ajudará a derrubar os silos de informações da sua organização. O MOSS 2007 oferece diversos aprimoramentos em relação às versões anteriores, componentes completamente novos em termos de desenvolvimento e alguns recursos novos em folha. Neste artigo, discutirei alguns dos principais componentes – como indexação, propagação, relevância e fontes de conteúdo – e como eles o ajudarão a fornecer melhores recursos de pesquisa empresarial a seus usuários.

Pesquisando a empresa com o SharePoint
A pesquisa da empresa estará disponível em quatro versões com algumas diferenças: Microsoft Office SharePoint Server 2007 for Search Standard Edition, Microsoft Office SharePoint Server 2007 for Search Enterprise Edition, Microsoft Office SharePoint Server 2007 Standard e Microsoft Office SharePoint Server 2007 Enterprise.
A principal diferença entre as duas edições de pesquisa e as edições completas do SharePoint Server é que as duas edições de pesquisa não incluem a funcionalidade Pesquisa de Pessoas (que também inclui a integração com a Rede de Conhecimento do MOSS 2007), Catálogo de Dados Corporativos ou o Centro de Pesquisa aprimorado com tabelas personalizadas. A Figura 1 detalha as principais diferenças.
Figure 1 Principais diferenças das quatro ofertas de pesquisa (Close Figure 1)

 | Microsoft Office SharePoint Server 2007 for Search Standard Edition | Microsoft Office SharePoint Server 2007 for Search Enterprise Edition | Microsoft Office SharePoint Server 2007 Standard Edition | Microsoft Office SharePoint Server 2007 Enterprise Edition
Índices | 40 tipos de arquivos prontos (extensível) | 40 tipos de arquivos prontos (extensível) | 40 tipos de arquivos prontos (extensível) | 40 tipos de arquivos prontos (extensível)
Oferece suporte (pronto) à pesquisa nos compartilhamentos de arquivos, sites, sites do SharePoint, pastas públicas do Exchange, arquivos de banco de dados do Notes |  |  |  |
Oferece suporte à pesquisa em repositórios de documentos de terceiros |  |  |  |
Oferece suporte à pesquisa de pessoas e especialistas |  |  |  |
Oferece suporte à pesquisa em fontes de dados estruturados |  |  |  |
Fornece controle de acesso ao conteúdo seguro |  |  |  |
Fornece interface do usuário do Centro de Pesquisa aprimorado |  |  |  |
Limite do documento | 400.000 | Ilimitado | Ilimitado | Ilimitado
A interface do usuário oferece vários recursos novos, incluindo “O que você quis dizer?”. Um suporte aos mecanismos de pesquisa da Internet, ele avisa quando você tiver escrito um termo de pesquisa comum de forma errada (consulte a Figura 2). A interface também inclui destaque de problema e suporte completo para as “melhores apostas”. Mas isso aborda apenas os novos recursos de pesquisa.
Figura 2 A nova funcionalidade “O que você quis dizer...” nas pesquisas do SharePoint
Figura 2 A nova funcionalidade “O que você quis dizer...” nas pesquisas do SharePoint (Clique na imagem para diminuir a exibição)
Figura 2 A nova funcionalidade “O que você quis dizer...” nas pesquisas do SharePoint
Figura 2 A nova funcionalidade “O que você quis dizer...” nas pesquisas do SharePoint (Clique na imagem para aumentar a exibição)

Encontrando a base de dados de conhecimento das pessoas
Uma das ofertas novas mais interessantes é a capacidade de pesquisar pessoas com determinado conhecimento e especialidade. Isso permite aos usuários o acesso e a utilização da base de dados de conhecimento dos funcionários em toda a empresa – uma etapa importante na quebra de silos.
Para habilitar isso, é possível executar a indexação e a pesquisa em qualquer diretório do protocolo LDAP, incluindo as listas de distribuição do Active Directory® e os grupos de usuários do SharePoint. Na verdade, o MOSS não faz a pesquisa diretamente nos diretórios LDAP. Para habilitar a pesquisa de pessoas, as informações LDAP precisam ser importadas no MOSS. (As pesquisas também podem ser executadas em toda a infra-estrutura da empresa.)
Os resultados da pesquisa podem ser agrupados de acordo com uma “distância social” do indivíduo – ou seja, a distância de uma posição do usuário (provavelmente, um assistente de vendas não desejará efetuar uma chamada ao diretor financeiro) e interesses comuns. A Figura 3 mostra os resultados da pesquisa de pessoas.
Figura 3 Encontrando colegas com conhecimento relevante
Figura 3 Encontrando colegas com conhecimento relevante (Clique na imagem para diminuir a exibição)
Figura 3 Encontrando colegas com conhecimento relevante
Figura 3 Encontrando colegas com conhecimento relevante (Clique na imagem para aumentar a exibição)

Pesquisando dados corporativos
O SharePoint também pode indexar vários tipos de dados corporativos. O que inclui aplicativos de linha de negócios (como aplicativos de RH, CRM, relatórios de despesa e assim por diante). Tradicionalmente, é difícil acessar esse tipo de dados fora da interface normal do aplicativo LOB, o que torna difícil para a maioria dos funcionários descobrir e usar qualquer um desses dados.
Mas, agora, a pesquisa do MOSS pode recuperar dados de qualquer aplicativo LOB, como um banco de dados relacional ou Lotus Notes, que pode ser acessado pelos serviços da Web ou ADO.NET. O mais especial nisso é que não há necessidade de código personalizado para gravação. Com o recurso Catálogo de Dados Corporativos, a obtenção desses dados corporativos é tão fácil quanto o acesso a qualquer documento ou site. O recurso Catálogo de Dados Corporativos pode ser simplesmente integrado ao gerenciamento de propriedades e escopos personalizados oferecidos pelo Centro de Pesquisa.

Retornando relevância
Obviamente, quaisquer recursos novos ofereceria pouco valor, se eles não tivessem resultados precisos. Felizmente, o MOSS fez alguns aprimoramentos expressivos na relevância. No entanto, antes de discutir esses aprimoramentos, é importante que você entenda o quanto a relevância na empresa se diferencia da relevância na Internet.
Talvez você se pergunte o motivo pelo qual as pesquisas de intranet não podem apenas usar as mesmas ferramentas (e, conseqüentemente, a mesma precisão) como as pesquisas da Internet. Simplificando, elas representam dois ambientes muito diferentes com muitas necessidades e requisitos distintos. Tais diferenças podem ser agrupadas em três categorias principais: segurança, estrutura e hierarquia.
A segurança se refere à natureza simples da Internet versus a empresa. Normalmente, os dados da Internet são acessíveis anonimamente; a indexação e a pesquisa não exigem autenticação ou remoção de segurança. Por outro lado, um ambiente empresarial deve seguir um modelo de segurança rígido, incluindo a filtragem dos resultados para que eles correspondam às permissões do pesquisador.
O impacto da estrutura tem a ver com densidade. A Internet é muito rica e extensa, com sites que se vinculam a outros sites para incrementarem seu conteúdo. Mas na empresa, os links normalmente são usados para navegação e a estrutura é bem menos densa.
O fator de hierarquia de sites está livremente relacionado com a estrutura de links. Normalmente, na Internet não há hierarquia para os sites e há poucos sites de nível superior. No entanto, as intranets da empresa geralmente são planejadas e hierárquicas por natureza. Mesmo quando uma empresa tem vários níveis principais da raiz, normalmente há apenas um portal principal para a organização.
Essas diferenças fundamentais alteram a forma como uma empresa pesquisa dados de índices de solução e retorna resultados. O MOSS 2007 visa atender melhor as diferentes necessidades da empresa. Ele tem um novo mecanismo de classificação, que foi desenvolvido usando a tecnologia existente combinada com o trabalho da equipe do Centro de Pesquisa da Microsoft e do MSN®. A relevância aumentou devido à criação de uma série de algoritmos de relevância, que reúne informações internas e externas sobre os documentos e os dados de linha de negócios sendo rastreados. Quando os dados da empresa são indexados, mais de 200 tipos de documentos são examinados e os algoritmos são aplicados para detectar o idioma, extrair os metadados e executar a análise de texto. Esses algoritmos novos, ajustados especificamente para atender às necessidades dos dados da empresa e dos aplicativos LOB, melhora consideravelmente a precisão dos resultados.
Diversas marcas de metadados são incluídas nos cálculos de relevância. Aqui estão alguns pontos a serem considerados:
  • Distância de clique Distância de navegação dos sites autoritativos (distâncias menores tendem a ser mais relevantes).
  • Texto-âncora Os hyperlinks atuam como anotações em seus destinos. Além disso, eles tendem a ser altamente descritivos.
  • Profundidade de URL Os URLs mais altos da hierarquia tendem a ser mais relevantes.
  • Correspondência de URL Corresponde diretamente ao texto das URLs.
  • Extração de metadados Extrai automaticamente títulos e autores do texto do documento, caso estejam ausentes.
  • Detecção automática de idioma Ajuda a criar preferência de resultados no seu idioma.
  • Biasing (desvio) do tipo de arquivo Determinados tipos de arquivos tendem a ser mais relevantes (por exemplo, os arquivos PPT geralmente são mais relevantes do que os arquivos XLS).
  • Análise de texto Classificação de texto tradicional baseada em fatores como termos de correspondência, freqüências dos termos e variantes de palavras.

Como a indexação funciona?
O MOSS 2007 fez importantes aprimoramentos na forma como o serviço de indexação funciona e como o conteúdo é gerenciado. Para os iniciantes, é possível especificar se as fontes de conteúdo são servidores SharePoint, sites, compartilhamentos de arquivos, pastas públicas do Exchange, bancos de dados Lotus Notes ou aplicativos LOB. A experiência administrativa de indexação geral foi otimizada, permitindo que você escolha livremente o que, como e quando indexar várias fontes de conteúdo. Ela é tratada por meio de regras de rastreamento, que permitem que você especifique caminhos a serem incluídos ou excluídos. Também é possível configurar como o rastreador seguirá os links do URL. Um registro interno oferece uma exibição abrangente do número de sites rastreados e como eles foram indexados.
O índice é semelhante à tecnologia de índice usada no Windows® Desktop Search. O índice é composto por dois componentes principais: um índice de conteúdo e um armazenamento de propriedades. Ele é uma forma extremamente eficiente para processar os dados. O índice de conteúdo inclui o texto real presente em arquivos, bem como um índice de palavras invertido associado encontrado no seu índice empresarial. O banco de dados do armazenamento de propriedade é essencial para o processamento dos resultados. O banco de dados do armazenamento de propriedade mantém todas as propriedades de metadados adicionais (autor, data de criação, tipo de documento e assim por diante) sobre todos os documentos do armazenamento. Estruturalmente, o armazenamento de propriedade consiste em uma tabela de propriedades e seus valores. Cada linha da tabela corresponde a um documento separado no índice de texto completo. O armazenamento de propriedade também mantém e aplica segurança de nível de documento coletada na indexação de um documento.
O processo de indexação e armazenamento é iniciado com o mecanismo de índice, responsável pelo rastreamento da fonte de conteúdo. O mecanismo começa o rastreamento após verificar se há um identificador de protocolo apropriado para ler as fontes de conteúdo. Após o identificador de protocolo correto ser carregado, ele e os IFilters extraem e filtram os itens da fonte de conteúdo. Um IFilter é um suplemento que habilita o mecanismo de índice a abrir, ler e indexar o conteúdo dos novos tipos de arquivo, que de outro modo não seria capaz de fazer a indexação integral. Os IFilters extraem o texto e os metadados de cada documento e passam o fluxo de volta para o mecanismo de índice.
As propriedades do documento são armazenadas no armazenamento de prioridades e o texto real do documento é colocado no índice de conteúdo. Assim que isso acontece, o mecanismo de índice remove palavras “de ruído”. O mecanismo também processa as informações usando separadores de palavras e lematizadores para simplificar os dados, permitindo uma melhor consulta. (Os separadores de palavras dividem o texto em palavras e frases. Os lematizadores geram formas flexionadas de uma determinada palavra.)
O mecanismo de índice usa propagação contínua, que permite que o índice seja criado quase que imediatamente. Com a propagação contínua, o índice continua a ser criado, mesmo que o processo de rastreamento se movimente pelas fontes de conteúdo. Esse aprimoramento permite resultados imediatos rápidos – um aprimoramento expressivo do SharePoint Portal Sever 2003, no qual amplos rastreamentos de conteúdo poderiam demorar dias e a indexação seria propagada apenas quando o rastreamento fosse concluído.

Como a consulta funciona?
Quando um usuário insere uma consulta ou um aplicativo personalizado chama o índice, o mecanismo de consulta começa o processamento da solicitação. Primeiro, ele passa a consulta por um separador de palavras específico ao idioma. Se o idioma não for identificado, será chamado um separador de palavras neutro. Após a consulta ser divida, o mecanismo passa as informações a um lematizador (se a lematização estiver habilitada) para processamento posterior. Esse processo de duas etapas aprimora a relevância e a eficácia dos resultados retornados pela consulta.
Se a consulta especificar informações sobre prioridade, o índice de conteúdo será verificado primeiro para correspondências emparelhadas com documentos no armazenamento de propriedade e as propriedades da consulta serão verificadas novamente para garantir a correspondência. O mecanismo de consulta usa um nível adicional de filtragem para remover resultados aos quais o usuário não possui permissão de acesso. Os resultados correspondentes são retornados em uma lista e ordenados de acordo com a relevância. A Figura 4 descreve como todos os componentes da indexação e da consulta se ajustam.
Figura 4 Arquitetura do ambiente de pesquisa empresarial do MOSS 2007
Figura 4 Arquitetura do ambiente de pesquisa empresarial do MOSS 2007 (Clique na imagem para diminuir a exibição)
Figura 4 Arquitetura do ambiente de pesquisa empresarial do MOSS 2007
Figura 4 Arquitetura do ambiente de pesquisa empresarial do MOSS 2007 (Clique na imagem para aumentar a exibição)

Gerenciamento aprimorado
Os administradores acharão fácil gerenciar o ambiente de pesquisa. Um conjunto aprimorado de ferramentas comuns para os usuários finais e os administradores ajudarem a reduzir a complexidade introduzida pelos diferentes pontos de conexão da plataforma. E o mecanismo de pesquisa é muito beneficiado pelo novo modelo de gerenciamento do MOSS 2007. (A Figura 5 mostra a página principal usada para modificação das configurações de pesquisa.)
Figura 5 Definindo as configurações de pesquisa
Figura 5 Definindo as configurações de pesquisa (Clique na imagem para diminuir a exibição)
Figura 5 Definindo as configurações de pesquisa
Figura 5 Definindo as configurações de pesquisa (Clique na imagem para aumentar a exibição)
Os escopos, que permitem o controle de diferentes recursos de pesquisa, também foram aprimorados. Eles facilitam a pesquisa em uma fonte de conteúdo, permitindo principalmente o gerenciamento do índice em partes menores. No SharePoint Portal Server 2003, os escopos são conectados às fontes de conteúdo, o que os tornam menos flexíveis e um pouco difícil de serem gerenciados. No MOSS 2007, os escopos estão separados das fontes de conteúdo, oferecendo maior flexibilidade. É possível definir escopos com base em propriedades de conteúdo arbitrárias, como URL, tipo ou autor. Também é possível combinar escopos para diversas regras, por exemplo, todos os documentos técnicos de um autor específico.
Obviamente, se um administrador quiser melhorar o desempenho do mecanismo de pesquisa, uma das coisas mais importantes que ele pode fazer é entender o uso atual do índice. Uma das melhores adições ao conjunto de ferramentas administrativas é o relatório de consultas. A funcionalidade de geração de relatório de consultas prontas permite que você encontre informações rapidamente sobre tendências de volume da consulta, melhores consultas, taxas de cliques, consultas sem resultado e assim por diante. O relatório de consultas pode fornecer detalhes no nível do site e nos níveis do provedor de serviços principal. A Figura 6 mostra um exemplo de relatório. É possível exportar as informações para o Microsoft Excel® para análise posterior e para dinamização dos dados.
Figura 6 Relatório de consultas do MOSS 2007
Figura 6 Relatório de consultas do MOSS 2007 (Clique na imagem para diminuir a exibição)
Figura 6 Relatório de consultas do MOSS 2007
Figura 6 Relatório de consultas do MOSS 2007 (Clique na imagem para aumentar a exibição)

Segurança e privilégios
Como mencionei anteriormente, o mecanismo de pesquisa filtra os resultados, portanto, a lista que o usuário vê inclui apenas os documentos aos quais ele tem permissão de acesso. (No SharePoint Portal Server 2003, o usuário vê links para os quais talvez não tenha permissões adequadas para acessar.) Uma limitação relacionada à remoção de segurança é que o MOSS 2007 não remove com segurança os rastreamentos da Web. Não é possível remover os sites devido ao protocolo HTTP não conseguir ler as informações de controle de acesso. Além disso, o MOSS 2007 não permite que você remova com segurança o Catálogo de Dados Corporativos ou as Pesquisas de Pessoas.
O MOSS 2007 respeita as ACLs (listas de controle de acesso) existentes, garantindo a segurança dos documentos no índice. Isso é o que mais o diferencia das outras ferramentas de pesquisa. Diferentemente de outros mecanismos de pesquisa, que exigem que você use um arquivo de configuração para definir permissões nos arquivos manualmente, o MOSS 2007 permite continuar na sincronização com as permissões atuais.
O índice pode refletir alterações rapidamente na ACL para um único documento. Por exemplo, há uma planilha do Excel atualmente armazenada no índice e a ACL do documento é alterada para ser restritiva. Um administrador pode reindexar e rastrear apenas aquele documento e a remoção de segurança acontecerá imediatamente (e, se necessário, o documento poderá ser completamente removido do índice).
Além disso, os documentos individuais podem receber permissões exclusivas ou, então, podem ser definidos para herdar as configurações de permissão de uma biblioteca de documentos ou diretório pai. Isso torna o processo de seleção de grupos ou indivíduos que têm permissão para ver, editar e salvar documentos muito mais simples.
Também há aprimoramentos para autenticação e gerenciamento de logon único. Agora, o cache de credencial seguro é extensível, o que possibilita ao MOSS aceitar sistemas em cache de credencial de logon único de fontes de terceiros e complementos codificados personalizados. Além disso, agora a autenticação principal pode aceitar sistemas de terceiros. Esses dois aprimoramentos criam o novo modelo do provedor ASP.NET, que permite o uso de outros serviços de diretório.

Personalização
No MOSS 2007, há várias opções para modificação da interface do usuário. A interface do usuário pode ser personalizada com a maioria das ferramentas usadas para modificar sites. Também há novas ferramentas, como o Office SharePoint Designer, que ajuda a criar Páginas Mestras (que oferecem uma maneira fácil para criar um site com marca). A Figura 7 mostra uma página de resultados da pesquisa sendo editada.
Figura 7 Personalizando a aparência de uma página de resultados de pesquisa
Figura 7 Personalizando a aparência de uma página de resultados de pesquisa (Clique na imagem para diminuir a exibição)
Figura 7 Personalizando a aparência de uma página de resultados de pesquisa
Figura 7 Personalizando a aparência de uma página de resultados de pesquisa (Clique na imagem para aumentar a exibição)
O MOSS 2007 pronto fornece duas guias para a interface do Centro de Pesquisa: Todos os sites e Pessoas. É possível simplesmente adicionar guias que refletem os diferentes tipos de informações pesquisados com mais freqüência pelos seus usuários. Por exemplo, você pode fornecer uma entrada direta em qualquer um dos seus aplicativos empresariais, bancos de dados ou, mesmo, serviços de diretório. Também é possível correlacionar essas guias aos escopos. Isso é útil para a criação de guias de pesquisa contextualizadas em um conteúdo específico. Observe que as edições somente pesquisa não oferecem suporte a essa personalização das guias de pesquisa.

Conclusão
Como você pôde ver, o MOSS 2007 fornece algumas melhorias novas muito atraentes para a funcionalidade de pesquisa empresarial, o que permite que os usuários sejam mais eficientes e produtivos. Para obter mais informações, consulte Microsoft Office SharePoint Server TechCenter (em inglês).

Matt Hester é apresentador da TechNet da equipe Microsoft Across America. Para ver a apresentação dele ao vivo, visite www.technetevents.com/mhester (em inglês). Confira o blog dele em blogs.technet.com/matthewms (em inglês).


 SharePoint: Administra&#231;&#227;o de linha de comando potente para SharePoint
SharePoint Todd Klindt

Administração de linha de comando potente para SharePoint
Visão geral:
  • Configurando o SharePoint com STSADM
  • Criando scripts para tarefas administrativas diárias
  • Operações avançadas de STSADM

Pense em como as pessoas interagem com o Windows ou o Microsoft Office. Alguns usuários são ávidos manipuladores de mouse e usam o ponteiro para navegar por menus e barras de ferramentas para realizar tarefas comuns. Outros se sentem mais confortáveis
com o teclado, pressionando, rapidamente, as teclas e os atalhos familiares. Quase sempre existem várias formas de realizar uma tarefa determinada.
O fato é que uma interface gráfica pode ser fácil de usar, mas pode ser igualmente complicada para tarefas que exigem repetir sempre a mesma coisa. Algumas coisas são mais fáceis de serem feitas pelo teclado. Se alguma vez você já tiver administrado o SharePoint®, é provável que já tenha experimentado algo como uma espécie de sobrecarga em uma interface gráfica. Mas o SharePoint, na verdade, dispõe de um modo mais potente de fazer essas coisas.
A interface primária para o gerenciamento do Windows® SharePoint Services (WSS) e do Microsoft® Office SharePoint Server 2007 (MOSS) é a Administração Central do SharePoint, baseada em GUI. Mas o SharePoint também contém uma ferramenta de linha de comando para proporcionar uma administração mais potente. Essa ferramenta, STSADM.exe, fornece toda a funcionalidade da Administração Central do SharePoint, mais a flexibilidade de linha de comando que muitos administradores desejam. Neste artigo, darei um curso superintensivo sobre o uso de STSADM para gerenciar WSS e MOSS. Também darei algumas dicas sobre como configurar seu ambiente e discutirei alguns comandos comuns de STSADM. Mostrarei, inclusive, alguns comandos avançados de STSADM que podem lhe fazer parecer um herói, caso surja a necessidade de usá-los.

Introdução
Se vocês ainda não conhecem o STSADM, pode ser porque ele esteja mais ou menos enterrado. No Windows SharePoint Services 2.0, ele se encontra em c:\arquivos de programas\arquivos comuns\microsoft shared\web server extensions\60\bin, por padrão. O local padrão na versão 3.0 é c:\arquivos de programas\arquivos comuns\microsoft shared\web server extensions\12\bin.
Para simplificar o acesso a essa ferramenta, usei duas abordagens diferentes. Primeiro, simplesmente adicionei o diretório à minha variável de ambiente PATH. Assim, posso usar o STSADM sempre que estou no sistema de arquivos. Isso, contudo, não é sempre uma opção. Minha segunda abordagem foi criar um atalho para CMD.EXE e definir o local do STSADM como o diretório inicial. Por que não basta apontar um atalho diretamente para o STSADM? Isso não funciona, uma vez que o STSADM não é interativo. Por conseqüência, se você apontar um atalho diretamente ao STSADM, será apresentada apenas uma rápida exibição sobre seu uso.
Para executar o STSADM, é necessário ser membro do grupo Administradores local do servidor Web e executar o aplicativo localmente. Isso significa que não é possível usar o STSADM para administrar remotamente um servidor de SharePoint.
Para saber quais operações podem ser realizadas com o STSADM, digite stsadm.exe -help em um prompt de comando. Lembre-se de verificar essa lista depois de aplicar atualizações e hotfixes ao SharePoint, já que novas operações podem ser adicionadas. Há, ainda, um guia útil para operações de stsadm.exe disponível em go.microsoft.com/fwlink/?LinkId=77516 (em inglês).

Noções básicas sobre STSADM
Vamos começar examinando alguns dos comandos que podem ser usados para ajustar sua instalação de SharePoint existente. É possível usar o STSADM para adicionar funcionalidade ao SharePoint e modificar as definições de configuração.
O STSADM usa o parâmetro -o seguido da operação que você deseja realizar. Apenas digitar STSADM -operationname não vai funcionar. Se, por exemplo, quiser adicionar modelos de site à sua instalação, você poderá usar o seguinte comando:
Stsadm -o addtemplate -filename <filename of the template>
-title <title of template> -description <description of template>
Ou, se quiser adicionar um Pacote de Web Part, poderá usar este comando:
Stsadm -o addwppack -filename <filename of the Web Part Package>
Para obter detalhes sobre o uso de qualquer operação, basta transmiti-la sem parâmetros que o STSADM lhe dirá o que espera de entrada. STSADM -help operationname também traz informações sobre o uso.
Ao gerenciar modelos, é possível usar a operação enumtemplates para ver quais modelos foram adicionados e deletetemplate para remover quaisquer modelos instalados. Similarmente, há comandos para trabalhar com pacotes de Web Part. Você pode usar a operação enumwppacks para listar os pacotes de Web Part instalados em cada servidor virtual ou aplicativo Web e deletewppack para remover qualquer um que tenha sido adicionado.
O STSADM também tem duas operações que lidam com configurações do SharePoint: setproperty e getproperty. Executar uma delas sem parâmetros trará uma lista com as propriedades que podem ser exibidas ou manipuladas. Como o próprio STSADM, essa lista muda após atualizações e hotfixes. Não obstante, há algumas propriedades que são mais úteis que outras. A Figura 1 lista algumas das propriedades que convém definir após a instalação do SharePoint, inclusive as propriedades mais comuns a respeito das quais os administradores de SharePoint perguntam.
Figure 1 Configurando propriedades úteis do SharePoint (Close Figure 1)

Propriedade | Função
Alerts-enabled | Ativa e desativa alertas para seu servidor virtual ou aplicativo Web.
Alerts-limited | Especifica se é necessário restringir o número de alertas que os usuários podem configurar no servidor virtual ou aplicativo Web.
Alerts-maximum | Se forem definidos limites de alerta, este é o número máximo de alertas que um usuário pode configurar.
Days-to-show-new-icon | Define por quanto tempo o ícone “Novo” aparece próximo a itens adicionados ao site, como postagens de anúncios, por exemplo.
Job-immediate-alerts | Especifica a freqüência com que o SharePoint busca alertas imediatos a serem enviados. O padrão no SharePoint 2.0 é de cinco minutos. Esse intervalo pode ser ajustado. A diminuição do tempo aumentará a carga em seus servidores Web e de banco de dados; portanto, fique atento a esse respeito se alterar esta propriedade.
Job-daily-alerts | Especifica a que horas os alertas diários são enviados. O padrão no SharePoint 2.0 é “entre 22:00 e 06:00”. Se houver usuários em fusos horários diferentes do servidor, convém ajustar esta propriedade.
Job-weekly-alerts | Provavelmente, o padrão é visto aqui. Trata-se do agendamento de alertas semanais.
Vamos observar rapidamente o uso de uma dessas propriedades. O seguinte comando fará com que o SharePoint envie alertas imediatos a cada 10 minutos:
Stsadm -o setproperty -pn job-immediate-alerts -pv "Every 10 minutes"
Observe que usei -pn e -pv, em vez de -propertyname e -propertyvalue. Eles são atalhos aceitáveis para quando você não quiser digitar a palavra inteira. Observe também que todos os exemplos e os comandos que discuti nesta seção funcionam em ambas as versões, 2.0 e 3.0, do Windows SharePoint Services.

Administração diária
Administrar o SharePoint no dia a dia é muito fácil. Para a maioria dos administradores de SharePoint, a carga de tarefas diárias consiste em trabalhar com usuários e sites. O STSADM possui diversas operações para simplificar essas tarefas.
Começarei pelos sites e pelas Webs. Por questão de consistência, usarei “site” para me referir a conjuntos de sites e “Web” para me referir a subsites (também conhecidos como subwebs). Parte da terminologia é confusa, mas, se você manter a consistência com o uso feito pelo STSADM, será mais fácil encontrar os comandos de que necessita.
Se executar uma instalação grande de SharePoint, é provável que você passe um longo período criando novos sites para usuários. Eu sei que me vejo fazendo isso repetidamente. A criação de novos sites pode ser feita facilmente na Administração Central do SharePoint. Porém, como realizo essa tarefa com muita freqüência, acho mais rápido usar o STSADM para fazer o serviço.
Uso a operação createsite. Ela é bastante simples e segue os seguintes parâmetros:
  • url <URL>
  • ownerlogin <DOMÍNIO\nome>
  • owneremail <alguém@exemplo.com>
  • ownername <nome de exibição>
  • lcid <idioma>
  • sitetemplate <modelo do site>
  • title <título do site>
  • description <descrição do site>
  • quota <modelo de cota>
É possível trazer isso tudo para o prompt de comando digitando stsadm -help createsite (consulte a Figura 2). Desses nove parâmetros, os únicos campos obrigatórios são URL, ownerlogin e owneremail.
Figura 2 Parâmetros Createsite
Figura 2 Parâmetros Createsite (Clique na imagem para diminuir a exibição)
Figura 2 Parâmetros Createsite
Figura 2 Parâmetros Createsite (Clique na imagem para aumentar a exibição)
Se houver sites que você cria rotineiramente, você poderá dar um passo a mais na simplificação do processo, escrevendo um script de invólucro em torno do STSADM para automatizar a tarefa. Por exemplo, para automatizar a criação de sites pessoais, é possível salvar o seguinte em um arquivo de texto denominado createpersonalsite.cmd:
stsadm -o createsite -url http://localhost/users/%1 -ownerlogin contoso\%1
-owneremail %1@contoso.com -sitetemplate usersite.stp
-title "Personal site for %1" -description "Personal site for %1" -quota "500 MB"
Em seguida, para criar um site para o usuário jsmith, bastaria executar o seguinte:
createpersonalsite.cmd jsmith
Ao criar scripts para a criação de sites, você economiza muito em digitação e pode verificar se todos os sites recém-criados são consistentes. A operação createweb proporciona a mesma funcionalidade em nível de Web.
No Windows SharePoint Services 2.0, a única maneira fácil de se obter uma lista exaustiva dos conjuntos de sites de um servidor virtual em particular é usar STSADM. Enumsites lista, em formato XML, todos os conjuntos de sites de um servidor virtual ou aplicativo Web específico. Ele pode ser acoplado a uma Web Part de Exibição de Dados, para uma fácil visualização da lista de conjuntos de sites. (Consulte a barra lateral “Trabalhando com uma Web Part de Exibição de Dados” para obter mais informações.)
O STSADM fornece a operação deletesite para, conforme você já deve pressupor, remover sites. Tudo o que você precisa fazer é fornecer o URL. Opcionalmente, é possível transmitir -deleteadaccounts para excluir as contas no Active Directory®. Ao trabalhar com Webs, você usaria a operação deleteweb.
Também é possível adicionar, excluir e enumerar os usuários de um site ou Web. As operações associadas são adduser, deleteuser e enumusers. Essas operações são úteis caso haja a necessidade de os usuários serem adicionados a um site em massa ou caso seja necessário manter uma lista com os usuários que têm acesso a um site para fins de auditoria.
Ao trabalhar com Webs, você tem acesso a uma operação adicional, renameweb, que lhe permite alterar o nome e o URL de uma Web. Por exemplo, para renomear uma Web de “oldname” para “coolnewname”, use:
Stsadm -o renameweb -url http://localhost/oldname -newname coolnewname
Isso é extremamente importante quando os nomes dos projetos são alterados ou as unidades de negócio são realinhadas. No Windows SharePoint Services 2.0, isso é um grande problema, já que a única forma de migrar Webs é com o SMIGRATE.exe, que não preserva nenhuma configuração relacionada a usuário, como associações ou alertas. Com o Windows SharePoint Services 3.0, isso não chega a ser um problema, já que o STSADM pode fazer o backup e restaurar Webs e sites.

Fazendo o backup e restaurando
Uma das melhores utilidades do STSADM é o backup e a restauração de sites e Webs. Para instalações de pequeno e médio portes, essa funcionalidade pode ser a peça fundamental de um plano de recuperação de desastres. A operação de backup é auto-explicativa e muito fácil de usar. Basta dizer ao STSADM qual site deve receber backup e onde gravar o arquivo de backup, desta maneira:
Stsadm -o backup -url http://localhost -filename site.bak
Esta operação despeja todo o conjunto de sites no arquivo site.bak. Ele contém todo o conteúdo dos sites, como Webs, versões de documentos, listas e usuários. Ele não faz backup de nenhuma definição de site ou alteração feita no nível do sistema de arquivos de seus servidores.
Embora a operação de backup seja importante, é melhor ficar atento com alguns empecilhos. Se o site for muito grande, o Banco de Dados de Conteúdo poderá ser bloqueado durante o processo de backup. Isso pode impedir que os usuários acessem os sites desse banco de dados até que a operação de backup seja concluída. Esse problema pode ser atenuado com service packs, mas continua sendo algo merecedor de atenção à medida que seus sites crescerem. O STSADM também usa o diretório temporário do servidor ao fazer backups e restaurações; portanto, monitore o espaço da unidade.
Trabalhando com uma Web Part de Exibição de Dados
É possível acoplar o comando enumsites a uma Web Part de Exibição de Dados para criar um modo fácil de visualizar a lista de conjuntos de sites. Vejamos como.
Primeiro, crie uma tarefa agendada que execute:
stsadm –o enumsites –url http://localhost
>c:\inetpub\wwwroot\excludedsite\sites.xml
Verifique se o arquivo XML está sendo gravado em um diretório publicado com IIS, mas não gerenciado pelo SharePoint. Em seguida, use o Microsoft FrontPage® (ou o sucessor do FrontPage, o Microsoft Office SharePoint Designer 2007) para adicionar uma Web Part de Exibição de Dados a uma página de Web Part e aponte-a para o URL do arquivo XML.
A Web Part de Exibição de Dados proporciona funcionalidade como classificação, filtragem e agrupamento. Também é possível transformar o campo URL em um link que leve diretamente para o site. Se, em vez disso, você preferir uma lista de Webs, a operação enumsubwebs fornecerá uma saída XML das subwebs de uma Web ou conjunto de sites.

Finalmente, tenha em mente que, embora os backups do STSADM funcionem bem para sites pequenos e médios, a funcionalidade não é muito bem dimensionada. No caso de sites muito grandes (vários gigabytes ou mais), os processos de backup e de restauração podem ser bastante lentos.
Restaurar um site é igualmente simples. STSADM -o restore apanha um arquivo criado por STSADM -o backup e grava-o em um site no SharePoint. Esse comando proporciona muita flexibilidade: é possível restaurar um site de volta a seu local original (se, por exemplo, o site tiver sido excluído por equívoco), restaurá-lo como um site diferente no mesmo servidor virtual (se você desejar, talvez, testar um processo em um site sem o risco de destruir os dados) ou restaurá-lo em um servidor ou servidor virtual completamente diferente.
Restaurar em um site ou servidor diferente facilita um pouco mais a recuperação de documentos individuais. Se houver o backup de um site e um usuário precisar de um documento restaurado, não será necessário restaurar o site inteiro. Isso sacrificaria todas as alterações feita ao site desde o armazenamento do backup. Em vez disso, você pode simplesmente restaurar o site em um URL diferente, apanhar os documentos e salvá-los de volta no site original.
No Windows SharePoint Services 2.0, o STSADM tem uma limitação bastante grave. Ao fazer backups, ele só consegue lidar com sites; e não com Webs. Os administradores demonstraram seu descontentamento e a Microsoft respondeu. No Windows SharePoint Services 3.0, as operações de backup e restauração, agora, manipulam Webs. Ele também traz dois novos comandos: import e export.
Para exportar uma Web, use o seguinte comando simples:
Stsadm -o export -url http://localhost/web -filename backup.dat
A exportação tem opções úteis, inclusive a chave -versions. Ela lhe permite decidir o tamanho dos arquivos de backup, restringindo as versões do arquivo que receberá o backup.
Para importar uma Web de volta para o servidor, use o seguinte comando simples:
Stsadm -o import -url http://localhost/web2 -filename backup.dat
Se seu site for muito grande, o arquivo de backup pode ser dividido em vários componentes. Nesse caso, aponte STSADM -o import para o primeiro arquivo que ele apanhará, automaticamente, os arquivos subseqüentes.

Operações de especialistas
Agora que você já está confortável como STSADM, eu gostaria de lhe mostrar algumas operações que podem ser usadas para sair de uma ligação. A primeira é um operação recém-adicionada, denominada migrateuser. A versão 2.0 não é sincronizada com o Active Directory. Se uma conta for renomeada, ela não poderá mais se registrar no SharePoint. No passado, também não havia um modo de migrar acesso de usuário de um usuário de domínio para outro. Antes do Windows SharePoint Services 2.0 Service Pack 2 (SP2), era preciso remover o usuário de cada Web e adicioná-lo manualmente à nova conta.
O SP2 introduziu uma nova API e o STSADM a aproveita. Se a conta jsmith for renomeada para jjones, você poderá usar o seguinte comando:
Stsadm -o migrateuser -oldlogin domain\jsmith -newlogin domain\jjones -ignoresidhistory
Já que você não está, na realidade, migrando contas, é possível ignorar o histórico de SID (identificador de segurança) do Windows. Observe que esse comando não requer um URL. Ele faz a alteração em todos os bancos de dados de conteúdo, sem observar sites ou Webs.
Uma outra operação que pode tirá-lo de uma ligação é unextendvs. Se não quiser que o SharePoint processe um servidor virtual ou aplicativo Web, cancele a sua extensão. Normalmente, isso seria feito por meio do Analisador de Configuração do SharePoint. Todavia, em um Web farm, o Analisador de Configuração do SharePoint requer que todos os seus servidores estejam no mesmo nível de correção. É possível que um servidor esteja fora de sincronia com o resto do farm e, portanto, não obtenha a opção de cancelamento de extensão no Analisador de Configuração do SharePoint. Contudo, ao usar STSADM, o seguinte comando cancelará a extensão de seu servidor virtual:
Stsadm -o unextendvs -url http://localhost
Com o servidor retirado do Web farm, é possível realizar a manutenção necessária.
No que diz respeito a Web farms, por questão de facilidade administrativa, convém que todos os servidores tenham o Analisador de Configuração do SharePoint na mesma porta. A porta é gerada aleatoriamente quando o SharePoint é instalado, mas o STSADM contém uma operação para alterá-la para uma outra que você especificar:
Stsadm -o setadminport -port 1026
Isso faz com que todas as alterações necessárias de banco de dados sejam efetuadas, altera o IIS e ajusta o atalho para o Analisador de Configuração do SharePoint nas Ferramentas Administrativas.

Conclusão
O Windows SharePoint Services é uma solução potente, que exige administração eficaz. O STSADM proporciona um modo de efetuar a administração do SharePoint, inclusive a automação da configuração e de tarefas comuns diárias. Na verdade, às vezes é a única forma de fazer o serviço.

Todd Klindt é analista de sistemas da UGS, onde brinca com o SharePoint o dia inteiro – e ainda recebe por isso. Também é MVP do Windows SharePoint Services e aquariano.


 SharePoint: Wiki enquanto voc&#234; trabalha
SharePoint Mauro Cardarelli

Wiki enquanto você trabalha
Visão geral:
  • O que é um wiki?
  • Criando um wiki no SharePoint
  • Editando e controlando alterações

O conceito wiki existe há mais de 10 anos. Em sua forma mais simples, wiki – o termo havaiano para "rápido" – é um destino online onde os usuários podem criar ou editar com liberdade o conteúdo de uma página da Web
utilizando apenas um navegador. O objetivo é fornecer um espaço em que membros de uma comunidade virtual possam editar qualquer página com total liberdade para apresentar, alterar ou remover conteúdo, inclusive qualquer texto criado por autores anteriores. Ao contrário dos blogs, projetados para comunicação de um-para-muitos e para troca de conhecimento mais estruturada, os wikis possibilitam uma experiência de maior colaboração.
Recentemente, deu-se muita atenção à próxima geração de ferramentas online, apelidada Web 2.0. A premissa é que as barreiras em torno da criação do conteúdo serão diminuídas, permitindo que os usuários sejam produtores e consumidores das informações online. Esse fenômeno está ocorrendo não apenas no mundo da Internet, mas também nos firewalls corporativos. Pense nele como o Enterprise 2.0 – ferramentas que facilitam a criação de conteúdo para todos os funcionários. Tecnologias como blogs e wikis trilharão um longo caminho para modificar a forma como empresas pensam, armazenam e reciclam conhecimento corporativo.
A Microsoft está facilitando esse recurso de próxima geração introduzindo o® Office SharePoint® Server (MOSS) 2007, a terceira versão da popular tecnologia do SharePoint. O MOSS 2007 oferece funcionalidade de comunicação e colaboração ampliada, que inclui suporte à criação de blogs e wikis. Este artigo aborda como começar a criar wikis com o MOSS 2007.

Introdução
Se você já trabalhou com o SharePoint Portal Server 2003, a utilização de modelos de site deve ser bem familiar. Os modelos de site fornecem uma estrutura para o layout de um determinado tipo de página (uma equipe ou reunião, ou um evento social, por exemplo) que predefine espaços reservados para um conteúdo específico. O MOSS 2007 amplia a utilização dos modelos de site apresentando um novo conjunto de tipos de modelo. Um desses é para um wiki.
A Figura 1 mostra a página Novo Site do SharePoint usada para criar um site do SharePoint. Observe que na lista de modelos há um item para Site Wiki. Selecionando esse modelo, você pode criar de modo rápido e fácil seu primeiro wiki. Veja a Figura 2, que é o padrão para processamento do wiki recém-criado. A estrutura de um wiki é semelhante a essa página padrão na sua home page. Tudo aqui pode ser editado. Usuários devidamente autorizados – sua comunidade virtual – podem modificar essa página ou criar páginas novas.
Figura 1 Selecionando o modelo Wiki para um site novo
Figura 1 Selecionando o modelo Wiki para um site novo
Figura 2 Seu novo wiki do SharePoint, aguardando para ser editado
Figura 2 Seu novo wiki do SharePoint, aguardando para ser editado (Clique na imagem para diminuir a exibição)
Figura 2 Seu novo wiki do SharePoint, aguardando para ser editado
Figura 2 Seu novo wiki do SharePoint, aguardando para ser editado (Clique na imagem para aumentar a exibição)
Antes de prosseguirmos, vamos voltar um pouco e falar sobre como apresentar wikis a seus usuários. Como mencionei, os wikis já existem na Internet ou por meio de ferramentas de terceiros há algum tempo. No entanto, em linhas gerais, a utilização de wikis foi altamente especializada e teve crescimento lento, por meio de divulgação boca-a-boca. O MOSS 2007 está ajustado para alterar isso proporcionando funcionalidade wiki a todos os usuários da intranet. Essa é uma proposição muito poderosa (e potencialmente assustadora)! Como explicar o valor de um wiki para um colega de trabalho que não é técnico e não entende de Internet? O que você precisa dizer a ele é que a finalidade dos wikis é proporcionar trocas de opiniões e idéias criativas em um ambiente livre em que todos os usuários possam expressar suas idéias. Eles permitem a colaboração no conteúdo, mas, na verdade, significam muito mais. O resultado final de um wiki não é um documento ou capítulo, mas um livro – um livro que não precisa ser terminado, que pode ser modificado sempre que necessário.
OK, voltemos ao trabalho! Para novos usuários wiki, a orientação online está disponível pelo hiperlink do site How to Use This Wiki (em inglês). O modelo de wiki padrão é acompanhado de documentação suficiente para que os novos usuários fiquem à vontade e apresentem contribuições rapidamente.

Como funcionam os wikis
Em toda a página wiki, você observará botões de ação no lado superior direito. Se você clicar em uma guia rotulada Editar, será direcionado para a página associada à edição do conteúdo. A Figura 3 mostra um exemplo. Toda a edição ocorre no navegador – não há necessidade de usar ferramentas externas como o Microsoft Word. E, as edições são feitas online e em tempo real (após salvá-las). Além disso, não são necessárias qualificações de desenvolvimento ou criação da Web. A interface de edição permite a criação de rich text completo (negrito, colorido, pontos de marcador ou imagens) tudo com a utilização de botões padrão. Um usuário simplesmente abre uma página existente no modo de edição, e adiciona ou modifica o conteúdo. É isso.
Figura 3 Editando todo o conteúdo wiki no navegador
Figura 3 Editando todo o conteúdo wiki no navegador (Clique na imagem para diminuir a exibição)
Figura 3 Editando todo o conteúdo wiki no navegador
Figura 3 Editando todo o conteúdo wiki no navegador (Clique na imagem para aumentar a exibição)
Em um ambiente em que o conteúdo está em constante evolução, como gerenciar as alterações? Talvez não seja necessário policiar todas as contribuições, mas é provável que você deseje alguns meios de controle de alterações e manutenção de histórico de versões. O MOSS 2007 permite que você faça isso. A Figura 4 permite que uma página padrão tenha a mesma aparência depois de você clicar no botão Histórico. No centro, você observará que todas as edições no texto foram controladas. À esquerda, é possível ver o histórico de alterações, apresentando controle de cada alteração efetuada. A comunidade tem total poder para revisar, controlar e, inclusive, reverter alterações. Este é um conceito poderoso. Enquanto você está criando e alterando seu wiki, o MOSS 2007 está acompanhando esse movimento.
Figura 4 Controlando alterações em uma entrada no wiki ao longo do tempo
Figura 4 Controlando alterações em uma entrada no wiki ao longo do tempo (Clique na imagem para diminuir a exibição)
Figura 4 Controlando alterações em uma entrada no wiki ao longo do tempo
Figura 4 Controlando alterações em uma entrada no wiki ao longo do tempo (Clique na imagem para aumentar a exibição)
Como observado, um wiki não é uma página da Web. Ele é um conjunto ilimitado de páginas. Como membro de uma comunidade wiki, você pode decidir introduzir uma nova idéia ou ponto de discussão. Em vez de adicionar texto a uma página existente, você pode desmembrá-la em uma página nova. O MOSS 2007 oferece suporte a esse recurso permitindo a adição fácil de páginas wiki. Simplesmente, clique em Novo e você será levado a uma nova página wiki. Comece a adicionar conteúdo e estará no caminho certo!

Conclusão
Talvez, o MOSS 2007 não tenha introduzido o conceito de um wiki mas, em vista de sua ampla disponibilidade, ele os tornou muito mais interessantes. Os wikis podem transformar a maneira de colaboração entre os colegas da organização – eles não estão mais restritos aos limites de um documento. Os wikis estimulam o pensamento não estruturado e a colaboração mais ampla, e isso se integra perfeitamente aos conceitos mais amplos associados à filosofia do Enterprise 2.0. Os wikis são habilitadores; eles permitem a participação de todos os usuários – não apenas para acompanharem o que já existe, mas para abrirem novos caminhos.

Mauro Cardarelli é sócio-gerente da Jornata, uma empresa de serviços de consultoria em TI com sede em Boston. Entre suas responsabilidades estão a divulgação tecnológica, o design arquitetônico e o desenvolvimento de software. Ele pode ser contatado pelo email mauro.cardarelli@jornata.com.


 Do editor: Algumas vezes, os setores
Do editor

Algumas vezes, os setores passam por mudanças sísmicas. Isso é verdade não só para a tecnologia, como para política, moda e tudo mais. Estava pensando sobre isso há algumas semanas enquanto falava na conferência Windows Connection, em Las Vegas. Há cinco anos, em novembro, estive na Comdex – a uma feira colossal que atende a todo e qualquer tipo de segmento de compradores e aprendizes de tecnologia do mundo. No entanto, a feira que cresceu de modo constante por quase duas décadas, desapareceu praticamente da noite para o dia. Então, em vez de estar participando de uma feira colossal, com excelente repercussão, eu estava falando em uma feira muito bem-sucedida mas de abrangência limitada, com ênfase em alguns produtos de TI e desenvolvedor. Eu atingia as mesmas pessoas no mesmo local, mas a escala era mais compensadora para todos aqueles que dela participavam.
Minha palestra era sobre escrita técnica – como fazê-la, onde fazê-la e por que. As mudanças em nosso setor estão refletidas não apenas na história da Comdex, mas no mundo das comunicações técnicas. Há cinco, apresentei uma sessão semelhante e era sobre revistas. Naquela época, poucas pessoas tinham ouvido falar de blogs. Sites de comunidade eram apenas uma sombra do que são hoje em dia. Nos últimos cinco anos, vimos uma modificação permanente na forma como a palavra escrita é transmitida, em uma escala nunca vista anteriormente.
Claro que isso é uma mistura abençoada. Diferentes formas de comunicação atendem a diferentes propósitos. As pessoas podem expressar espontaneamente seus pensamentos online, mas tê-los divulgados em uma revista em geral significa que as palavras foram editadas e validadas tecnicamente. Você pode retirar a postagem de um blog, mas não pode ir de casa em casa e pedir para as pessoas destruírem a seção da página 28.
De qualquer forma, há um motivo para eu estar falando sobre esta mudança. Em resposta a inúmeros leitores que apresentaram comentários sobre a revista, estamos expandindo nossa disponibilidade de colunas. Nesta edição, estamos oferecendo a primeira parte do The Cable Guy, uma coluna popular online do TechNet que agora está avançando para a página impressa. Também ouvimos todos os nossos postmasters e sabemos que esse Exchange Server 2007 está para se tornar uma grande história, portanto estamos lançando uma coluna regular, Perguntas e repostas do Exchange. (Pare! É um nome interessante!)
Para ver algum assunto sobre tecnologia Microsoft apresentado na revista, escreva-nos. A melhor maneira de atendê-lo é lhe fornecer aquilo de que necessita. – Joshua Trupin

Obrigado aos seguintes especialistas técnicos da Microsoft: Puneet Arora, Jeff Bienvenu, Nino Bilic, Eric Broberg, Ramesh Chinta, Matt Cohen, Michael Dalton, George Irimescu, Bryan Jeffries, Dave Kong, Vijay Krishna, Rob Lefferts, Lawrence Liu, Bob Ma, Manu Namboodiri, Joel Oleson, Arpan Shah, Troy Starr, James Sturms, Jim Truher e Blaine Young.


 Toolbox: Novos produtos para os profissionais de TI
Toolbox
Novos produtos para os profissionais de TI
Greg Steen

Administração do Servidor
Windows Server 2003 Resource Kit Tools
go.microsoft.com/fwlink/?LinkId=77796
O Microsoft Windows Server 2003 Resource Kit Tools é um conjunto valioso com 100 utilitários que podem ajudá-lo a simplificar e automatizar suas tarefas administrativas. Ele inclui todo o conteúdo das ferramentas do Active Directory® para utilitários de solução de problemas de rede para gravadores de imagem do CD/DVD.
O Custom Reason Editor (custreasonedit.exe) é uma excelente ferramenta de organização do seu Controlador de Eventos de Desligamento. Um componente do Windows Server® 2003, os logs do Controlador de Eventos de Desligamento discutem os desligamentos do sistema para o log de eventos. Enquanto isso, a ferramenta Custom Reason Editor permite a criação de uma lista personalizada com parâmetros configuráveis que substituirão as razões internas permitidas por padrão. Essa ferramenta pode facilitar a agregação e a identificação de processos, aplicativos ou estados do sistema com problemas que levam ao desligamento ao manter os itens de eventos lógicos e organizados.
O DNS Resolver Tool, um utilitário de linha de comando que simula a execução do serviço SMTP da resolução DNS, exibe mensagens informando o status da consulta DNS especificada como parâmetro de comando. Esse utilitário será executado em qualquer host do Windows Server 2003 com serviço SMTP instalado e retornará códigos de erro que poderão ser usados em arquivos em lote. CDBurn.exe e DVDburn.exe são utilitários de linha de comando que permitem a criação de CDs e DVDs a partir de imagens ISO e que fornecem suporte limitado à mídia RW com a opção /Erase que limpará a mídia antes de aplicar a nova imagem do disco. Eles podem ser usados, por exemplo, para automatizar processos de arquivamento em sua infra-estrutura.
Windows Server 2003 Resource Kit
Windows Server 2003 Resource Kit (Clique na imagem para diminuir a exibição)
Windows Server 2003 Resource Kit
Windows Server 2003 Resource Kit (Clique na imagem para aumentar a exibição)
Se você precisar verificar se uma conta foi bloqueada com êxito, a ferramenta Account Lockout Status tornará esse processo mais rápido e fácil devido a uma opção GUI e linha de comando. A ferramenta consulta todo controlador de domínio acessível e verifica o status da conta do usuário de destino. Talvez uma das melhores ferramentas de automação, o Robust File Copy Utility, Robocopy.exe, oferece diversas opções para movimentar ou copiar arquivos. Essa ferramenta permite o uso de caracteres curinga e atributos do arquivo para especificar candidatos para cópia. A cópia pode ser definida de forma seletiva para ser recursiva. Você pode usar a ferramenta para sincronização e defini-la para excluir arquivos de destino ou diretórios que foram removidos do diretório de origem.
Outro dos meus utilitários favoritos é a ferramenta simples Tail (tail.exe) que, da mesma forma que o utilitário Linux/UNIX, permite a exibição do último número N de linhas de um arquivo, atualizando a exibição quando novas linhas são adicionadas. Essa é uma excelente forma de depurar ou monitorar qualquer tarefa que grava um arquivo de log.
O Time It (timeit.exe) permite a marcação de tempo dos comandos e armazena os dados em seu próprio arquivo de banco de dados permitindo que você teste o tempo que suas tarefas administrativas estão demorando.
Você deve observar que as ferramentas não foram localizadas, elas foram gravadas e testadas apenas em inglês e, talvez, “apresentem resultados imprevisíveis” durante a execução. Certifique-se de testar seus sistemas que não estejam em inglês antes de usar um desses utilitários em um ambiente de produção.
Preço: download gratuito.

Problemas de controle
ASP.NET Issue Tracker
www.ASP.NET/StarterKits/WhitePapers/Issue%20Tracker%20Whitepaper.htm (em inglês)
Há duas coisas que, a meu ver, sempre tornam um aplicativo melhor: quando ele é gratuito e quando ele é personalizável. O ASP.NET Issue Tracker, fornecido por meio da comunidade de desenvolvedores online do ASP.NET, possui essas duas características. Desenvolvido como um Starter Kit para aprender a programar aplicativos Web na estrutura ASP.NET 1.1, o Issue Tracker é uma ferramenta simples, mas muito útil para acompanhar questões relacionadas aos projetos.
A interface é muito simples e permite a criação de projetos, usuários e questões com facilidade. O aplicativo oferece suporte a vários usuários com permissões com base em funções, protegendo assuntos de pessoas indesejadas. Também é possível criar categorias de assuntos personalizados para cada projeto e campos de dados personalizados de diversos tipos. As tarefas podem receber um status, uma prioridade e uma etapa, que ajudam a organizar seus projetos.
Outro recurso interessante é que durante a criação do projeto, você pode especificar seus próprios códigos de status, prioridades e etapas para cada projeto e atribuir uma imagem para representá-lo. Todos os códigos estão disponíveis no download, portanto, se você tiver um desenvolvedor .NET disponível, ou puder trabalhar à sua maneira por meio do código existente, poderá usar o Starter Kit como uma base para qualquer funcionalidade personalizada que possa precisar.
Preço: gratuito.

Monitoramento do sistema
NetHealth Sentinel Professional
www.nethealthsys.com (em inglês)
O monitoramento da rede e dos sistemas é essencial. Estou sempre procurando aplicativos que me forneçam informações sobre o desempenho do computador à distância. O NetHealth Sentinel Professional, do NetHealth Systems, faz exatamente isso.
Como uma solução baseada em agente, o Sentinel Professional lhe fornece informações profundas dos computadores com host monitorado. O aplicativo é dividido em quatro componentes: Servidor de Administração, Console de Administração, Gerenciador de Conexões e Agente Remoto. O Servidor de Administração executa tarefas agendadas, armazena informações de configuração e coleta alertas via Gerenciador de Conexões.
O Console de Administração é a interface gráfica do Servidor de Administração que permite a exibição e a configuração dos sistemas monitorados, bem como a configuração de quaisquer tarefas ou eventos agendados. O Gerenciador de Conexões reúne todos os dados dos Agentes Remotos – agentes de host que residem no seu sistema monitorado. O Agente Remoto é executado como um serviço do Windows e se comunica com segurança com o Gerenciador de Conexões por meio de uma comunicação segura. Todo Agente Remoto pode ser configurado para enviar alertas para um ou mais Gerenciadores de Conexão.
NetHealth Sentinel Professional
NetHealth Sentinel Professional (Clique na imagem para diminuir a exibição)
NetHealth Sentinel Professional
NetHealth Sentinel Professional (Clique na imagem para aumentar a exibição)
Um bom recurso é a agregação de Eventos de todos os computadores em um grupo de monitoramento especificado. A GUI uniforme também permite arrastar e soltar colunas de dados da exibição Evento para o grupo por item.
O aplicativo também oferece o painel Vital Signs, que fornece uma rápida visão geral de todas as estatísticas que você deseja monitorar. Por padrão, você pode ver a utilização de CPU, disco e memória, e pode adicionar, por meio da guia Monitor, contadores de sua preferência.
O NetHealth Sentinel Professional também inclui um recurso de linha de base que permite a definição de níveis da operação “normal” do computador e o acionamento de alertas, caso a operação exceda um dos valores de linha de base estabelecidos.
Preço: R$ 495,00 para um pacote de 10 licenças de acesso para cliente.

Criptografia de dados
TrueCrypt
www.truecrypt.org (em inglês)
O TrueCrypt, da TrueCrypt Foundation, é uma ferramenta de criptografia gratuita, de código aberto “automaticamente” que, com a senha ou a chave de criptografia correta, descriptografará as informações que você estiver tentando ler ou os dados criptografados que você estiver tentando gravar na memória, dos e para os volumes criptografados. Mas não se preocupe – em nenhum momento seu volume ficará com um estado descriptografado. Um agressor poderá encontrar as informações que você estiver tentando proteger somente se você tiver um despejo de memória enquanto o aplicativo estiver descriptografando os dados na memória. Isso pode ser facilmente evitado ao desativar os despejos de memória do seu sistema, sem mencionar que há apenas uma pequena parte dos seus dados descriptografados na memória por vez.
O aplicativo oferece suporte a volumes virtuais e partições ou dispositivos físicos. Os volumes virtuais, apelidados de “contêineres de arquivos” pelos autores, podem ser criados com qualquer extensão de arquivo ou não ter nenhuma extensão. Portanto, os curiosos acharão que seus dados confidenciais são formados por dados aleatórios; não há “assinatura de arquivo” do TrueCrypt.
TrueCrypt
TrueCrypt (Clique na imagem para diminuir a exibição)
TrueCrypt
TrueCrypt (Clique na imagem para aumentar a exibição)
Além disso, é possível executar o TrueCrypt no “modo de viagem”, que significa que você pode criar um contêiner de arquivos em uma chave USB com os arquivos de aplicativos e levar seus dados criptografados para qualquer lugar sem precisar instalar o aplicativo TrueCrypt no sistema host. Mas, por causa da natureza de leitura/gravação por meio da memória, serão necessários privilégios administrativos no sistema que você usar seu disco de viagem.
O TrueCrypt tem um assistente simples para configurar seu disco de viagem. Esta pode ser uma excelente maneira de transportar suas informações de administração do sistema e para não se preocupar (muito) com os curiosos observando os seus dados corporativos confidenciais.
Para um nível extra de segurança, o TrueCrypt também permite a criação de um volume escondido dentro de um contêiner de arquivos, portanto, mesmo que um invasor descubra o volume externo, ele não saberá que há um volume interno escondido no disco. Todo o volume é inicializado com dados aleatórios, o que dificulta muito a detecção do volume escondido que reside no volume externo “espaço livre”.
O TrueCrypt pode usar AES, Blowfish, CAST5, Serpent, DES triplo, Twofish e algumas combinações desses algoritmos para criptografar seus dados. O aplicativo usa o modo de operação LRW para criptografia, o que se tornará um padrão IEEE para criptografia de armazenamento com base em setor. Para o algoritmo de hash do cabeçalho, você pode optar por usar Whirlpool, SHA-1 ou RIPEME-160 e o aplicativo não armazenará nenhum hash no seu sistema como uma camada de proteção adicionada. O aplicativo oferece suporte aos sistemas de arquivos FAT12, FAT16, FAT32 e NTFS, mas, da mesma forma que outros utilitários de criptografia do setor baseados em Windows, ele não permite a criptografia de partição de inicialização do Windows.
Preço: gratuito.

Revisão do livro
Hacking Web Services
www.charlesriver.com (em inglês)
O livro Hacking Web Services, de Shreeraj Shah (Charles River Media, 2006), é um recurso valioso para as pessoas envolvidas no desenvolvimento, na implantação ou no suporte de serviços da Web. O livro é uma referência de segurança geral bem organizada dos serviços da Web e das tecnologias de seus componentes. Ele detalha muito bem o que está envolvido na defesa deles em sua infra-estrutura e por meio de suas práticas de desenvolvimento.
O livro começa com uma introdução relativamente minuciosa dos serviços da Web. Um estudo de caso intitulado “The Consequences of Procrastination” explica o poder dos procedimentos de segurança preemptivos e as punições dos sistemas reativos. O capítulo intitulado “Web Services Scanning and Enumeration” discute como usar o wsChess, um kit de ferramentas de segurança do serviço da Web baseado em .NET do Net-Square (net-square.com/wschess/index.shtml (em inglês)), para serviços da Web de perfil e espaço.
O livro inclui um CD de utilitário, que contém um aplicativo de exemplo baseado em .NET chamado SOAPWall. Ele mostra como bloquear caracteres de injeção e estouros de buffer nos serviços da Web .NET. Além disso, o CD fornece demonstrações de diferentes tipos de ataques do serviço da Web.
Preço: US$49,95.
O livro Hacking Web Services, de Shreeraj Shah (Charles River Media, 2006), é um recurso valioso para as pessoas envolvidas no desenvolvimento, na implantação ou no suporte de serviços da Web. O livro é uma referência de segurança geral bem organizada dos serviços da Web e das tecnologias de seus componentes. Ele detalha muito bem o que está envolvido na defesa deles em sua infra-estrutura e por meio de suas práticas de desenvolvimento.
O livro começa com uma introdução relativamente minuciosa dos serviços da Web. Um estudo de caso intitulado “The Consequences of Procrastination” explica o poder dos procedimentos de segurança preemptivos e as punições dos sistemas reativos. O capítulo intitulado “Web Services Scanning and Enumeration” discute como usar o wsChess, um kit de ferramentas de segurança do serviço da Web baseado em .NET do Net-Square (net-square.com/wschess/index.shtml (em inglês)), para serviços da Web de perfil e espaço.
O livro inclui um CD de utilitário, que contém um aplicativo de exemplo baseado em .NET chamado SOAPWall. Ele mostra como bloquear caracteres de injeção e estouros de buffer nos serviços da Web .NET. Além disso, o CD fornece demonstrações de diferentes tipos de ataques do serviço da Web.
Preço: US$49,95.

Escreva para a Toolbox
Se você tiver uma ferramenta ou um utilitário favorito que queira apresentar aqui, escreva para o autor em tntools@microsoft.com.

As opiniões expressas nesta coluna são exclusivas do autor e não necessariamente refletem as opiniões da Microsoft. Todos os preços foram confirmados no momento da impressão e estão sujeitos a alteração.

Greg Steen é profissional de tecnologia, empresário e entusiasta. Ele está sempre buscando novos métodos e ferramentas para facilitar as operações e o desenvolvimento para os profissionais de TI.


 Destaque de utilit&#225;rio: Internet Explorer Administration Kit
Destaque de utilitário
Internet Explorer Administration Kit
Lance Whitney
Faça download do código deste artigo: Destaque de utilitário: Internet Explorer Administration Kit 7 (KB)

Seu CIO pediu para você instalar a versão mais recente do Internet Explorer 7 em toda a organização. O prazo é curto, o orçamento é escasso e os requisitos são muitos. Você precisa de um pacote personalizado que aplicará os mesmos recursos e configurações a todos os usuários. Também precisa alterar tais configurações sempre que necessário.
Além disso, você precisa bloquear o Internet Explorer® para que os usuários não consigam modificar nenhuma configuração. Como é possível criar e disponibilizar este tipo de instalação do Internet Explorer de forma rápida e fácil?
Aqui está a Microsoft para lhe ajudar com o Internet Explorer Administration Kit, normalmente conhecido como IEAK. Esta ferramenta de configuração grátis foi criada para ajudar administradores de TI, desenvolvedores, provedores e outras pessoas a criarem pacotes de instalação personalizados do Internet Explorer. Na verdade, o Yahoo! empregou a versão beta do IEAK 7 para criar um pacote do Internet Explorer 7 para fazer download do site da Yahoo!
A compilação do Internet Explorer 7 criada com o IEAK precisa incluir apenas os recursos e as opções especificadas. É possível habilitar configurações de segurança específicas e bloquear quaisquer controles que não devem ser acessados pelos usuários.
Após a implantação do Internet Explorer, todos aqueles que possuírem o Active Directory® poderão, evidentemente, usar a Diretiva de Grupo para controlar e atualizar as configurações do navegador. Ou, se preferirem, poderão usar o IEAK para gerenciar a matriz distinta de configurações do Internet Explorer.
O IEAK 7 é mais amigável do que as versões anteriores. Ele fornece uma interface gráfica simples para criação do pacote do Internet Explorer. As telas passo a passo o orientam na medida em que são selecionados os recursos e as opções para incorporá-los em sua compilação.
A nova versão do IEAK oferece poucas alterações em vista das versões anteriores, com algumas opções adicionadas e outras retiradas. Agora, é possível adicionar RSS feeds da Web padrão à compilação do Internet Explorer, apontar para mais de uma home page e uma página de pesquisa e adicionar suporte a um filtro antiphishing. Também é possível definir a Ferramenta de Remoção de Software Mal-Intencionado do Microsoft® Windows® para ser executada e atualizada. Entretanto, você não consegue mais personalizar o Outlook® Express e o Windows Media® Player com o IEAK porque esses aplicativos não são fornecidos com o Internet Explorer 7.
É possível criar um pacote do Internet Explorer para plataformas de 32 bits ou de 64 bits para Windows XP com Service Pack 2 (SP2), Windows Server® 2003 com SP1 ou Windows Vista™ com base em x86, em x64 ou em Itanium. Antes de executar o IEAK 7, o Internet Explorer 7 deve ser instalado no PC usado para criar o pacote. Quanto à compatibilidade, o IEAK deve ser executado em um computador com o mesmo sistema operacional que os computadores em que será aplicada a compilação.
Nesta coluna, abordaremos como usar o IEAK para criar sua compilação de instalação do Internet Explorer 7 e manter ou atualizar suas configurações do navegador.

Como obter o IEAK 7
Você pode fazer o download da versão mais recente do IEAK 7 gratuitamente em microsoft.com/technet/prodtechnol/ie/ieak7 (em inglês). Além disso, esta página fornece documentação e notas de versão do IEAK, que valem a pena serem lidas.
Ao instalar o IEAK 7 por meio do download do arquivo ieak.msi, você deverá informar que tipo de licença será usada na sua função provedor de acesso, provedor de conteúdo ou desenvolvedor, ou por meio de uma intranet corporativa. As telas exibidas e o tipo de pacote compilado variam, de acordo com a função escolhida. Portanto, se você estiver criando a compilação para um ambiente corporativo, selecione a função e a licença para uma intranet corporativa. Após a instalação do IEAK, um novo Grupo de programas, chamado Microsoft IEAK 7, será criado em seu menu Iniciar, contendo três itens – Ajuda do IEAK, Gerenciador de Perfis do IEAK e Assistente para personalização do Internet Explorer.
Você usará o Assistente para personalização do Internet Explorer para compilar seu pacote de instalação. O uso desse assistente é bastante simples na medida em que cada tela o conduz pelo processo de criação do pacote. Então, qual é o problema? Bem, saber como configurar cada opção requer um entendimento claro dos recursos e dos controles do Internet Explorer. Felizmente, o IEAK 7 também pode ajudar aqui. A ajuda interna da ferramenta está mais detalhada e descritiva do que nas versões anteriores. É exibido um botão Ajuda em cada tela do Assistente para personalização que explica as configurações e as opções da tela. É possível acessar todo o arquivo de ajuda do IEAK por meio do atalho Ajuda do IEAK ou do arquivo IEAKHelp.chm em C:\Arquivos de programas\Microsoft IEAK 7. Recomendo a leitura da documentação antes de criar sua compilação para entender cada componente e planejar as opções necessárias.
O Assistente para personalização divide a criação do pacote em cinco estágios distintos:
  1. Coletando informações
  2. Especificando parâmetros de instalação
  3. Personalizando a instalação
  4. Personalizando o navegador
  5. Personalização adicional
A Microsoft otimizou o números de telas que devem ser seguidas no IEAK 7, portanto, o processo está mais claro e mais fácil do que nas versões anteriores. Entretanto, o Assistente para otimização ainda chama muitas telas nas quais você escolhe as opções para o seu pacote. Por isso, não passarei por todas as telas desta coluna, muitas delas são auto-explicativas, e eu já expliquei como obter Ajuda para as mais complexas. Em vez disso, fornecerei uma descrição resumida sobre o que cada estágio faz e falarei um pouco sobre as telas mais importantes.
Estágio 1 Coletando informações Aqui você decide onde armazenar seu pacote de instalação, em qual sistema operacional e plataforma será executado, como você deseja distribuir o Internet Explorer e quais opções serão personalizadas. Neste estágio, é possível especificar qualquer um dos três métodos de distribuição do Internet Explorer 7, conforme exibido na Figura 1 – uma instalação Arquivo, que cria uma estrutura de diretório simples com os arquivos que compõe sua compilação; CD-ROM, que cria um disco de instalação (útil se você oferecer suporte a usuários remotos); e um pacote Somente configuração ou Somente marca, que aplica suas configurações personalizadas a uma instalação existente do Internet Explorer 7. Convém usar a opção mais recente do Windows Vista se o Internet Explorer 7 já estiver instalado e você desejar lhe atribuir suas próprias personalizações.
Figura 1 Especificando um método de distribuição
Figura 1 Especificando um método de distribuição (Clique na imagem para diminuir a exibição)
Figura 1 Especificando um método de distribuição
Figura 1 Especificando um método de distribuição (Clique na imagem para aumentar a exibição)
Neste estágio, também é possível especificar o idioma a ser usado na compilação. Pode-se criar versões localizadas do Internet Explorer 7 para cada idioma que você precisa oferecer suporte.
Estágio 2 Especificando parâmetros da instalação Aqui, você faz o download dos componentes e das atualizações mais recentes do Internet Explorer para compilar seu pacote.
Estágio 3 Personalizando a instalação Neste estágio, você escolhe a instalação que seus usuários receberão: Interativa (são apresentadas escolhas ao usuário durante a instalação), Não assistida (o usuário vê o processo de instalação, mas não pode intervir) ou Totalmente silenciosa (a instalação é executada completamente em segundo plano sem interação do usuário). Se você estiver compilando um CD-ROM, este estágio solicitará a criação de uma página inicial e de outros elementos para o CD.
Estágio 4 Personalizando o navegador Aqui, você personaliza a aparência do Internet Explorer; define os URLs da Home Page, da Página de suporte e dos Favoritos; define suas configurações de proxy; e estabelece as configurações de privacidade e de segurança do navegador. Neste estágio, também é possível especificar o nome e o local de um arquivo de configuração automática ou um INS (arquivo de configurações de Internet), com o qual você pode gerenciar as configurações do navegador, caso não planeje usar a Diretiva de Grupo.
O INS é um arquivo de texto simples que contém todas as configurações principais do navegador, da home page, passando pelos Favoritos, opções de segurança e configuração de proxy. Esse arquivo INS é armazenado em um servidor Web interno. Cada PC aponta para esse arquivo para obter as configurações do navegador. Se você precisar modificar qualquer configuração posteriormente, apenas edite o arquivo INS e seus usuários receberão automaticamente a alteração. Você pode especificar a freqüência em que as configurações são atualizadas e aplicadas.
Além disso, neste estágio, você tem a oportunidade de estabelecer seus servidores proxy, inserindo os endereços IP e os números de porta tanto manualmente, quanto criando e especificando o nome de um arquivo JScript® (JS), JVS (JavaScript) ou PAC (configuração automática de proxy) com suas informações de proxy. A Ajuda do IEAK fornece exemplos de código que podem ser usados para criar estes arquivos.
Também é possível habilitar o Modo protegido, caso esteja criando um pacote do Internet Explorer 7 no e para o Windows Vista. Você apenas ativa o Modo protegido no Internet Explorer 7 em seu PC de referência e importa a configuração no IEAK.
Estágio 5 Personalização adicional Por fim, neste estágio, você define as diretivas de usuário e as restrições de segurança de sua compilação. É possível bloquear, de forma seletiva, as configurações individuais que você não quer que os usuários vejam ou modifiquem. A Figura 2 exibe a tela Configurações adicionais com cinco categorias de controle que devem ser habilitadas ou desabilitadas. As configurações dessas telas são descritas a partir de cinco modelos ADM do Internet Explorer 7, que são instalados após o download dos componentes mais recentes do navegador no Estágio 2 do assistente. Se você usar a Diretiva de Grupo, poderá ignorar este estágio. Caso contrário, poderá configurar as opções nas cinco categorias. Como estas categorias são provenientes diretamente dos modelos ADM, também é possível modificá-las ao editar cada arquivo ADM em um editor de texto para adicionar seus próprios controles personalizados. Os arquivos ADM estão localizados em C:\Arquivos de programas\Microsoft IEAK 7\pol-icies em subdiretórios diferentes para cada sistema operacional e plataforma Windows. A Figura 3 exibe as cinco categorias com uma descrição resumida de cada uma.
Figure 3 Categorias da tela Configurações adicionais (Close Figure 3)

Categoria | Descrição
Gerenciamento de controles | Essa categoria permite habilitar ou desabilitar determinados controles do ActiveX. As configurações dessa categoria não se aplicam ao Windows Vista, apenas ao Windows XP e ao Windows Server 2003.
Configurações personalizadas | Essa categoria exibe configurações de segurança. É possível habilitar ou desabilitar determinados controles e ações por zona (Internet, Intranet, Sites confiáveis ou Sites restritos).
Configurações corporativas | Nessa categoria, é possível definir o tamanho e os parâmetros do cache do navegador.
Restrições corporativas | Aqui é possível bloquear controles e telas específicos ao Internet Explorer para que seus usuários não os vejam. Tais configurações não se aplicam ao Windows Vista, apenas ao Windows XP e ao Windows Server 2003.
Configurações da Internet | Essa categoria oferece as opções Preenchimento Automático, exibir tamanho e configurações avançadas exibidas no menu Opções da Internet do Internet Explorer.
Figura 2 Personalizando recursos do Internet Explorer
Figura 2 Personalizando recursos do Internet Explorer (Clique na imagem para diminuir a exibição)
Figura 2 Personalizando recursos do Internet Explorer
Figura 2 Personalizando recursos do Internet Explorer (Clique na imagem para aumentar a exibição)

Verificando a compilação
Após a conclusão das telas do Assistente para personalização, o pacote será criado no local especificado no Estágio 1 ou por padrão em c:\builds. Aqui será o diretório de destino – o IEAK usa a data atual para nomear esse diretório, por exemplo, 01012007 para 1º de janeiro de 2007. Aqui haverá dois caminhos do subdiretório, um chamado INS e outro com o nome do método de distribuição escolhido, FLAT, CD ou BrndOnly.
O diretório INS age como um espaço de trabalho ou um repositório que acompanha as personalizações de acordo com a compilação do pacote. Um arquivo de texto desse diretório chamado install.ins armazena todas as configurações criadas. Se você reinicializar o Assistente para personalização, suas seleções anteriores serão selecionadas automaticamente a partir deste arquivo.
Os diretórios FLAT, CD ou BrndOnly armazenam os arquivos de instalação reais. Em qualquer um desses três locais estará um subdiretório nomeado para o sistema operacional e a plataforma, como WIN32 para Windows XP ou Windows Vista de 32 bits. O subdiretório final é nomeado para o idioma usado no pacote, como EN para inglês. Por exemplo, se você criar uma compilação no dia 1º de janeiro de 2007 usando uma distribuição Plana para Windows de 32 bits em inglês, o caminho do diretório da sua compilação será c:\builds\01012007\FLAT\WIN32\EN.
Para localizar a instalação criada com um método de distribuição Plana, faça uma busca detalhada na estrutura do diretório FLAT até encontrar o arquivo IE7Setup.exe no subdiretório do idioma. Ele é um executável auto-extraível que contém todos os arquivos binários e de configuração que compõe a compilação. Este arquivo é tudo o que você precisa para implantar seu pacote do Internet Explorer 7 (os arquivos do diretório INS não são necessários para instalação). É possível copiar este arquivo único para o servidor de distribuição para testar o pacote e, quando estiver pronto, implantá-lo para seus usuários.
Se você escolher uma distribuição de CD-ROM, deverá copiar tudo o que estiver no diretório CD para o CD. Isso inclui um arquivo autorun.inf, gerado automaticamente, e um diretório com o arquivo executável que instala o Internet Explorer a partir do CD.
Se você compilar um pacote Somente configuração ou Somente marca, terá que fazer uma busca detalhada na estrutura do diretório BrndOnly até encontrar o arquivo Setup.exe no subdiretório do idioma. Ele é um executável auto-extraível, que pode ser copiado para seu servidor de distribuição da implantação.

Gerenciando suas configurações
O pacote do Internet Explorer 7 contém todos os recursos e configurações necessários inicialmente. Mas o que fazer quando você precisar alterar uma opção? Há duas opções. Se você tiver um Active Directory, poderá atualizar as configurações do seu navegador usando a Diretiva de Grupo. Caso contrário, o IEAK fornecerá uma ferramenta chamada Gerenciador de Perfis para modificar as configurações. Primeiro, vamos analisar resumidamente a Diretiva de Grupo.
Usando Diretivas de Grupo A Diretiva de Grupo é o melhor método de gerenciamento do Internet Explorer, pois oferece suporte a todas as configurações do navegador. Com as versões anteriores do IEAK e do Internet Explorer, era necessário adicionar arquivos ADM e IEM (manutenção do Internet Explorer) ao console da Diretiva de Grupo para incorporar todas as configurações do Internet Explorer. Mas no Internet Explorer 7, o Windows XP SP2 e o Windows Vista incluem todas as configurações da Diretiva de Grupo necessárias para manter e atualizar o navegador.
Se você abrir o Editor de Diretivas de Grupo (gpedit.msc), localizará todas as configurações necessárias do Internet Explorer 7 em Modelos administrativos | Componentes do Windows | Internet Explorer.
Usando o Gerenciador de Perfis do IEAK com o Gerenciador de Perfis do IEAK é possível compilar e criar a configuração automática, ou o arquivo INS, para armazenar as configurações do Internet Explorer 7. O Gerenciador de Perfis inicialmente exige o carregamento ou a criação de um arquivo INS. É possível iniciar do zero e criar um arquivo INS com as mesmas configurações definidas no Assistente para personalização. Mas para quê duplicar o trabalho? Ao compilar seu pacote do IEAK criado, o arquivo install.ins padrão armazena as configurações do navegador. Em vez de criar outro arquivo INS no Gerenciador de Perfis, use o install.ins. Para carregar este arquivo, navegue para o caminho INS no seu diretório de compilações e vá para c:\builds\01012007\INS. Faça uma busca detalhada nos subdiretórios restantes até encontrar o arquivo.
O Gerenciador de Perfis divide suas configurações em duas seções, como você pode observar na Figura 4. As Configurações do assistente abordam opções do navegador, tais como home page, configurações de proxy e zonas de segurança. Elas correspondem às configurações dos Estágios 3 a 5 do Assistente para personalização. A seção Diretivas e Restrições controla as restrições do usuário e corresponde às configurações das cinco categorias de Diretivas e Restrições do Estágio 5 do Assistente para personalização.
Figura 4 Configurando o Internet Explorer usando o Gerenciador de Perfis
Figura 4 Configurando o Internet Explorer usando o Gerenciador de Perfis (Clique na imagem para diminuir a exibição)
Figura 4 Configurando o Internet Explorer usando o Gerenciador de Perfis
Figura 4 Configurando o Internet Explorer usando o Gerenciador de Perfis (Clique na imagem para aumentar a exibição)
Como essas configurações já foram definidas na compilação do pacote, não é necessário modificar nada. No entanto, está é uma boa oportunidade para você revisar todas as configurações escolhidas para o pacote para verificar se estão corretas.
Após verificar as configurações no Gerenciador de Perfis, salve o arquivo install.ins em algum lugar e copie-o para um servidor Web interno. Para fazer isto, será necessário inserir o caminho UNC (convenção universal de nomenclatura) do servidor, o mesmo caminho especificado na tela Configuração automática do Estágio 4 do Assistente para personalização. Também será solicitado que você salve um arquivo CAB com o arquivo INS, exibido na Figura 5. Por quê? Ao modificar suas configurações do Internet Explorer 7 com o Gerenciador de Perfis, o IEAK geralmente precisa fazer o download de entradas do Registro para seus clientes Windows. Essas entradas são armazenadas nos arquivos INF, que são armazenados em um arquivo CAB. Se o número de versão do arquivo INS for alterado devido a modificações, um novo arquivo CAB será gerado para download. Armazene o arquivo CAB no mesmo local do servidor Web que seu arquivo INS.
Figura 5 Salvando seus arquivos de configuração automática
Figura 5 Salvando seus arquivos de configuração automática (Clique na imagem para diminuir a exibição)
Figura 5 Salvando seus arquivos de configuração automática
Figura 5 Salvando seus arquivos de configuração automática (Clique na imagem para aumentar a exibição)
Convém fazer cópias dos arquivos INS e CAB e salvá-los em locais diferentes do seu servidor Web. Pense nisso como cópias de backup e de teste. Ao modificar as configurações do Internet Explorer com o Gerenciador de Perfis, no futuro, será possível carregar e modificar seu arquivo INS de teste para testar as alterações antes de modificar o arquivo INS ativo.
É muito simples alterar uma configuração do navegador ou controlar por meio do Gerenciador de Perfis. É possível habilitar ou desabilitar qualquer uma das opções apenas selecionando a categoria apropriada. Após fazer as alterações, salve novamente o arquivo INS e copie-o no seu servidor.
Mais uma recomendação: o arquivo INS é um arquivo de texto simples. É possível abri-lo no Bloco de notas para exibir suas configurações. É possível editar o arquivo INS no Bloco de notas? Sim. E as configurações serão aplicadas. Entretanto, o uso do Gerenciador de Perfis para modificar o arquivo INS fornece alguns benefícios. O Gerenciador de Perfis gera automaticamente um arquivo CAB, caso seja necessário, e apresenta o arquivo INS com um novo número de versão cada vez que ele é modificado. Portanto, você deve sempre usar o Gerenciador de Perfis para modificar o arquivo INS.

Conclusão
O IEAK é uma ferramenta eficiente para criação e personalização da compilação rápida e eficiente do Internet Explorer 7. A versão mais recente, IEAK 7, pode se orgulhar dos aprimoramentos em relação às versões anteriores (telas mais claras, Ajuda mais útil) para a criação do seu pacote de instalação. Ao compreender e usar o IEAK, você conseguirá disponibilizar uma instalação do Internet Explorer 7 confiável para seus usuários e agradar seu CIO ao mesmo tempo.
Entrega automática do Internet Explorer 7
A Microsoft planeja distribuir o Internet Explorer 7 como uma atualização de alta prioridade por meio das Atualizações Automáticas e dos sites Windows Update e Microsoft Update logo após o lançamento da versão final do Internet Explorer 7. Isso pode representar um problema para você como administrador, dependendo do seu ambiente. Se seus usuários não tiverem direitos de administrador local, não receberão a atualização. Além disso, se você gerenciar seu ambiente com SMS (Microsoft Systems Management Server) ou WSUS (Windows Server Update Services), já controlará as atualizações que seus usuários receberão. Se, no entanto, alguns ou todos os usuários tiverem direitos de administrador local e você não tiver nenhum sistema para gerenciar as atualizações, talvez seja necessário bloquear a atualização do Internet Explorer 7. A Microsoft criou o Internet Explorer 7 Blocker Toolkit. Esse Kit de Ferramentas (disponível em Microsoft Download Center) (em inglês) inclui um modelo de Diretiva de Grupo e um script que define uma chave de Registro para evitar a execução de atualização do Internet Explorer 7.

Lance Whitney é consultor de TI, instrutor e redator técnico. Ele criou e ofereceu suporte aos pacotes de instalação do Internet Explorer desde a versão 4.0. No início da carreira, era jornalista e deu um tiro no escuro no mundo de TI há aproximadamente 15 anos.


 SQL P+R: Arquivamento de dados, Servidores vinculados, Medi&#231;&#227;o de banda larga e muito mais
SQL P+R
Arquivamento de dados, Servidores vinculados, Medição de banda larga e muito mais
Editado por Nancy Michell

Arquivamento de Dados
P Preciso de uma estratégia de arquivamento de dados completa para o meu grupo. Minha abordagem atual se baseia no modelo padrão de backup de dados e na execução de utilitários que eliminam dados históricos. Se os dados eliminados precisarem ser recuperados, o ambiente e banco de dados serão restaurados.
Estou procurando uma solução de arquivamento que possa ser feita em estágios. No estágio um, os dados seriam eliminados do banco de dados mas ainda estariam acessíveis em tempo real. Em outras palavras, os dados são removidos para que o tamanho do banco de dados de produção seja gerenciável, mas usuários finais ainda conseguem acessar os dados. No estágio dois, os dados seriam removidos completamente e seria necessária uma restauração para ter acesso a eles. Como posso fazer isso?
R Seria mais fácil restaurar a cópia do arquivo do banco de dados, depois modificar o aplicativo para acessar o banco de dados novo e ajustado ou o velho sem ajustes se o usuário assim o desejar. Em decorrência disso, você terá uma cópia do banco de dados de cada período eliminado.
Se as alterações dos dados forem lentas e a maior parte dos dados não mudar entre as eliminações, você acabará ficando com muito espaço excedente e perdido. Por outro lado, como não é acessado com freqüência, provavelmente, você possa colocar esses dados arquivados em algumas unidades maiores, mais lentas e de baixo custo (em vez de em muitas unidades pequenas, velozes e caras). Se os dados forem totalmente atualizados a cada período, isso será bom. Esse processo deve ser bem fácil de gerenciar e praticamente seguro. (Este artigo também contém links para páginas em inglês.)
. Embora os instantâneos possam funcionar bem em alguns cenários, eles também têm inúmeras implicações. Instantâneos de banco de dados são “copiar ao gravar” e sempre atualizam alterações entre o banco de dados original e o “estado atual” quando o instantâneo é criado. Se houver muitas alterações no original, o instantâneo poderá ficar razoavelmente grande.
De certo modo, o instantâneo do banco de dados é o oposto de backup e restauração. O primeiro faz sentido quando você antecipa somente algumas alterações, visto que só armazena deltas, enquanto o segundo é melhor quando você antecipa muitas alterações. Nesse caso, o beneficio de economizar espaço "copiar ao gravar" evapora na medida em que persiste a dificuldade de gerenciar instantâneos.
Outra opção seria usar table partitioning. Isto lhe permite usar determinadas tabelas, designar os intervalos de valores-chave como pertencentes a diferentes partições e, depois, colocar tais partições em diferentes grupos de arquivos. Uma vez que você tenha controle sobre os dados que são inseridos em um grupo de arquivos de uma tabela, é possível ter mais controle sobre os custos associados. Você pode escolher os grupos de arquivos que serão inseridos nas unidades físicas (consulte nota anterior sobre unidades baratas vs. caras). Se transformar tais grupos de arquivos como somente leitura, você também poderá usar partial backups.

Quantidade de banco de dados
P Minha empresa pretende implementar e hospedar um aplicativo que a atenda aproximadamente 5.000 de nossos clientes. Gostaríamos de implementar um banco de dados por cliente para assegurar confidencialidade. Os recursos do servidor seriam usados de forma menos eficiente para determinados dados e tamanho de índice, número de conexões por usuário e carga de trabalho se fosse um só banco de dados ou 5.000?
R Independente do tamanho de sua equipe, manter a mesma base de código entre os banco de dados seria difícil. A correção de um bug no código do banco de dados precisaria ser feita 5.000 vezes. Além disso, a recuperação do banco de dados seria monstruosa, visto que levaria muito tempo para executar as tarefas, como backups e verificação de consistência do banco de dados. Pense nisso desta maneira – um banco tem um banco de dados separado no host para cada cliente que possua uma conta bancária?
O SQL Server™ pode criar muitos, muitos bancos de dados, mas isto nem sempre é o melhor caminho. Imagine apenas o trabalho necessário para executar uma transação em cada banco de dados no mesmo período; sendo que cada banco de dados tem seu próprio log de transações. Como todos nós sabemos, uma solução para desempenho OLTP (transação online) é manter um ambiente em que o log de transações tire proveito de gravações seqüenciais de seu disco base. Se quiser executar transações nesses bancos de dados em vez de apenas fazer leitura a partir deles, não use essa abordagem.

Consultando um servidor vinculado
P Estou desenvolvendo um data warehouse no SQL Server 2005 Service Pack 1 (SP1). Nosso servidor de origem está no domínio de um parceiro e o servidor de destino está no nosso domínio. Estamos buscando os registros da origem por intermédio do servidor vinculado. Quando executamos uma consulta na origem com associações entre as tabelas de origem, a consulta é executada rapidamente. Entretanto, quando temos uma associação simples com nossas tabelas de destino, a consulta demora muito. Por quê?
R A melhor prática é evitar associações entre servidores, especialmente em um limite de domínio. Posto isso, com base em seus resultados particulares, esse problema pode ocorrer porque seus sócios confiam no seu domínio, mas você não confia no domínio deles. Tente recalcular sua consulta para executá-la a partir da origem e, depois, copie os resultados no destino. Isto pode gerar um resultado melhor.

Medindo banda larga
P Existe uma prática recomendada para medir a banda larga usada no espelhamento do banco de dados? Entendo que há uma exigência que precisa ser de aproximadamente três vezes maior do que a taxa de geração do log, mas se uma demanda não for pesada, é possível executar o espelhamento do banco de dados em uma conexão da banda larga na Web?
R Além da taxa de transferência bruta, é preciso considerar a latência da mensagem de ida e volta (mais crítico se safety=full) e também a confiabilidade do link. O espelhamento do banco de dados é otimizado para uma conexão de rede confiável, podendo haver um volume razoável de sobrecarga na reconexão. Se a conexão de banda larga estiver instável (queda de conexão ou atrasos longos) talvez não consiga manter a conexão. Para obter mais ajuda, consulte whitepaper on mirroring performance considerations.
Acesso seguro ao SQL Server
Está procurando recomendações para obter acesso seguro ao SQL Server em um ambiente de produção? Experimente Microsoft patterns & practices Developer Center. Três padrões podem ser de especial interesse:
  • Índice de engenharia de segurança
  • Security Guidance for Applications Index
  • Threat Modeling Web Applications

Quer detalhes sobre como configurar um ambiente operacional completo? Aqui há duas referências boas:
  • Windows Server System Reference Architecture
  • Data Services Implementation Guide

Meus agradecimentos aos seguintes profissionais de TI da Microsoft por seus conhecimentos técnicos: Denis Altudov, Jayashree Anand, Gus Apostol, Bhavana Bartholf, Mike Blaszczak, Dibyendu Chakraverty, Shaun Cox, Laurentiu Cristofor, Ernie DeVore, Michael Epprecht, Nakul Garg, Phil Hummel, Steve Lindell, Kaloian Manassiev, Al Noel, Ward Pond, Paul Randal, Remus Rusanu, Mike Shelton, Christy Sutton, Kevin Tsai, Peter Ty, Val Wittenberg, Steven Wort, Kalyan Yella e Frankie Yuen.


 The Cable Guy: Auto-ajuste da janela de recep&#231;&#227;o TCP
The Cable Guy
Auto-ajuste da janela de recepção TCP
Joseph Davies

Bem-vindo à primeira edição de The Cable Guy na TechNet Magazine. Os fãs da coluna no site da TechNet já sabem que cobrimos todo o tipo de questões de sistemas de redes e que continuaremos essa tradição aqui, todo mês. Se você for novo por aqui e estiver procurando um arquivo com as colunas anteriores, dirija-se ao site The Cable Guy.
Agora, vamos começar com nosso primeiro tópico aqui: a janela de recepção TCP.
A taxa de transferência sobre conexões TCP pode se limitar ao envio e recebimento de aplicativos e implementações de TCP e ao caminho de transmissão entre os itens TCP de mesmo nível. Nesta coluna, descreverei a janela de recepção TCP e seu impacto sobre a taxa de transferência de TCP, o uso de dimensionamento de janela de TCP e o novo recurso Auto-ajuste da janela de recepção do Windows Vista que otimiza a taxa de transferência de TCP quanto a dados recebidos.

Janela de recepção TCP
As conexões TCP possuem uma série de características importantes. Primeiro, são um circuito lógico ponto a ponto entre dois protocolos de Camada de Aplicativo. O TCP não fornece um serviço de entrega de um-para-muitos, mas apenas de um-para-um.
Segundo, as conexões TCP são orientadas por conexão. Antes de os dados serem transferidos, dois processos de Camada de Aplicativo devem negociar formalmente uma conexão TCP, usando o processo de estabelecimento de conexão TCP. Similarmente, as conexões TCP são formalmente fechadas após a negociação, usando o processo de término de conexão TCP.
Terceiro, os dados confiáveis enviados em uma conexão TCP são seqüenciados e espera-se uma confirmação positiva do destinatário. Caso não seja recebida uma confirmação positiva, o segmento é retransmitido. No destinatário, segmentos duplicados são descartados e segmentos que chegam fora de seqüência são recolocados na ordem certa.
Quarto, as conexões TCP são full duplex. Para cada item TCP de mesmo nível, a conexão TCP consiste em dois pipes lógicos: um pipe de saída e outro de entrada. O cabeçalho de TCP contém tanto o número de seqüência dos dados de saída, quanto uma ACK (confirmação) dos dados de entrada.
Além disso, o TCP exibe os dados enviados pelos pipes lógicos de entrada e saída como um fluxo contínuo de bytes. O número de seqüência e o número de confirmação em cada cabeçalho de TCP são definidos por limites de byte. O TCP não reconhece os limites de registro ou mensagens dentro do fluxo de bytes. O protocolo de Camada de Aplicativo deve fornecer a análise adequada do fluxo de bytes de entrada.
Para limitar a quantidade de dados que pode ser enviada por vez, a qualquer tempo, e para proporcionar controle de fluxo do destinatário, os itens TCP de mesmo nível utilizam uma janela. A janela representa a distribuição dos dados no fluxo de bytes que o destinatário permite que o remetente envie. O remetente pode enviar somente os bytes do fluxo que se encontram dentro da janela. A janela desliza ao longo do fluxo de bytes de saída do remetente e do fluxo de bytes de entrada do destinatário.
Para um dado pipe lógico (uma direção da conexão TCP full duplex), o remetente mantém uma janela de envio e o destinatário, uma janela de recepção. Quando não há segmentos de dados ou de ACK em trânsito, as janelas de envio e recepção do pipe lógico tornam-se coincidentes. Em outras palavras, a distribuição dos dados no fluxo de bytes de saída que o remetente tem permissão de enviar coincide com a distribuição dos dados no fluxo de bytes de entrada que o destinatário consegue receber. A Figura 1 ilustra essa relação de envio e recebimento.
Figura 1 Coincidindo as janelas de envio e recepção
Figura 1 Coincidindo as janelas de envio e recepção (Clique na imagem para diminuir a exibição)
Figura 1 Coincidindo as janelas de envio e recepção
Figura 1 Coincidindo as janelas de envio e recepção (Clique na imagem para aumentar a exibição)
Para indicar o tamanho da janela de recepção, o cabeçalho de TCP contém um campo Window de 16 bits. Quando o destinatário recebe os dados, ele envia ACKs de volta ao remetente, indicando os bytes recebidos com êxito. Em cada ACK, o campo Window anota o número de bytes restantes na janela de recepção. Quando os dados são enviados, confirmados e recuperados pelo aplicativo, ambas as janelas, de envio e recepção, deslizam para a direita. A janela de recepção é a que controla quantos dados de confirmação podem estar em trânsito do remetente para o destinatário.
Como pode haver dados na janela de recepção que não tenham sido recuperados pelo aplicativo, bem como dados recebidos, mas não confirmados, a janela de recepção TCP possui estrutura adicional, como mostra a Figura 2.
Figura 2 Tipos de dados na Janela de recepção TCP
Figura 2 Tipos de dados na Janela de recepção TCP (Clique na imagem para diminuir a exibição)
Figura 2 Tipos de dados na Janela de recepção TCP
Figura 2 Tipos de dados na Janela de recepção TCP (Clique na imagem para aumentar a exibição)
Note a diferença entre as janelas de recepção máxima e atual. A janela de recepção máxima é de tamanho fixo. A janela de recepção atual é de tamanho variável e coincide com a quantidade de dados restante que o destinatário permite que o remetente envie. O tamanho da janela de recepção atual é o valor do campo Window anunciado nas ACKs enviadas de volta ao remetente, e é a diferença entre o tamanho máximo da janela de recepção e a quantidade de dados recebidos e confirmados, mas não recuperados pelo aplicativo.

Janela de recepção TCP e a taxa de transferência de TCP
Para otimizar a taxa de transferência de TCP (supondo um caminho de transmissão razoavelmente livre de erros), o remetente deve enviar pacotes suficientes para preencher o pipe lógico entre ele e o destinatário. A capacidade do pipe lógico pode ser calculada pela seguinte fórmula:
Capacity in bits = path bandwidth in bits per second * round-trip time (RTT) in seconds
A capacidade é conhecida como BDP (produto de atraso da largura de banda). O pipe pode ser gordo (alta largura de banda) ou magro (baixa largura de banda) e curto (baixo RTT) ou longo (alto RTT). Pipes gordos e longos têm o maior BDP. Exemplos de caminhos de transmissão de BDP alto são aqueles por satélite ou redes remotas (WANs) empresariais que contêm links intercontinentais de fibra ótica.
Aumentando o desempenho do remetente em transmissão de BDP alto
O novo recurso Auto-ajuste da janela de recepção proporciona um desempenho aprimorado para receber dados por links de BDP alto; mas, e o desempenho do remetente?
Os algoritmos existentes que impedem um item TCP de mesmo nível do remetente de sobrecarregar a rede são conhecidos como partida lenta e evitação de congestionamento. Esses algoritmos aumentam a janela de envio (o número de segmentos que o remetente pode enviar) ao enviar dados inicialmente na conexão e ao recuperar a partir de um segmento perdido.
A partida lenta aumenta a janela de envio de um segmento TCP inteiro para cada segmento de confirmação recebido (TCP em Windows XP e Windows Server 2003) ou para cada segmento confirmado (TCP em Windows Vista e Windows Server "Longhorn"). A evitação de congestionamento aumenta a janela de envio de um segmento TCP inteiro para cada janela de dados inteira que é confirmada.
Esses algoritmos funcionam bem para BDPs pequenos e tamanhos menores de janela de recepção. Entretanto, quando há uma conexão TCP com uma janela de recepção de tamanho grande e um BDP grande, como a replicação de dados entre dois servidores localizados por meio de um link WAN de alta velocidade, com tempo de viagem de ida e volta de 100 ms, esses algoritmos não aumentam a velocidade da janela de envio o bastante para utilizar totalmente a largura de banda da conexão.
Para utilizar melhor a largura de banda de conexões TCP nessas situações, a pilha TCP/IP de última geração contém CTCP (TCP Composto). O CTCP aumenta mais agressivamente a janela de envio para conexões com tamanhos grandes de janela de recepção e BDPs. O CTCP tenta maximizar a taxa de transferência nesses tipos de conexão, monitorando as variações de demora e as perdas. Além disso, o CTCP garante que seu comportamento não afete negativamente outras conexões TCP.
Em testes executados internamente na Microsoft, tempos de backup de arquivos grandes foram reduzidos quase pela metade em uma conexão de 1 Gbps com RTT de 50 ms. Conexões com BDP maior podem ter um desempenho ainda melhor. O CTCP e o Auto-ajuste da janela de recepção trabalham juntos para aumentar a utilização do link e podem resultar em ganhos substanciais de desempenho em conexões com BDPs grandes.
O CTCP encontra-se habilitado por padrão em computadores que executam o Windows Server "Longhorn" e desabilitados por padrão em computadores que executam o Windows Vista. É possível habilitar o CTCP com o comando "netsh interface tcp set global congestionprovider=ctcp". É possível desabilitar o CTCP com o comando "netsh interface tcp set global congestionprovider=none".

O tamanho do campo Window no cabeçalho de TCP é de 16 bits, o que permite a um item TCP de mesmo nível anunciar um tamanho máximo de janela de recepção de 65.535 bytes. É possível calcular a taxa de transferência aproximada para um dado tamanho de janela TCP através da seguinte fórmula:
Throughput = TCP maximum receive windowsize / RTT
Por exemplo, com uma janela de recepção de 65.535 bytes, é possível obter apenas uma taxa de transferência aproximada de 5,24 megabits por segundo (Mbps) em um caminho com RTT de 100 ms, indiferentemente da largura de banda real do caminho de transmissão. Com os caminhos de transmissão de BDP alto de hoje, o tamanho de janela TCP criado originalmente, mesmo em seu valor máximo, provoca um gargalo no tráfego.

Dimensionamento da janela TCP
Para que tamanhos de janela maiores acomodem caminhos de transmissão de alta velocidade, o RFC 1323 (ietf.org/rfc/rfc1323.txt) define o dimensionamento de janela que permite ao destinatário anunciar um tamanho de janela maior do que 65.535 bytes. Uma opção de Dimensionamento de janela TCP contém um fator de dimensionamento de janela que, quando combinado com o campo Window de 16 bits no cabeçalho de TCP, pode aumentar o tamanho da janela de recepção a um máximo de, aproximadamente, 1 GB. A opção Dimensionamento de janela é enviada somente em segmentos SYN (sincronizados) durante o processo de estabelecimento da conexão. Ambos os itens TCP de mesmo nível podem indicar fatores de dimensionamento de janela diferentes para uso no tamanho de suas janelas de recepção. Ao permitir que um remetente envie mais dados em uma conexão, o dimensionamento de janela TCP permite que os nós TCP utilizem melhor alguns tipos de caminho de transmissão com BDPs altos.
Embora o tamanho da janela de recepção seja importante para a taxa de transferência de TCP, um outro fator importante para determinar a melhor taxa de transferência de TCP é a velocidade com que o aplicativo recupera os dados acumulados na janela de recepção (a taxa de recuperação do aplicativo). Se o aplicativo não recuperar os dados, a janela de recepção pode começar a ficar cheia, fazendo com que o destinatário anuncie um tamanho menor de janela atual. Em casos extremos, a janela de recepção máxima lota, fazendo com que o destinatário anuncie um tamanho de janela de 0 byte. Nesse caso, o remetente deve interromper o envio de dados até que a janela de recepção esvazie. Portanto, para otimizar a taxa de transferência de TCP, a janela de recepção TCP da conexão deve ser definida como um valor que reflita tanto o BDP do caminho de transmissão da conexão, quanto a taxa de recuperação do aplicativo.
Mesmo que você consiga determinar corretamente o BDP e a taxa de recuperação do aplicativo, eles podem mudar no decorrer do tempo. A taxa de BDP pode variar segundo o congestionamento no caminho de transmissão e a taxa de recuperação do aplicativo, com base no número de conexões das quais o aplicativo está recebendo dados.

Janela de recepção no Windows XP
Para a pilha TCP/IP do Windows XP (e Windows Server® 2003), o tamanho máximo da janela de recepção possui uma série de atributos significativos. Primeiro, o valor padrão se baseia na velocidade do link da interface do remetente. O valor real se ajusta automaticamente a incrementos idênticos de MSS (tamanho máximo de segmento) negociados durante o estabelecimento da conexão TCP.
Segundo, o tamanho máximo da janela de recepção pode ser configurado manualmente. Os valores do Registro HKLM\System \CurrentControlSet\Services\Tcpip\Parameters\TCPWindowSize e HKLM\System\CurrentControlSet\Services\Tcpip\Parameters\Interface\InterfaceGUID\TCPWindowSize podem ser configurados como um máximo de 65.535 bytes (sem dimensionamento de janela) ou 1.073.741.823 (com dimensionamento de janela).
Terceiro, o tamanho máximo da janela de recepção pode usar dimensionamento de janela. É possível habilitar o dimensionamento de janela definindo o valor do Registro HKLM\System\CurrentControlSet\Services\Tcpip\Parameters\Tcp1323Opts como 1 ou 3. Por padrão, o dimensionamento de janela é usado em uma conexão apenas se o segmento SYN recebido contiver a opção Dimensionamento de janela.
Finalmente, o tamanho máximo da janela de recepção pode ser especificado por um aplicativo, por meio da opção SO_RCVBUF do Windows Sockets, quando uma conexão é iniciada. Para o dimensionamento da janela, o aplicativo deve especificar um tamanho de janela superior a 65.535 bytes.
Apesar de permitir o dimensionamento de janelas, o tamanho máximo da janela de recepção no Windows XP pode, mesmo assim, limitar a taxa de transferência, pois se trata de um tamanho máximo fixo para todas as conexões TCP (a menos que seja especificada pelo aplicativo), o que pode aumentar a taxa de transferência em algumas conexões e diminuir em outras. Além disso, o tamanho fixo máximo da janela de recepção em uma conexão TCP não varia com alterações na taxa de recuperação do aplicativo ou o congestionamento no caminho de transmissão.

Auto-ajuste da janela de recepção no Windows Vista
Para otimizar a taxa de transferência de TCP, especialmente em caminhos de transmissão com BDP alto, a pilha TCP/IP de próxima geração, no Windows Vista (e na próxima versão do Windows Server, de codinome "Longhorn"), dá suporte ao Auto-ajuste da janela de recepção. Este recurso determina o melhor tamanho de janela de recepção, medindo o BDP e a taxa de recuperação do aplicativo e adaptando o tamanho de janela para as condições momentâneas de caminho de transmissão e aplicativo.
O auto-ajuste da janela de recepção permite o dimensionamento de janela TCP por padrão, permitindo um tamanho máximo de janela de recepção de até 16 MB. À medida que os dados atravessam a conexão, a pilha TCP/IP de próxima geração monitora a conexão, mede seu BDP atual e a taxa de recuperação do aplicativo e ajusta o tamanho da janela de recepção de modo a otimizar a taxa de transferência. A pilha TCP/IP de próxima geração não usa mais o valor TCPWindowSize do Registro.
O auto-ajuste da janela de recepção traz uma série de benefícios. Ele determina, automaticamente, o melhor tamanho de janela de recepção a cada conexão. No Windows XP, o valor TCPWindowSize do Registro se aplica a todas as conexões. Os aplicativos já não precisam especificar tamanhos de janela TCP por meio das opções do Windows Sockets. E os administradores de TI não precisam mais configurar manualmente um tamanho de janela de recepção TCP para computadores específicos.
Com o auto-ajuste da janela de recepção, um item TCP de mesmo nível com base em Windows Vista anunciará, normalmente, tamanhos muito maiores de janela de recepção do que um item TCP de mesmo nível baseado em Windows XP. Isso permite ao outro item TCP de mesmo nível preencher o pipe para o item TCP baseado em Windows Vista, enviando mais segmentos de dados de TCP sem ter que esperar por uma ACK (sujeita ao controle de congestionamento de TCP). No caso de tráfego típico de sistemas de rede baseados em cliente, como páginas da Web ou email, o servidor Web ou de email poderá enviar mais dados TCP mais rapidamente para o computador cliente, resultando em um aumento global no desempenho da rede. Quanto maior o BDP e a taxa de recuperação do aplicativo na conexão, maior o aumento de desempenho.
O impacto na rede é que um fluxo de pacotes de dados TCP, que normalmente seria enviado a um ritmo menor e mais comedido, é enviado muito mais rapidamente, o que resulta em um maior pico de utilização da rede durante a transferência dos dados. No caso de computadores baseados em Windows XP e Windows Vista realizando a mesma transferência de dados por um mesmo pipe longo e gordo, é transferida a mesma quantidade de dados. No entanto, a transferência de dados do computador cliente baseado em Windows Vista é mais veloz, devido ao tamanho maior de janela de recepção e da capacidade do servidor de preencher o pipe do servidor para o cliente.
Uma vez que o auto-ajuste da janela de recepção aumentará a utilização da rede de caminhos de transmissão com BDP alto, o uso de QoS (Qualidade de Serviço) ou a limitação da taxa de envio do aplicativo pode se tornar importante para caminhos de transmissão operando próximos ou já na capacidade total. Para cuidar dessa possível necessidade, o Windows Vista dá suporte a configurações de QoS baseadas em Diretiva de Grupo, que lhe permitem definir taxas de limitação para envio de tráfego por endereço IP ou porta TCP. Para obter mais informações, consulte recursos de QoS baseadas em diretivas.
Aumentando a taxa de transferência de TCP em redes com grandes perdas
Redes com grandes perdas podem diminuir expressivamente a taxa de transferência, devido a expirações de tempo limite de conexão e retransmissões freqüentes. São exemplos de rede com grandes perdas redes sem fio – como aquelas baseadas em IEEE 802.11, GPRS (General Packet Radio Service) ou UMTS (Universal Mobile Telecommunications System) – que podem ter muitas perdas de pacotes dependendo das condições de rede, da atenuação de sinal, de interferências eletromagnéticas e da mudança de local do computador.
A pilha TCP/IP de próxima geração dá suporte aos quatro RFCs a seguir para otimizar a taxa de transferência em ambientes de grandes perdas.

RFC 2582: a modificação de NewReno para o Algoritmo de Recuperação Rápida do TCP
O algoritmo de Recuperação Rápida, definido no RFC 2001, baseia-se no algoritmo de Reno, que aumenta a quantidade de dados que um remetente pode enviar quando um segmento é retransmitido devido a um evento de retransmissão rápida. Embora o algoritmo de Reno funcione bem para segmentos únicos perdidos, ele não funciona tão bem quando há mais de um segmento perdido. O algoritmo NewReno permite uma taxa de transferência maior, alterando a forma pela qual o remetente pode aumentar a sua velocidade de envio durante a recuperação rápida quando vários segmentos de uma janela de dados são perdidos e o remetente recebe uma confirmação parcial (uma confirmação de que somente uma parte dos dados foram recebidos com êxito).

RFC 2883: uma extensão à opção SACK (confirmação seletiva) para TCP
O SACK, definido no RFC 2018, permite que um destinatário indique até quatro blocos não contíguos de dados recebidos para usar a opção SACK de TCP. O RFC 2883 define um uso adicional dos campos na opção SACK TCP para confirmar pacotes duplicados. Isso permite que o remetente perceba quando retransmitir desnecessariamente um segmento e ajuste o seu comportamento para evitar futuras retransmissões desnecessárias. Quanto menos retransmissões forem enviadas, melhor será a taxa de transferência global.

RFC 3517: um algoritmo conservador de recuperação de perdas baseado em SACK (confirmação seletiva) para TCP
A implementação atual de TCP/IP no Windows Server 2003 e no Windows XP usa informações de SACK apenas para determinar quais segmentos TCP não chegaram ao destino. O RFC 3517 define um método de uso das informações de SACK para executar a recuperação de perdas quando confirmações duplicadas forem recebidas, substituindo o algoritmo de recuperação rápida mais antigo quando o SACK estiver habilitado em uma conexão. A pilha TCP/IP de próxima geração controla as informações de SACK por conexão e monitora as confirmações de entrada e duplicadas para uma recuperação mais rápida quando vários segmentos não forem recebidos no destino.

RFC 4138: F-RTO (Forward RTO-Recovery): um algoritmo para a detecção de tempos limite falsos de retransmissão com os protocolos TCP e SCTP.
Podem ocorrer falsas retransmissões de segmento de TCP com um aumento repentino de RTT, fazendo com que os RTOs (tempos limite de retransmissão) dos segmentos enviados anteriormente comecem a expirar e o TCP passe a retransmiti-los. Se ocorrer um aumento pouco antes do envio de uma janela completa de dados, o remetente pode retransmitir toda a janela de dados. O algoritmo F-RTO evita a retransmissão falsa de segmentos de TCP, por meio do comportamento a seguir.
Quando o RTO de vários segmentos expira, o TCP retransmite apenas o primeiro segmento. Quando a primeira confirmação é recebida, o TCP começa a enviar novos segmentos (se permitido pelo tamanho de janela anunciado). Se a confirmação seguinte confirmar os outros segmentos cujo tempo limite expirou, mas não foram retransmitidos, o TCP determinará que a expiração de tempo limite era falsa e não retransmitirá os outros segmentos nessa situação.
O resultado desse comportamento é que, em ambientes que passam por aumentos repentinos e temporários de RTT (como ocorre quando um cliente sem fio passa de um ponto de acesso para outro), o F-RTO impede a retransmissão desnecessária de segmentos e volta mais rapidamente à sua taxa de envio normal. O uso da recuperação de perdas por SACK e do F-RTO é mais adequado para conexões que utilizam links GPRS.

Joseph Davies é redator técnico da Microsoft, e vem ensinando e escrevendo sobre tópicos de sistema de redes Windows desde 1992. Escreveu cinco livros para a Microsoft Press e é autor da coluna mensal The Cable Guy da Technet (em inglês).


 Windows PowerShell: Constru&#231;&#245;es do Windows PowerShell
Windows PowerShell
Construções do Windows PowerShell
Don Jones

No mês passado, mostrei algumas maneiras pelas quais o Windows PowerShell poderia ser usado imediatamente para solucionar tarefas administrativas – sem precisar escrever nenhum script. Entretanto, embora o Windows PowerShell seja um excelente shell interativo, você realmente pode aproveitar seus recursos e automatizar tarefas mais complexas quando começar a utilizar linguagem de script ao mesmo tempo simples e poderosa.
Em primeiro lugar, você pode estar se perguntando: a Microsoft precisa mesmo de outra linguagem de script? Afinal de contas, a Microsoft criou o KiXtart, um processador de script de logon, assim como o Visual Basic® Scripting Edition (VBScript). A resposta, no entanto, é sim. A Microsoft realmente precisava de outra linguagem de script. Explicarei o porquê.
A linguagem do Windows PowerShell™ precisava ser simples e intuitiva, de modo que os administradores pudessem aprendê-la sem muito treinamento. Também precisava ser bastante flexível, para poder acomodar todas as funcionalidades poderosas que o próprio Windows PowerShell oferece aos usuários.
Como o Windows PowerShell é baseado no Microsoft® .NET Framework, sua sintaxe de script precisava ser compatível com .NET. Ao montar uma nova linguagem de script para o Windows PowerShell, os desenvolvedores selecionaram uma sintaxe C# essencialmente muito simples (pronuncia-se C-Sharp, umas das linguagens fornecida no .NET Framework). Por que não continuar usando uma sintaxe similar ao VBScript? Na verdade, a linguagem de script do Windows PowerShell não é tão diferente do VBScript, mas aproximando-se mais da sintaxe C#, o PowerShell fornece uma espécie de primeiro degrau para o aprendizado da programação em .NET Framework. Se, algum dia, você decidir migrar para o Visual Studio® e começar a escrever aplicativos em C#, grande parte de sua sintaxe de script do Windows PowerShell poderá migrar com você.
Uma das coisas mais importantes na linguagem de script do Windows PowerShell – ou em qualquer linguagem de script, na verdade – é sua construção. São elementos de linguagem especiais que permitem que o Windows PowerShell execute comparações lógicas e efetue ações diferentes com base nos resultados das comparações ou que o permitem repetir uma ou mais instruções diversas vezes.

Pensando logicamente
As comparações lógicas representam o âmago de muitas construções de linguagem de script, e o Windows PowerShell não é uma exceção. Essencialmente, uma comparação examina dois valores ou objetos e avalia se a comparação é True ou False. Por exemplo, você pode se perguntar, "A data de vencimento da senha deste usuário é a mesma de hoje?" O resultado será True se as datas forem as mesmas e False se forem diferentes. Observe que estou usando maiúsculas para True e False, porque são termos com um significado especial no Windows PowerShell.
Aqui há um exemplo de uma comparação lógica real que você poderia executar no Windows PowerShell:
PS C:\> $a = 1
PS C:\> $b = 2
PS C:\> $a -eq $b
False
Criei uma variável de nome $a e a configurei para que contivesse o valor 1. No Windows PowerShell, os nomes de variáveis sempre começam com um cifrão, então é fácil encontrá-las. O sinal de = é tecnicamente chamado de operador de atribuição, porque é usado para atribuir um valor. Em seguida, crio uma segunda variável, $b, e lhe atribuo o valor 2. Agora, temos a comparação lógica real – eu peço para o Windows PowerShell comparar o conteúdo de $a e $b com o operador -eq (igualdade). O PowerShell executa a comparação, determina que os dois valores não são iguais e exibe o resultado: False.
Os operadores do Windows PowerShell são um pouco diferentes de outras linguagens de script que talvez você já tenha visto, e também se diferenciam de C#. A maioria das linguagens usam o operador = para executar verificações de igualdade e também para atribuição de valor; o Windows PowerShell evita a confusão com um operador dedicado para cada função. A Figura 1 mostra os operadores de comparação do Windows PowerShell, juntamente com operadores equivalentes em outras linguagens (como VBScript) que talvez você já conheça.
Figure 1 Operadores de comparação do PowerShell (Close Figure 1)

Operador | Nome | Descrição
-eq | Igualdade | Testa se valores são iguais. Outras linguagens podem usar = ou == para testar igualdade.
-ne | Diferente de | Testa desigualdade. Outras linguagens podem usar <> ou != para testar desigualdade.
-gt | Maior que | Testa se um valor é maior do que o outro. Outras linguagens podem usar o caractere >.
-lt | Menor que | Testa se um valor é menor do que o outro. Outras linguagens podem usar o caractere <.
-ge | Maior ou igual a | Testa se um valor é maior ou igual a outro valor. Similar a >= em VBScript e outras linguagens.
-le | Menor ou igual a | Testa se um valor é menor ou igual a outro valor. Similar a <= em VBScript e outras linguagens.
Esses operadores de comparação têm outros recursos interessantes. Veja esta comparação:
PS C:\> $a = "TechNet"
PS C:\> $b = "technet"
PS C:\> $a -eq $b
True
Por padrão, os operadores de comparação não diferenciam maiúsculas de minúsculas, o que significa que a versão com maiúsculas de TechNet é considerada como equivalente a "technet". Isso é conveniente, porque na maior parte das tarefas administrativas, você não precisa se preocupar se as letras são maiúsculas ou minúsculas. Entretanto, nos casos em que precisar dessa diferenciação, você pode pedir ao Windows PowerShell que execute uma comparação diferenciando maiúsculas de minúsculas, adicionando a letra c ao início do operador de comparação:
PS C:\> $a -ceq $b
False
Da mesma forma, se você se estiver preocupado ou confuso com a possibilidade do Windows PowerShell executar uma comparação diferenciando maiúsculas de minúsculas, você poderá forçá-lo a fazer isso, acrescentando a letra i no início do operador:
PS C:\> $a -ieq $b
True
Lembre-se de que comparações lógicas sempre resultam em um dos dois valores: True ou False.

Tomando decisões
Agora que você sabe como criar comparações lógicas, pode começar a usá-las em construções. A primeira construção que vou mostrar permite que o Windows PowerShell tome decisões com base em uma comparação. Ela é chamada de construção If, e há algumas variações dela. Esta é a mais simples:
PS C:\> if ($a -eq $b) {
>> Write-Host "They are equal"
>> }
>>
They are equal
Há alguns itens interessantes a serem observados aqui. Primeiro, as variáveis $a e $b ainda contêm os valores "TechNet" e "technet", respectivamente. Comecei a construção usando a palavra-chave If. Em seguida, entre parênteses, digitei a comparação lógica que desejava executar. Depois disso vem uma chave, que sinaliza o início do que eu vou chamar de código condicional – o código que o Windows PowerShell executará se a comparação retornar um resultado True. Você já sabe, pelo exemplo anterior, que essa comparação retorna o resultado True, então esperamos que o código condicional seja executado. Digito o código condicional, Write-Host "They are equal" e pressiono Enter. Finalmente, termino a seção do código condicional digitando uma chave de fechamento e pressionando Enter duas vezes. (O segundo Enter em uma linha em branco avisa o analisador que eu terminei de escrever e que o código pode ser executado.)
Observe que essa construção não está sendo executada a partir de um arquivo de script. Eu simplesmente digitei a construção na linha de comando do Windows PowerShell. Isso é o que torna o Windows PowerShell exclusivo no mundo do script do Windows: os scripts podem ser criados interativamente e colocados em um arquivo para armazenamento permanente.
Assim que eu digitei a primeira chave e pressionei Enter, o Windows PowerShell exibiu um prompt >>. Esse é o modo dele dizer "Reconheço que você está em uma construção, e estou pronto para receber o que será inserido na construção". Depois de digitar a chave de fechamento e pressionar Enter duas vezes, o Windows PowerShell imediatamente executou a construção, determinou que sua comparação lógica era True e executou o código condicional. Você pode perceber isso porque "They are equal" (Eles são iguais) foi exibido antes que o PowerShell voltasse ao seu prompt normal. Usar o Windows PowerShell para fazer scripts interativamente permite que você teste rapidamente partes do código antes de montá-los em um script mais permanente, o que facilita o aprendizado e a depuração.
Devo salientar que o Windows PowerShell não é muito exigente em relação a tarefas como pressionar Enter. Por exemplo, isto é funcionalmente igual ao exemplo anterior:
PS C:\> if ($a -eq $b) { Write-Host "They are equal" }
They are equal
Como digitei tudo em uma linha, o Windows PowerShell não precisou exibir o >>prompt especial; ele simplesmente executou a construção quando pressionei Enter no final da linha. Como o Windows PowerShell sabia que podia executar a construção? Porque ela estava completa neste ponto – a chave de fechamento tinha sido digitada.
Comentei que havia outras variações da construção If. Aqui há um exemplo completo, apresentado como poderia aparecer em um arquivo de script PS1, e não no shell:
if ($a -eq $b) {
  Write-Host "They are equal"
} elseif ($a -lt $b) {
  Write Host "One is less than the other"
} else {
  Write Host "One is greater than the other"
}
A construção começa da mesma maneira, usando a palavra-chave If. No entanto, para o caso de a comparação ser False, forneci outra comparação usando a palavra-chave Elseif. Se essa segunda comparação também for False, então minha última palavra-chave, Else, fornecerá um código final, que será executado.

Repetindo suas instruções
O Windows PowerShell contém algumas construções para executar códigos várias vezes, até que alguma comparação seja True ou False. Elas são chamadas de construções em loop pelos programadores. O melhor é que uma das construções em loop mais úteis consegue enumerar os objetos em uma coleção e executar uma ou mais linhas de código para cada objeto. Essa construção é adequadamente chamada de construção foreach, e ela se assemelha a isto:
PS C:\> $names = get-content "c:\computers.txt"
PS C:\> foreach ($name in $names) {
>> Write-Host $name
>> }
>>
don-pc
testbed
Comecei pedindo que o cmdlet Get-Content do Windows PowerShell recuperasse o conteúdo do arquivo c:\computers.txt file, um arquivo que eu mesmo criei e que contém um nome de computador por linha. O Windows PowerShell trata cada linha como um objeto, de modo que o arquivo é essencialmente uma coleção que contém tais objetos. A coleção termina com a variável $names. Usando a palavra-chave Foreach, peço para que o Windows PowerShell enumere a coleção $names usando a variável $name para representar o objeto atual sempre que o loop é executado. O código do loop é colocado entre chaves. Dessa forma, para cada nome do arquivo, eu coloco o nome na linha de comando. E, como você pode perceber na saída após a construção, isso é exatamente o que o Windows PowerShell faz. É possível perceber como isso proporcionaria um benefício óbvio para o trabalho administrativo com script: você poderia construir facilmente uma lista de nomes de servidores, por exemplo, e fazer com que o Windows PowerShell recuperasse informações de cada um deles, um por vez.

Construções reais
Então, vamos pegar comparações lógicas, as construções If e foreach, e fazer algo útil. Quero verificar rapidamente o status do serviço do Messenger em um conjunto de servidores. Espero que o serviço esteja parado na maior parte dos servidores, então não quero que o Windows PowerShell relacione todos os servidores nos quais o serviço esteja no estado esperado; desejo que ele liste apenas os servidores nos quais o serviço do Messenger tenha sido iniciado, porque preciso executar algo nesses servidores.
Sei que o cmdlet Get-Service do Windows PowerShell pode me ajudar a recuperar as informações de que preciso no computador local. Entretanto, infelizmente, ele não consegue acessar um computador remoto, que é a minha intenção. Por sorte, também consigo acessar as mesmas informações por intermédio do WMI (Windows Management Instrumentation), usando o cmdlet Get-WMIObject, que me permite trabalhar com um computador remoto. Então, eis aqui o script:
$names = get-content c:\computers.txt
foreach ($name in $names) {
  $svc = get-wmiobject win32_service '
   -computer $name -filter "name='messenger'"
  if ($svc.started -eq $True ) {
    write-host "$name has Messenger running"
  }
}
Você reparou no caractere ' na terceira linha? Ele informa ao Windows PowerShell que a próxima linha é uma continuação. Isso é útil em casos como esse, em que toda a linha não caberia na revista sem quebrá-la. Repare também que minha construção If compara $svc.started com $True. A variável $True é uma variável especial no Windows PowerShell, que representa o valor True booleano. (Uma variável relacionada, $False, representa o False booleano.) Na verdade, eu poderia ter usado um atalho aqui:
$names = get-content c:\computers.txt
foreach ($name in $names) {
  $svc = get-wmiobject win32_service '
   -computer $name -filter "name='messenger'"
  if ($svc.started) {
    write-host "$name has Messenger running"
  }
}
Lembre-se de que a condição da construção If precisa simplesmente ser True ou False. Normalmente, você obtém True ou False comparando dois valores, como fiz com a primeira versão deste script. Entretanto, como a propriedade Started é True ou False, não é necessário compará-la com True ou False.

Uma ferramenta útil
Então, aqui está – uma ferramenta administrativa simples e útil que utiliza construções para executar o trabalho. Quer você a digite no Windows PowerShell interativamente ou salve-a em um arquivo PS1 para poder reutilizá-la com facilidade, ela é uma ferramenta útil para verificar o status de um serviço em vários computadores, e uma ótima demonstração de como as construções podem ajudar a automatizar tarefas administrativas.

Don Jones é o diretor de projetos e serviços da SAPIEN Technologies e co-autor do Windows PowerShell: TFM (SAPIEN Press, 2006). Entre em contato com Don em seu site em ScriptingAnswers.com.


 Ei, Equipe de Scripts!: Cuidado com o que diz
Ei, Equipe de Scripts!
Cuidado com o que diz
A Equipe de Scripts da Microsoft

DURANTE A GUERRA Civil Americana (na Batalha de Spotsylvania, para ser preciso), o General da União John Sedgwick ficou consternado ao ver seus homens se agachando diante dos disparos ocasionais e aleatórios dados na direção deles pelos atiradores de elite dos Confederados. De acordo com a lenda, Sedgwick disse à tropa: “Vocês me envergonham, se esquivando desse jeito. Eles não acertariam nem um elefante nessa distância”. Instantes depois, Sedgwick se tornava o oficial da União de mais alta patente a morrer na guerra. Talvez os atiradores de elite dos Confederados não pudessem acertar um elefante naquela distância; porém, infelizmente para Sedgwick, eles conseguiram acertar um general.
Claro, mas falta dizer qual é a moral da estória. Bem, já que vocês perguntaram: “Mantenha sua cabeça abaixada quando alguém estiver atirando em você” seria uma bela moral, não seria? Ah, que pena! Nós não tínhamos pensado nisso. Na verdade, pensamos na seguinte moral: “Cuidado com o que diz, porque um dia isso pode se voltar contra você”. Bem, essa moral valeu para o General John Sedgwick e tem sido igualmente válida para muitas outras pessoas. Por exemplo, ninguém se lembra de Thomas Watson, chefe da IBM por um grande período, como um dos maiores empreendedores da história dos Estados Unidos. Em vez disso, Watson foi imortalizado como o homem que disse: “acho que existe um mercado mundial para, talvez, cinco computadores”.
O mais interessante é que não há evidência de que Watson tenha, realmente, dito isso; na melhor das hipóteses, pode ser que ele tenha, simplesmente, mencionado o pensamento de alguém a respeito do assunto. Mas quem se importa? Afinal, a idéia de que o chefe da IBM possa ter dito que não havia mercado para computadores rende uma estória tão boa que não podemos deixar que essas bobagens, que são os fatos, atrapalhem, não é?
Por eventualidade, Watson disse, realmente: “Se quiser ter sucesso, dobre sua taxa de fracassos”. Esse conselho a Equipe de Scripts abraçou de corpo e alma.
Bem, pelo menos a parte sobre dobrar a taxa de fracassos.
Existe, então, esta citação: “Se estiver escrevendo scripts em VBScript, você não terá acesso ao .NET Framework”. É verdade, dizer às pessoas que o Microsoft® .NET Framework é inacessível para autores de script não é tão memorável quanto dizer que “Eles não acertariam nem um elefante nessa distância” ou “Acho que existe um mercado mundial para, talvez, cinco computadores”. Todavia, tal afirmação é igualmente sem base. É verdade que o .NET Framework foi criado tendo em mente desenvolvedores de C# e Visual Basic® e, também, tendo em vista que o VBScript não pode criar instâncias de classes nativas do .NET Framework. Mas isso não quer dizer que o .NET Framework seja inacessível para autores de script, pelo menos não completamente.
Sim, vocês têm razão: nós não podemos negar que a maioria das classes do .NET Framework continua fora dos limites para o VBScript. No entanto, existe um número razoavelmente grande de classes .NET que possui invólucros CCW (COM-Callable Wrapper), o que significa, simplesmente, que essas classes contém uma interface COM que permite que as classes sejam acessadas por linguagens de script, como VBScript. Vocês estão dizendo que é difícil de acreditar? Então, examinem a parte HKEY_CLASSES_ROOT do registro exibida na Figura 1; vocês verão todos os tipos de classes que começam com System.
Figura 1 Classes do sistema no registro
Figura 1 Classes do sistema no registro (Clique na imagem para diminuir a exibição)
Figura 1 Classes do sistema no registro
Figura 1 Classes do sistema no registro (Clique na imagem para aumentar a exibição)
A maior parte delas são classes .NET Framework e podem ter instâncias criadas por meio de VBScript.
Eu disse!
É óbvio, como qualquer pessoa que já comprou um produto anunciado em um programa da TV pode atestar, não é porque você pode fazer alguma coisa que você deve fazer (normalmente, há algum motivo pelo qual esses itens não são encontrados em lojas). Claro que é possível criar uma instância da classe System.ContextMarshalException em um script; mas nós não fazemos nenhuma idéia do motivo pelo qual você desejaria fazer isso.
Mas esse não é o caso de todas as classes de .NET Framework. Por exemplo, um dos grandes problemas do mundo do script é o fato de que não existe uma forma fácil de classificar uma lista de itens. Colocar uma lista em ordem alfabética exige que você use, por conta própria, um conjunto de registros desconectado ou crie uma função de classificação incompreensível, como o seguinte código de classificação bolha (talvez seja melhor que aqueles com estômago fraco passem diretamente para o próximo parágrafo):
For i = (UBound(arrNames) - 1) to 0 Step -1
    For j= 0 to i
        If UCase(arrNames(j)) >
          UCase(arrNames(j+1)) Then
            strHolder = arrNames(j+1)
            arrNames(j+1) = arrNames(j)
            arrNames(j) = strHolder
        End If
    Next
Next
Não se aflija: fomos nós que escrevemos o código e também não estamos totalmente seguros do que ele significa.
Então, como o .NET Framework pode nos ajudar em uma situação como essa? Para responder essa pergunta, vamos observar um pequeno script muito simples e direto:
Set DataList = CreateObject _
      ("System.Collections.ArrayList")

DataList.Add "B"
DataList.Add "C"
DataList.Add "E"
DataList.Add "D"
DataList.Add "A"

DataList.Sort()

For Each strItem in DataList
    Wscript.Echo strItem
Next
Como vocês podem ver, o que estamos fazendo é criar uma instância da classe System.Collections.ArrayList do .NET Framework. Em seguida, usamos o método Add para adicionar cinco itens à lista. Tudo vai de vento em popa, exceto por uma coisa: nós adicionamos os itens de modo a esmo (B, C, E, D, A), mas é necessário que eles sejam exibidos em ordem alfabética (A, B, C, D, E). É hora de rebocar o código de classificação de bolha, certo?
Errado. (Desculpe por ser tão rude, mas errado é errado.) Da maneira que as coisas estão, não é necessário rebocar o código de classificação de bolha; tudo o que precisamos fazer é chamar o método Sort da lista de matrizes:
DataList.Sort()
É isso. Com essa única linha de código podemos classificar todos os itens de nossa lista de matrizes.
Querem tentar? Uau, que multidão valente. Tudo bem; nós esperávamos que houvesse um ou dois Thomas Desconfiados na platéia. É por isso que o script contém um loop For Each que passa por todos os itens da lista, ecoando o valor de cada um deles na tela:
For Each strItem in DataList
    Wscript.Echo strItem
Next
Agora, uma pergunta para vocês resolverem: o que obtemos quando executamos esse script?
Boa aposta:
A
B
C
D
E
Legal, não é?
Hum, parece que nem todos estão plenamente satisfeitos. Alguns estão dizendo que isso tudo está certo e direito, mas o que realmente queriam fazer era ecoar esses valores de volta em ordem decrescente; ou seja, queriam uma lista que fosse de Z a A, em vez de A a Z. Se vocês não conseguem fazer isso, tudo bem. . .
Ei, sem problemas. Tudo o que você tinha de fazer era perguntar:
Set DataList = CreateObject _
      ("System.Collections.ArrayList")

DataList.Add "B"
DataList.Add "C"
DataList.Add "E"
DataList.Add "D"
DataList.Add "A"

DataList.Sort()
DataList.Reverse()

For Each strItem in DataList
    Wscript.Echo strItem
Next
Você tem razão: isso parece muito com o script que acabamos de ver, não? Contudo, há um acréscimo importante. Observe a única linha de código que adicionamos, a linha que entra logo depois do método Sort:
DataList.Reverse()
Viu só? Após classificar a lista em ordem crescente, nós chamamos o método Reverse que – surpresa – inverte a ordem de todos os itens da matriz. O que isso nos oferece? Isso nos oferece uma saída parecida com:
E
D
C
B
A
É difícil não ficar impressionado, não é?
Mas espere! Pode ficar ainda melhor. Vocês já tentaram remover um item de uma matriz de VBScript? Calma, não precisa chorar; nós não vamos pedir que vocês façam isso. Em vez disso, vamos mostrar como é fácil remover um item de nossa lista de matrizes do .NET Framework. Não gosta da letra D? Livre-se dela. Eis um script que cria uma lista de matrizes, classifica-a e, em seguida, remove a entrada de D:
Set DataList = CreateObject _
  ("System.Collections.ArrayList")

DataList.Add "B"
DataList.Add "C"
DataList.Add "E"
DataList.Add "D"
DataList.Add "A"

DataList.Sort()
DataList.Remove("D")

For Each strItem in DataList
    Wscript.Echo strItem
Next
Examinemos, outra vez, a pequena linha de código imediatamente após o método Sort:
DataList.Remove("D")
Usamos, aqui, o método Remove para remover o item igual a D. E eis o que obtemos quando executamos o script:
A
B
C
E
Hasta la vista, D!
E não se esqueçam da melhor parte: conseguimos remover um item sem ter que redimensionar a matriz. Isso foi demais! É claro que também conseguimos adicionar itens à matriz sem ter que redimensionar os itens. Ousem dizer que isso não facilita a vida de vocês ao criar scripts.
Acreditem ou não, nós ainda nem abordamos o que é possível fazer com a lista de matrizes do .NET Framework (para obter mais informações, consulte aentrada da lista de matrizes no SDK do .NET Framework).
A lista de matrizes é útil para autores de script? Coloquemos as coisas desta forma: depois de ter visto a lista de matrizes do .NET Framework, nós não sabemos por que vocês iriam querer usar a matriz interna de VBSCript, pelo menos não para listas de itens simples como as que usamos aqui.
É verdade que nós, da Equipe de Scripts, não fizemos um levantamento exaustivo do .NET Framework para descobrir quais classes poderiam (e quais não poderiam) ser de utilidade para autores de script. Estamos trabalhando nisso. Nesse ínterim, sintam-se à vontade para bisbilhotar todo o SDK do .NET Framework (em inglês). Parece que toda vez que pesquisamos o SDK, encontramos algo novo e interessante que pode ser usado por autores de script.
Como o quê? Bem, gerar números aleatórios, por exemplo. Querem gerar um número aleatório entre 1 e 100 usando o gerador de números aleatórios do VBScript? Sem problemas; basta usar código similar a:
Randomize
Wscript.Echo Int((100 - 1 + 1) * Rnd + 1)
Memorizaram a fórmula? Não se preocupem, se não tiverem conseguido; acontece que é muito mais fácil e intuitivo usar a classe System.Random do .NET Framework:
Set objRandom = CreateObject("System.Random")
Wscript.Echo objRandom.Next_2(1,100)
É muito provável que vocês consigam imaginar isso sem precisar de explicação. Contudo, faremos um resumo, unicamente porque a TechNet Magazine tem essa idéia de que os colunistas devem escrever realmente sobre algo todo o mês. (Isso nos desconcerta... mas é a política deles, não a nossa.)
Como vocês podem ver, nós criamos uma instância da classe System.Random e, depois, chamamos o método Next_2, transmitindo-lhe dois parâmetros:
  • 1, o primeiro número de nosso intervalo (recorde-se de que esperamos gerar um número aleatório entre 1 e 100).
  • 100, o maior número de nosso intervalo.
Isso é tudo o que temos de fazer.
Parece que temos tempo para uma última pergunta. Sim, você mesmo, de camisa verde. Quem foi, exatamente, que disse que os autores de script não podiam acessar o .NET Framework? Bem, para ser bem honesto, bem no começo, nós... epa, parece que o tempo acabou, enfim. Vejo vocês no mês que vem!
Felicidades, Felicidades
Fevereiro está quase chegando, o que só pode significar algo... Não, não é o Carnaval. Não, nem o dia de Iemanjá. Ai, pelo amor de Deus, o Dia da Marmota?! Nada disso; quanto mais fevereiro se aproxima, mais perto chegamos dos Jogos de Script de Inverno de 2007, a primeira (e, provavelmente, a única) competição internacional de script do mundo. Este ano, os Jogos prometem ser maiores e melhores do que nunca; a partir de agora teremos quatro divisões:
  • VBScript para iniciantes
  • VBScript avançado
  • Windows PowerShell™ para iniciantes
  • Windows PowerShell™ avançado
Consulte a homepage dos Jogos de Script de Inverno de 2007 para obter mais informações.
O quê? Ah, obrigado. E, ah, um feliz Dia da Marmota para vocês também.

Faça hoje o donwload do Windows PowerShell™
O Windows PowerShell 1.0 já está disponível para download. E, inclusive, é grátis! Como é que você pode deixar passar um negócio desses? Faça o download do software (em inglês) e comece a usá-lo hoje.

A Equipe de Scripts da Microsoft trabalha para - bem, estão empregados por ela - a Microsoft. Quando não está jogando/treinando/assistindo beisebol (e diversas outras atividades), ela administra o TechNet Script Center. Confirme isso em www.scriptingguys.com (em inglês).


 Perguntas e respostas do Exchange: Temos todas as respostas (porque inventamos as perguntas)
Perguntas e respostas do Exchange
Temos todas as respostas (porque inventamos as perguntas)
KC Lemson and Paul Bowden

Olá, bem-vindo à primeira edição do Perguntas e respostas do Exchange! Vamos começar com uma série de perguntas que, para dizer a verdade, nós mesmos inventamos, de modo que não seria justo expor isso como uma coluna de perguntas e respostas genuína,
porque só seriam P&R se considerássemos que uma câmara de eco produz perguntas e respostas. Acreditamos, no entanto, que essas perguntas possam ser uma amostra representativa das perguntas que passam pelas mentes dos clientes do Microsoft® Exchange Server e, assim, julgamos que temos o direito de respondê-las. No futuro, suas perguntas certamente serão bem-vindas, então, sinta-se à vontade para enviá-las para queuea@microsoft.com.
Nosso objetivo atual nesta coluna é que ela tenha um elenco rotativo de autores (algo como "colocar os escritores no paredão e ver quem sobrevive"), mas todos nós trabalhamos com o Exchange há muitos anos. Neste mês, as respostas (e perguntas!) têm co-autoria de KC Lemson e Paul Bowden, gerentes-chefe de programa na equipe de produto do Exchange na Microsoft. Ambos somos veteranos no desenvolvimento do Exchange. Já circulamos por diversos setores, mas nunca conseguimos nos separar da área de mensagens.
KC trabalhou no grupo do Exchange nos últimos seis anos, e já assumiu diversas funções, inclusive gerente de programa no Microsoft Outlook® Web Access (OWA) e gerente-chefe de programa encarregada do programa de pré-lançamento para clientes do Exchange. Atualmente, ela é gerente de Experiência do usuário do Exchange, encarregada do design do produto e de pesquisas de clientes. Antes de ingressar no Exchange, ela atuou como testadora do Outlook durante três anos, era responsável pelo teste de anexos no tempo em que as pessoas acreditavam que bloquear anexos executáveis em email era algo muitíssimo ruim. Ela tem um blog em blogs.technet.com/kclemson.
Paul passou os últimos três anos trabalhando naquela excelente ferramenta ExBPA (Exchange Best Practices Analyzer). Na verdade, ele ganhou um prêmio por ela há alguns meses, e tirou uma foto com o Bill Gates. Entretanto, com o projeto do Exchange Server 2007 finalizado, é hora de começar de novo. Paul precisa parar de sonhar em XML e voltar para o mundo real. Ele será gerente de lançamento da próxima versão do Exchange (a versão na qual começaremos a trabalhar assim que o Exchange Server 2007 for lançado).
Falando nisso, vocês gostaram da incrível perspicácia demonstrada no nome desta coluna? É claro que nós não podemos receber os créditos pelo nome, foi uma sugestão de um leitor do blog da KC. (Desfrute da camiseta, Tim!) Entre as sugestões finalistas, tivemos "Pushing the Envelope" e "When I'm X64", e KC gostou tanto dessa última opção que registrou o domínio www.whenimx64.com e redirecionou para o seu blog, só porque ficou com vontade. Seria bom se tivéssemos esse poder sobre outras coisas da vida.
Só uma observação: a primeira proposta de KC para o nome desta coluna foi "Boletim mensal de perguntas e respostas", até que nosso editor, acertadamente, observou que ainda não sabíamos quantas pessoas iriam compor nossa equipe e que nossa capacidade de cumprir prazos não era confiável (a resposta dele foi mais elegante e menos direta do que estamos descrevendo, mas sabíamos o que ele estava pensando). E, sob a mesma perspectiva, não temos a menor idéia dos comentários que receberemos dos leitores desta coluna, e se vai ou não valer a pena repeti-la. Por esse motivo, entramos em um acordo em relação ao nome, e vocês vão ter que nos dizer o que acham, escrevendo para queuea@microsoft.com.
Então, sem mais a acrescentar, vamos às perguntas...

P Por que eu deveria estar entusiasmado com o Exchange Server 2007?
R Compreendemos que é arriscado abrir a primeira coluna com uma pergunta que é essencialmente voltada ao marketing, mas nós mesmos estamos tão entusiasmados com o Exchange Server 2007 que realmente queremos compartilhá-lo com vocês. Então, tentaremos limitar a "marketagem" desta resposta e falar apenas de algumas das diversas razões técnicas pelas quais um administrador ou usuário do Exchange deve ficar entusiasmado com o Exchange 2007, de especialista para especialista.

Aprimoramentos de desempenho e escalabilidade
Para começar, o óbvio: 64 bits. Vocês perguntam, o que é que tem demais? Bem, o Windows® de 32 bits oferece suporte apenas a um total de 4 GB (232 bytes) de memória, e 2 GB são usados pelo kernel por padrão, deixando apenas 2 GB para os aplicativos. A versão atual do Windows oferece suporte a um comutador de /3 GB em boot.ini, que proporciona até 3 GB de espaço na memória para aplicativos, mas se você usar essa opção, o kernel do Windows ficará um tanto desconfortável, e você precisará rapidamente reiniciar o servidor para recuperar recursos.
Felizmente, o suporte para 64-bits, juntamente com alterações significativas no mecanismo de banco de dados subjacente (JET) do Exchange resolvem esse problema. Como os servidores do Exchange são, tradicionalmente, muitos mais limitados por E/S de disco do que por outros recursos do sistema (como CPU), adicionar memória ao sistema significa que você pode reduzir significativamente a E/S de disco, mantendo mais informações na memória em vez de precisar ler o disco. O resultado é que, com o Exchange 2007, você pode oferecer a seus usuários suporte a caixas de correio muito maiores do que com o Exchange 2003, em hardware físico similar. O servidor de email que estou usando na Microsoft, por exemplo, oferece suporte a 4.000 usuários com cotas de caixa de correio de 2 GB, o que resulta em 6 TB (terabytes) de dados. Para ser honesto, o simples fato de que o Exchange 2007 pode se beneficiar com mais memória não significa que ele precisa de tanta memória – testamos um computador que executava o Windows Server® 2003 de 32 bits e o Exchange 2003 com 4 GB ou menos de memória, instalamos o Windows Server 2003 de 64 bits e o Exchange 2007 e verificamos desempenhos semelhantes.
O Exchange 2007 também inclui duas novas maneiras de aprimorar a disponibilidade: a LCR (replicação contínua agrupada) e a LCR (replicação contínua local). Essas tecnologias reduzem o risco de falhas no armazenamento causarem problemas sérios. A LCR mantém uma cópia local de seus bancos de dados no mesmo computador, mas eles podem ser armazenados em mídias de armazenamento diferentes. A CCR pode fazer o mesmo entre dois computadores em uma rede. A CCR, combinada com os aprimoramentos de E/S de disco de que falamos anteriormente, abre novas opções para hardware de armazenamento; se você preferir usar mídias de armazenamento de acesso direto como unidades SATA ou SCSI, essa passa a ser uma opção muito mais econômica e de melhor desempenho.

Administração
A Microsoft investiu muito em uma nova experiência administrativa no Exchange 2007, que inclui a interface de linha de comando mostrada na Figura 1. Ela se chama EMS (shell de gerenciamento do Exchange) e se baseia no Windows PowerShell™. Se você não for fã da linha de comando, tudo bem – a GUI continua aqui, mas agora é chamada de EMC (console de gerenciamento do Exchange), e é uma interface muito mais intuitiva do que o antigo Gerenciador do Sistema (consulte a Figura 2). Se você já é adepto a interfaces de linha de comando ou deseja se tornar um, confira o EMS do Exchange 2007.
Figura 1 Status do grupo de armazenamento no Shell de Gerenciamento do Exchange
Figura 1 Status do grupo de armazenamento no Shell de Gerenciamento do Exchange (Clique na imagem para diminuir a exibição)
Figura 1 Status do grupo de armazenamento no Shell de Gerenciamento do Exchange
Figura 1 Status do grupo de armazenamento no Shell de Gerenciamento do Exchange (Clique na imagem para aumentar a exibição)
Figura 2 O mesmo status no Console de Gerenciamento do Exchange
Figura 2 O mesmo status no Console de Gerenciamento do Exchange (Clique na imagem para diminuir a exibição)
Figura 2 O mesmo status no Console de Gerenciamento do Exchange
Figura 2 O mesmo status no Console de Gerenciamento do Exchange (Clique na imagem para aumentar a exibição)
No Exchange 2003, é possível que você tenha precisado usar scripts da WMI (instrumentação de gerenciamento do Windows) para executar algumas das tarefas administrativas mais complexas, mas com o Shell de Gerenciamento do Exchange essas tarefas podem ser feitas por qualquer pessoa que veja "CD C:\TEMP" e não pense que é um disco de uma banda nova (he-he-he). Apesar de um de nós ter sido administrador de sistema do UNIX, de modo que nossa objetividade pode ser questionada aqui, podemos indicar-lhes diversas fontes que podem garantir que o shell é inacreditavelmente intuitivo, mesmo que você nunca tenha usado uma linha de comando antes (falaremos mais sobre isso na próxima coluna do Perguntas e respostas do Exchange).
Uma das belezas do Windows PowerShell é que ele é orientado a objeto. Quando você recupera informações do servidor, como uma lista de caixas de correio ou conectores SMTP, as informações são automaticamente armazenadas em um objeto ou variável e transmitidas para stdout como texto, para facilitar a leitura. Em seguida, esse objeto pode ser passado diretamente para outro comando e operado no pipeline (nesse caso, ele é passado com o objeto, em vez de passar com o texto, facilitando a alteração dos dados ou a operação sobre partes dos dados). Este é um exemplo simples:
Get-Mailbox | Set-Mailbox -ProhibitSendQuota 250 MB
O comando Get-Mailbox recupera uma lista de caixas de correio do sistema. O | (chamado de símbolo de pipe) indica que a saída do comando à esquerda deve ser passada para o comando à direita. A próxima parte, "Set-Mailbox-ProhibitSendQuota 250 MB" significa que todas as caixas de correio agora têm uma cota, de modo que não podem mais enviar emails depois que atingirem o tamanho de 250 MB. Você também poderia definir esse limite como 250000000 ou 250000KB ou .25 GB o shell é muito flexível ao manipular dados.
Outro aprimoramento administrativo útil no Exchange 2007 é a capacidade de criar regras de transporte, com um assistente de regras muito parecido com o do Outlook, para aplicar lógica comercial às mensagens que passam pelo seu sistema. Deseja bloquear todos os emails que pareçam conter cadastros de pessoas físicas no corpo da mensagem, com base em uma expressão comum? OK. Deseja configurar uma parede ética, para que duas divisões de sua organização não possam enviar mensagens uma para a outra? OK. Deseja adicionar um aviso de isenção de responsabilidade a todos os emails enviados para fora da organização? OK.
Um último recurso administrativo que nos deixou muito entusiasmados são as mensagens de sistema personalizáveis: agora você pode adicionar seu próprio texto personalizado a notificações de falha na entrega e também (finalmente!) às mensagens exibidas para os usuários quando eles excedem suas cotas de armazenamento.

Ajudar o suporte técnico
Uma das maiores despesas para muitos clientes são os custos com suporte técnico relacionados à configuração de novos perfis no Outlook. Com a Descoberta Automática do Outlook 2007, basta iniciar o Outlook e ele automaticamente pesquisará seu endereço de email e recuperará suas informações do Exchange Server do Active Directory® usando o ponto de conexão de serviço. Se você não estiver conectado ao Active Directory, digite seu endereço de email e sua senha e a pesquisa da Descoberta Automática poderá fazer o download de um arquivo XML de um servidor Web especificado (como http://autodiscover.contoso.com) que tenha informações básicas de configuração, como o servidor usado para RPC sobre HTTP (agora chamado de Outlook em Qualquer Lugar).
Outro custo de suporte técnico é o gerenciamento dos aparentemente inevitáveis falsos positivos de seu filtro anti-spam. Os usuários podem ter listas de confiança no Outlook para remetentes cujas mensagens não devem estar sujeitas à filtragem de conteúdo, mas até o Exchange 2007, essas listas permitiam que as mensagens ignorassem apenas o filtro do Outlook. No entanto, como o filtro do Exchange age nas mensagens antes do Outlook ter qualquer acesso a elas, os usuários ainda podiam perder emails de pessoas confiáveis.
O Exchange 2007 também ajuda aqui: se você usar o filtro de conteúdo anti-spam com as funções de servidor de Borda ou de Hub no Exchange 2007, é possível configurá-lo para propagar as listas de remetentes confiáveis dos usuários para esse servidor, de modo que as mensagens desses remetentes serão ignoradas pelo filtro de conteúdo de spam. É claro que o que é spam para um usuário pode ser um boletim informativo para outro, então a agregação de remetentes confiáveis é feita para cada usuário.

A felicidade do usuário final
Com a UM (unificação de mensagens) do Exchange 2007, você pode receber correio de voz e fax de entrada em sua Caixa de Entrada. (Se você nunca experimentou isso, não sabe o que está perdendo.) Você também pode ligar para o Exchange Server e pedir para ele avisar todos os participantes da reunião das 8h00 que você vai se atrasar. Até a menor das organizações pode facilmente ter um atendente automatizado estigmatizado para que, quando os clientes ligarem, seu sistema possa roteá-los para o destino correto. Para usar a UM, você precisará de um PBX com base em IP (IP/PBX) ou poderá conectar seu PBX tradicional com chave de circuito a um gateway de Voz sobre IP (VoIP).
O Link Access é um recurso novo do OWA 2007. E se você estiver viajando sem um cliente VPN instalado e precisar visualizar um documento do Microsoft Word em um compartilhamento de arquivos ou um site SharePoint® na rede corporativa? Sem problemas – simplesmente carregue o OWA 2007, vá para o link Documentos, e digite o nome do compartilhamento ou site do SharePoint (http://mysharepointsite ou \\server\share) para procurar e abrir arquivos. É claro que há diversos controles de segurança para os administradores bloquearem esses recursos como quiserem – todos os servidores permitidos exceto uma determinada lista, todos os servidores negados exceto uma determinada lista, permitir acesso aos documentos apenas se os usuários fizerem logon no OWA a partir de computadores privados, e assim por diante.
O OWA também inclui a Exibição de Documento WebReady (na linguagem dos especialistas, isso se chama "transcodificação"), onde você pode pedir ao Exchange que processe certos tipos de arquivos em HTML, se você não tiver o aplicativo adequado instalado localmente. O Exchange 2007 será fornecido com suporte à transcodificação para os seguintes tipos de arquivos, por padrão: DOC, DOT, RTF, WBK, WIZ, XLS, XLK, PPT, PPS, POT, PWS e PDF. O mecanismo de transcodificação tem uma arquitetura conectável, para que pudéssemos adicionar suporte a novos tipos de arquivos em um service pack. Também há opções administrativas para que você possa determinar que tipos de arquivos os usuários podem transcodificar, ou para proibir a transcodificação completamente.
Se você tiver dispositivos móveis que façam a sincronização com o Exchange por intermédio do Exchange ActiveSync®, ficará feliz em saber que, ao responder ou encaminhar um segmento de email, a mensagem não será mais convertida em texto sem formatação. O seu texto é adicionado na parte superior, mas o corpo em HTML do resto da mensagem permanece como está. Isso funciona para qualquer dispositivo com suporte ao ActiveSync, e não requer funcionalidade no cliente.

P Ouvi dizer que o Exchange 2007 é "64 bits apenas para fins de produção". O que isso significa?
R O Exchange 2007 está disponível nas opções de 32 bits e 64 bits. A versão de 64 bits destina-se a uso "ao vivo" de produção das principais funções de servidor (Caixa de Correio, Transporte de Hub, Transporte de Borda, Acesso para Cliente, Unificação de Mensagens). A versão de 32 bits destina-se à avaliação dos novos recursos do Exchange 2007. As ferramentas de gerenciamento também podem ser usadas na versão de 32 bits para produção, para que você possa gerenciar seus servidores do Exchange 2007 de 64 bits a partir de seu computador desktop com o Windows XP de 32 bits. Observe também que o esquema do Exchange 2007 deve ser instalado de um computador na raiz do domínio – o Exchange em si não precisa ser instalado no domínio raiz, mas é necessário que a extensão do esquema aconteça no domínio raiz para garantir boa conectividade de rede para o mestre de esquema. Se você não tiver um servidor de 64 bits nesse domínio, será possível usar o setup.exe da versão de 32 bits para estender o esquema.
Vocês me perguntam o que há de errado com os servidores de 32 bits? Se já teve o prazer de executar milhares de usuários em um único servidor, você sabe que pode ser um verdadeiro show de equilíbrio entre o desempenho e a estabilidade, com as limitações de memória que descrevemos anteriormente. Se você comprou um computador novo nos últimos dois anos, é provável que ele já ofereça suporte a extensões de 64 bits. Na verdade, é bem difícil comprar um computador novo que não ofereça suporte ao modo de 64 bits hoje em dia. Portanto, pode ser que o computador que já executa o Exchange em seu ambiente seja compatível com 64 bits, só que ele está executando um sistema operacional de 32 bits. O que nos remete a outro ponto importante – se você comprou um novo computador compatível com 64 bits, lembre-se de instalar a versão de 64 bits do Windows Server 2003 SP1.
Então, por que você vê todos os avisos durante a instalação para não usar as instalações de 32 bits em produção? Embora seja bastante fácil compilar o Exchange em diversas versões, cada componente foi 100 por cento otimizado e preparado para 64 bits (alguns dos caminhos de códigos que escolhemos para obter os aprimoramentos em E/S de disco em sistemas de 64 bits provocam degradação no desempenho em ambientes de 32 bits). Na verdade, quando você estiver testando com 32 bits, nem pense em fazer a execução com excesso de carga (simulada ou não); você não terá uma noção realista de como funcionará em um sistema de 64 bits ou de quantos usuários serão comportados pelo servidor.
Então, tudo foi esclarecido? Você pode usar a versão de 32 bits do Exchange 2007 para:
  • Avaliar os novos recursos em um servidor de teste sem nenhuma caixa de correio de usuário ativa.
  • Deslumbre-se com as novas interfaces do console administrativo, do shell ou do OWA (mas cuidado para não ficar de boca aberta).
  • Administrar os servidores Exchange 2007.
  • Estender o esquema de sua floresta do Active Directory.
Quando você estiver pronto para mover as caixas de correio, é necessário que os servidores estejam executando um sistema operacional de 64 bits com o Exchange 2007 de 64 bits. Se você não tiver isso, tanto a instalação quanto o ExBPA vão reclamar (consulte a Figura 3). Paul sabe disso muito bem – ele escreveu o código!
Figura 3 Tentando instalar 32 bits onde deveria haver apenas 64 bits
Figura 3 Tentando instalar 32 bits onde deveria haver apenas 64 bits (Clique na imagem para diminuir a exibição)
Figura 3 Tentando instalar 32 bits onde deveria haver apenas 64 bits
Figura 3 Tentando instalar 32 bits onde deveria haver apenas 64 bits (Clique na imagem para aumentar a exibição)

P De quanta memória necessito para executar o Exchange 2007?
R A instalação básica precisa de pelo menos 1 GB de RAM física. Conforme mencionado anteriormente, algumas das funções de servidor são bem pesadas. Se você pretende instalar um servidor "multifuncional" (como Caixa de Correio, Acesso para Cliente, Transporte de Hub e Unificação de Mensagens), provavelmente, será melhor começar com 2 GB de RAM e aumentar de acordo com o número e uso das caixas de correio. Se você pretende instalar a função de Borda ou um cluster, elas devem ser instaladas em computadores separados. Um cluster só pode ter a função de Caixa de Correio instalada – nada mais.
Você vai gostar de saber que finalmente é possível instalar mais de 4 GB de RAM em seu servidor Exchange. Muitos computadores atuais são fornecidos com padrão 6 ou 8 GB, e é sempre uma tristeza tirar aqueles módulos DDR (registro dos dados de descoberta) ou usar /BurnMemory para diminuir a memória RAM para 4 GB (infelizmente, o Exchange 2003 terá um desempenho pior e com menos estabilidade se você tiver mais do que 4 GB – consulte go.microsoft.com/fwlink/?LinkId=76537 para obter mais detalhes) (em inglês).
Para os servidores de infra-estrutura (Hubs, Acesso para Cliente e similares), você estará bem equipado com menos de 4 GB de RAM, mesmo com as cargas mais pesadas. Você deve investir seu dinheiro em servidores de Caixa de Correio. O recém-otimizado cache JET de 64 bits vai precisar do máximo de memória que você puder disponibilizar. É claro que, diferentemente do Exchange 2003, o Exchange 2007 oferece suporte a até 50 grupos de armazenamento.
Embora cada grupo de armazenamento possa oferecer suporte a vários bancos de dados, isso não fará você economizar nada – especialmente porque LCR e CCR (as duas formas de replicação de bancos de dados de que falamos anteriormente) só funcionam com grupos de armazenamento com um único banco de dados. Certamente, você terá que fornecer mais RAM se pretender criar vários grupos de armazenamentos ou viver o sonho de caixas de correio de 2 GB ou mais para cada usuário. Há excelentes informações detalhadas sobre a definição de quantidade de RAM no blog da equipe do Exchange, mas as Figuras 4 e 5 fornecem informações para você começar.
Figure 5 RAM e grupos de armazenamento (Close Figure 5)

RAM física | Máximo recomendado de grupos de armazenamento
2 GB | 2
4 GB | 8
8 GB | 24
12 GB | 40
16 GB+ | 50
Figure 4 RAM por tipo de usuário (Close Figure 4)

Tipo de usuário | Recomendações de memória para a função de Caixa de Correio
Leve | Base 2 GB + 2 MB por caixa de correio
Média | Base 2 GB + 3,5 MB por caixa de correio
Pesado | Base 2 GB + 5 MB por caixa de correio
E, falando nisso, a TI da Microsoft usa vários grupos de armazenamento que são múltiplos de sete, porque eles têm uma programação de backup rotativa por meio da qual em qualquer dia é feito o backup de apenas alguns dos grupos de armazenamento. Chamamos essa programação de "backups em cascata", por causa das planilhas do Excel que descrevem a programação do backup, onde os grupos de armazenamento para os quais é feito o backup em um determinado dia são coloridos em vermelho, em cascata. Espero que este artigo tenha sido útil. Enviem perguntas "reais" para a próxima edição.

KC Lemson é gerente-chefe de programa na equipe do Exchange Server. Ela usa seu tempo livre para ajudar a proteger o dinheiro da realeza nigeriana.
Paul Bowden é gerente-chefe de programa na equipe do Exchange Server. Ele usa seu tempo livre para ajudar a proteger o dinheiro da realeza nigeriana. Paul também é gerente-chefe de programa na equipe do Exchange Server. Ele gasta grande parte de seu tempo livre reconfirmando as informações de sua conta no PayPal, quando solicitado.


 Security Watch: Sistema de prote&#231;&#227;o de servi&#231;os no Windows Vista
Security Watch
Sistema de proteção de serviços no Windows Vista
Wole Moses

A Microsoft anunciou a Iniciativa de Computação Confiável no início de 2002, no rastro de diversos vírus e worms de perfil alto que causaram estragos em sistemas Windows, paralisaram departamentos de TI e cuja remediação custou enormes somas a empresas e consumidores. Com essa iniciativa, a Microsoft lançou um
mea culpa em relação a seu registro de rastreamento de segurança e fez uma rápida correção de curso, mudando o paradigma de desenvolver software com ênfase em recursos sofisticados e na capacidade de uso para a prioridade em torno de segurança e integridade de software. O worm Blaster fez sua investida em agosto de 2003, aumentando ainda mais o ímpeto da iniciativa de segurança. (Para conhecer a estória do Blaster, consulte a barra lateral "Ataque dos clones".)
Os princípios da iniciativa de computação confiável são Seguro por Design, que dialoga com as filosofias de codificação segura; Seguro por Padrão, que trata de garantir que os componentes de padrão Windows® tenham a configuração mais segura possível; e Seguro na Implantação, que diz respeito à criação de ferramentas e à orientação prescritiva para ajudar empresas e consumidores a proteger sua infra-estrutura Windows.
A Iniciativa de Computação Confiável resultou, globalmente, em grandes avanços na segurança; infelizmente, o Windows XP nunca pôde aproveitá-la totalmente, pois foi lançado dois anos antes de a iniciativa ter início. (Embora o Service Pack 2, SP2, tenha feito grandes progressos na incorporação dessas filosofias, o Windows XP não pôde ser inteiramente retroajustado para a iniciativa.)
Assim, o Windows Vista™ é o primeiro sistema operacional de área de trabalho da Microsoft a estar em conformidade total com as metas da Computação Confiável. O Sistema de Proteção de Serviços do Windows Vista, uma implementação específica do princípio Seguro por Padrão da Computação Confiável (consulte a Figura 1), é um recurso novo e importante, criado para impedir comportamento de serviço errôneo que uma boa parte do malware de hoje consegue executar. O Sistema de Proteção de Serviços ajuda a Microsoft a avançar na mudança do comportamento e do perfil de segurança padrão dos serviços do Windows.
Figure 1 Seguro por padrão: serviços do Windows (Close Figure 1)

Recurso | Descrição | Resultado
Privilégios mínimos | Os serviços do Windows Vista estão configurados de modo a usar o mínimo de privilégios necessários para a execução. | O Windows Vista reduz os privilégios de segurança padrão disponíveis aos serviços do Windows, diminuindo o impacto potencial de malware.
Isolamento de serviço | São utilizados SIDs de serviço para permitir que os serviços sejam executados em contas com menos privilégios. | O Windows Vista consegue barrar malware restringindo o acesso a seus recursos com base em SIDs de serviço.
Acesso de rede restrito | Restrições de rede são prontamente implementadas em todos os serviços do Windows Vista. | O Windows Vista impede que o malware use serviços para realizar atividade de rede impróprias.
Isolamento de sessão 0 | A sessão 0 foi reservada para os serviços. | O Windows Vista impede que aplicativo mal-intencionados seqüestrem serviços de privilégios altos por meio de ataques baseados em mensagens, uma vez que eles não são mais executados na mesma sessão.

Serviços arriscados
Os serviços do Windows, anteriormente conhecidos como serviços do NT, são aplicativos executáveis de longa duração, executados em sessões próprias do Windows. Os serviços podem ser iniciados automaticamente quando o computador é inicializado, podem ser pausados e reiniciados, geralmente não exibem nenhuma interface do usuário e podem ser executados no contexto de segurança de uma conta diferente daquela do usuário no logon atual ou da conta padrão do computador. Os serviços do Windows são, portanto, um ótimo recurso para certos tipos de desenvolvimento de aplicativos e para usuários finais que necessitam usar esses aplicativos. No entanto, devido a sua potência e flexibilidade, os serviços do Windows têm sido, tradicionalmente, vulneráveis a exploit, por diversos motivos.
Primeiro porque, no passado, os serviços do Windows eram executados, geralmente, em contas do Windows com altos privilégios, como a conta Sistema Local. Se um serviço em execução na conta Sistema Local for comprometido por malware, esse terá uma grande chance de fazer absolutamente tudo o que desejar no sistema. Considere, por exemplo, o serviço de RPC (chamada de procedimento remoto) no Windows XP. Antes do Windows XP SP2, o serviço de RPC era executado na conta Sistema Local, o que permitiu ao Blaster, Welchia e outros worms realizar tarefas administrativas explorando a vulnerabilidade do RPC.
Segundo, porque muito serviços são de rede, o que dá ao malware a oportunidade de explorá-los por meio da criação de conexões de entrada para eles através da rede, fazendo com que o serviço infectado crie uma conexão de saída para infectar outros sistemas e realizar outras atividades ilícitas, como encaminhar pressionamentos de tecla monitorados. A maioria das infecções por worms e malware de hoje ocorrem através de algum método de conexão de rede.
Finalmente, porque os serviços são, normalmente, de longa duração, o que equivale a dizer que são executados desde o momento em que o sistema é inicializado até o instante em que é desligado. Isso é atraente para autores de malware, porque significa que podem testar o serviço quanto a falhas por todo o tempo em que o sistema estiver ativo, o que, por fim, dá muito tempo ao malware para realizar suas atividades nefastas.

Ataque dos clones
Poderia ser seu maior triunfo. Se tudo saísse conforme o planejado, ele poderia, em breve, controlar centenas de milhares de sistemas Windows em todo o mundo, emitir virtualmente qualquer instrução para eles e, depois, voltar e assisti-los transmitir obedientemente cada comando seu.
Persistente, ainda que evasivo em seus métodos, ele começou testando, sorrateiramente, diversos sistemas computacionais, em busca de um ponto de entrada vulnerável. Não demorou muito para que encontrasse exatamente o que estava procurando: um sistema não corrigido que sofria de uma vulnerabilidade que ele sabia muito bem como explorar.
O que tornava essa vulnerabilidade em particular tão sinistra era que, explorando-a com êxito, ele poderia ganhar acesso administrativo total ao sistema. Não estaria tomando o controle apenas de uma conta qualquer: estaria manipulando a conta administrativa mais poderosa do Windows. O que ele faria a seguir só poderia ser limitado por sua própria imaginação.
Após alguns momentos de reflexão, ele testou seu código trapaceiro contra o computador não corrigido e vulnerável; e funcionou! Simples assim, ele agora tinha privilégios ilimitados no computador. Ele usou seu acesso administrativo para obrigar o computador a fazer o download e instalar código de cavalo de Tróia, fazer modificações no Registro e, em seguida, reinicializar, transformando o sistema infectado em um assessor pronto e disposto a transmitir seus comandos. A modificação do Registro fez com que o software mal-intencionado fosse executado a cada reinicialização do computador.
Agora, suas intenções estavam claras. Ao ser infectado, todo o computador contaminado testaria portas de rede específicas de todos os outros computadores na rede. Se a porta de rede estivesse aberta e o computador fosse vulnerável, o código do cavalo de Tróia receberia download e seria instalado nesse novo computador. Ocorreriam as mesmas modificações no Registro. O ciclo se repetiria recorrentemente e, assim, estava criado um grande exército de clones pronto a atacar. Ao final do dia, milhares de sistemas Windows em todo o planeta fariam parte desse sinistro exército de clones, deixando de responder a todo comando que fosse emitido por qualquer outra pessoa no mundo.
Como não bastasse, ele se voltou, então, para o site do Microsoft Windows Update e instruiu todos os seus clones a realizar um Ataque de Negação de Serviço, em 15 de agosto de 2003, em uma tentativa de impedir todos os computadores do mundo de fazer o download da correção da vulnerabilidade, que, curiosamente, estava disponível havia meses.
A esta altura você, provavelmente, já se deu conta de que eu apenas descrevi a pandemia do worm MS Blaster que, em agosto de 2003, abateu computadores Windows em todas as partes do globo. O Blaster foi, indiscutivelmente, um dos ataques mais graves de toda a história do Windows, provocando um prejuízo de bilhões de dólares. A ironia é que, embora o MS Blaster tenha tido um poder enorme sobre os computadores que infectou, ele era notavelmente simples em sua implementação.

Como o Blaster funciona
O Blaster e seus derivados usam a vulnerabilidade do serviço de RPC do Windows para executar um estouro de buffer. Um agressor que explorasse com êxito essa vulnerabilidade conseguiria executar código com os privilégios do Sistema Local no sistema afetado, permitindo-lhe efetuar qualquer ação no sistema: instalar programas, visualizar, alterar ou excluir dados e criar novas contas com privilégio total.
No caso do Blaster, o worm verifica as redes, automaticamente, em busca de computadores com a porta TCP 135 aberta. Quando encontra uma vítima, o Blaster tentar explorar a vulnerabilidade de RPC. Se obtém êxito, ele se conecta à porta 4444 no destino e instrui o computador-vítima a inicializar o TFTP e fazer o download de uma cópia do worm, denominada MSBLAST.EXE, a partir do sistema infectado. (O TFTP é incluído como parte do sistema operacional no Windows 2000, Windows XP e Windows Server 2003). Em seguida, o sistema de ataque instrui o computador recém-infectado a inicializar o MSBLAST.EXE, fazendo com que o computador vitimado se torne um novo agressor. O Blaster também escreveu código na chave HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft \Windows\CurrentVersion\Run do Registro, o que o habilitou a ser executado em toda a reinicialização do computador.

Sistema de Proteção de Serviços
Os serviços foram fortalecidos e protegidos, no Windows Vista, de quatro maneiras: sendo executados com Privilégios Mínimos, Isolamento de Serviço, Acesso de Rede Restrito e Isolamento de Sessão 0. Discutirei todos em detalhe.
Executando com privilégios mínimos Muitos serviços do Windows eram, antes, executados no contexto da conta Sistema Local, a mais poderosa do Windows. A conta Sistema Local possui direitos e privilégios de usuário tais como a capacidade de acessar quase todos os objetos do sistema ou outro perfil de usuário, representar usuários, abrir chaves confidenciais do Registro, como: HKLM\SECURITY e apresentar as credenciais do computador a servidores remotos. Uma vez que os autores de malware adorariam ter esse nível de acesso e controle do Windows, é certo que todo o serviço em execução no contexto de Segurança do Sistema Local se tornariam um alvo saboroso.
Acontece que, embora uma série de serviços do Windows tenham sido configurados para execução na conta Sistema Local, muitos deles precisam, apenas, de um pequeno subconjunto dos privilégios exclusivos dessa conta. Infelizmente, o Windows XP e versões anteriores do Windows operam à maneira "tudo ou nada", o que equivale a dizer que não fornecem um mecanismo de seleção e escolha dos privilégios necessários. Assim, muitos serviços do Windows acabam, inevitavelmente, com privilégios de segurança excessivos e desnecessários.
O Sistema de Proteção de Serviços do Windows Vista cuida desse assunto, introduzindo o conceito de privilégios mínimos na configuração de serviços. Os privilégios mínimos permitem que os serviços sejam executados com o mínimo de privilégios necessários para que funcionem, em vez de obrigá-los a executar com todos os privilégios padrão atribuídos à conta que usam para fazer o logon.
Por exemplo, pode ser necessário que um serviço consiga atuar como parte do sistema operacional, mas não precise criar um token de segurança. Com privilégios mínimos, é possível remover o privilégio de criar tokens. Por conseqüência, são reduzidos os danos possíveis de serem causados por um agressor, caso o serviço se torne vulnerável a um explorador no futuro. Os desenvolvedores podem usar ferramentas de linha de comando, como o SC.exe (consulte a Figura 2), ou métodos de programação para definir e especificar aos privilégios suas necessidades particulares de serviços. Prontamente, a Microsoft aplicou os privilégios mínimos para reduzir os privilégios padrão em todos os serviços pré-instalados do Windows Vista.
Figura 2 As opções de comando do SC definem os privilégios dos serviços no Windows Vista
Figura 2 As opções de comando do SC definem os privilégios dos serviços no Windows Vista (Clique na imagem para diminuir a exibição)
Figura 2 As opções de comando do SC definem os privilégios dos serviços no Windows Vista
Figura 2 As opções de comando do SC definem os privilégios dos serviços no Windows Vista (Clique na imagem para aumentar a exibição)
Isolamento de serviço Nas versões do Windows anteriores ao Windows Vista, quando um serviço precisa acessar um objeto privilegiado (como uma chave do Registro ou arquivo confidencial), ele ganha acesso por um de três métodos: usando a conta Sistema Local para acessar o objeto; diminuindo a segurança na chave do Registro ou no arquivo para habilitar uma conta de serviço de menos privilégios e ganhar acesso; ou criando uma conta especificamente para o serviço e permitindo acesso a todos os objetos apenas por essa conta.
Embora todas essas abordagens funcionem, existem problemas básicos em cada uma delas. As duas primeiras são arriscadas por natureza e a última apresenta a dor de cabeça de ter que gerenciar senhas manualmente nas contas novas.
Suponha, por exemplo, que um programa antivírus instale um serviço que precisa de acesso a diversos objetos confidenciais do sistema, como o arquivo de assinaturas de vírus e entradas do Registro pertencentes ao software antivírus. Se o serviço antivírus estiver configurado para usar a conta Sistema Local ou, nesse quesito, qualquer outra conta de segurança interna para acessar seus objetos, isso poderia significar que, se algum outro serviço do Windows que use essa conta fosse infectado por malware, esse poderia, potencialmente, acessar e modificar os arquivos de assinatura de vírus, alterar configurações do Registro que afetam o modo de funcionamento do software antivírus ou, simplesmente, desligar de uma vez o serviço antivírus. De fato, os malwares de hoje usam exatamente algumas dessas técnicas para se manterem ocultos e funcionais.
O Windows Vista cuida dessas preocupações de segurança e capacidade de gerenciamento com o isolamento de serviço, que permite ao serviço reservar um objeto para uso exclusivo, protegendo o recurso – tal como acesso a arquivo ou chave do Registro – com uma entrada de controle de acesso que contém o SID (identificador de segurança) do serviço. Assim, o serviço antivírus descrito em nosso exemplo pode ser executado em uma conta de privilégios baixos e continuar a ter acesso a arquivos de assinatura ou chaves do Registro confidenciais. Para permitir esse acesso, o serviço antivírus (em execução nessa conta de menos privilégios) teria um SID atribuído pelo Windows Vista. Atribuído o SID, o programa antivírus pode, então, modificar as ACLs (listas de controle de acesso) de seu sistema de arquivos e objetos do Registro para dar acesso, exclusivamente, ao serviço antivírus.
Vou dar outro exemplo. Ainda em 2003, o worm Welchia começou a aproveitar uma vulnerabilidade de RPC para gravar a si mesmo em %System%\Wins\Dllhost.exe. Ele também adicionou chaves a HKLM\SYSTEM\CurrentControlSet\Services para instalar seus próprios serviços no sistema Windows infectado. Hoje, contudo, o Windows Vista poderia parar o Welchia, restringindo o acesso a ambos os locais aos serviços apropriados específicos e usando contas de menos privilégios para lhes conceder acesso.
Acesso de rede restrito O Windows Vista contém um novo firewall que se baseia nos recursos disponibilizados pelo firewall do Windows XP SP2. Os principais recursos novos compreendem filtragem de saída e integração de IPSec. O novo firewall também se integra com o Sistema de Proteção de Serviços do Windows Vista, para dificultar a execução de malware em um serviço explorado do Windows visando a realização de certas atividades de rede impróprias.
No firewall do Windows Vista, são atribuídas, aos serviços do Windows, diretrizes de firewall de rede que impõe limitações e restrições de comportamento. Por exemplo, a um serviço como o Plug and Play, que talvez nunca precise se comunicar por uma porta de rede, pode ser atribuída uma restrição de tipo "sem acesso de rede". Com essa restrição ativada, um exploit criado tendo em vista esse serviço em particular jamais o alcançará por meio de uma abordagem baseada em rede. Qualquer tentativa, de entrada ou de saída, de fazer comunicação através do serviço restrito seria bloqueada pelo firewall. Outros serviços que têm necessidades legítimas de acessar uma rede podem ser configurados de modo que usem somente portas específicas. Os desenvolvedores podem aproveitar esse recurso para restringir o acesso de rede de seus serviços.
As restrições de rede cooperam com o Sistema de Proteção de Serviços para proporcionar uma defesa robusta contra potenciais ataques baseados em serviços, o que representa um grande avanço em relação às versões anteriores do Windows. Antes, não havia um modo para o Windows decidir como, onde e quais serviços poderiam ter permissão de se comunicar através da rede. Todavia, usando as restrições da Rede de Firewall do Windows nos serviços de RPC, poderíamos evitar que vírus tais como Blaster, Sasser ou Welchia usassem serviços infectados para se comunicar com outros computadores.
Isolamento de sessão 0 A Troca Rápida de Usuário do Windows XP acomoda, simultaneamente, os usuários registrados por logon colocando cada um deles em uma sessão diferente do Windows. A sessão 0 é criada durante a inicialização e, conforme a necessidade, vão sendo acrescentadas mais sessões. Os serviços sempre foram executados na Sessão 0 e, antes do Windows Vista, os aplicativos de usuário também conseguiam executar nela. Contudo, há implicações de segurança arriscadas em executar aplicativos de usuário e serviços do Windows na mesma sessão, pois os serviços são executados com privilégios elevados, havendo, portanto, espaço para softwares mal-intencionados buscarem um meio de elevar seus próprios níveis de privilégios.
O Windows Vista cuida desses riscos de segurança reservando a Sessão 0 exclusivamente para os serviços, executando os aplicativos em outras sessões e tornando a Sessão 0 não interativa (o que significa que um serviço não pode criar uma interface de usuário, como uma caixa de diálogo ou prompt, que possa ser acessada por um usuário final). Devido a essas alterações, o Isolamento da Sessão 0 terá impacto sobre a compatibilidade de aplicativo de todos que desenvolvem serviços ou drivers do Windows.

Resumo
O Windows Vista é o primeiro sistema operacional de área de trabalho de Computação Confiável completa lançado pela Microsoft e contém avanços significativos que terão longa vida na proteção de usuários do Windows. A segurança computacional é, obviamente, uma disciplina em evolução e não há dúvida de que os autores de malware estejam fazendo constantes buscas, testes e pesquisas para descobrir maneiras de explorar o Windows. No entanto, os recursos do novo Sistema de Proteção de Serviços do Windows Vista erguem uma barreira significativa, aprimorando as configurações de segurança padrão e reduzindo a área de superfície potencial para ataques. Consulte microsoft.com/whdc/system/vista/Vista_Services.mspx para obter mais informações sobre esses aperfeiçoamentos substanciais.

Wole Moses é líder regional do Microsoft Windows e veterano da Microsoft há oito anos. Vivendo atualmente em Istambul, Turquia, Wole trabalha com os clientes do maior mercado emergente do Oriente Médio e África para ajudá-los a imaginar e criar soluções baseadas em Microsoft que otimizem sua infra-estrutura de TI ao mesmo tempo em que maximizem a segurança.


 Os arquivos do desktop: Kit de Instala&#231;&#227;o Automatizada do Windows
Os arquivos do desktop
Kit de Instalação Automatizada do Windows
Wes Miller

Historicamente, a Microsoft sempre ofereceu duas versões das ferramentas de implantação produzidas pela equipe de implantação do Windows. A primeira versão veio na forma de arquivo deploy .cab, fornecido com CD do Windows por muitos anos. Ele incluía documentação e ferramentas como o Gerenciador da instalação, para criação de arquivos de instalação autônoma, assim como
a ferramenta Sysprep, usada para preparar desktops para implantação. A outra versão das ferramentas de implantação era o OPK (kit de pré-instalação OEM), que era projetado especificamente para atender às necessidades dos fabricantes de sistemas OEM, e estava disponível somente para eles. Essa era a maneira como o Windows® PE era originalmente distribuído. Há uma nova versão do OPK para o Windows Vista™, mas ela continua disponível apenas para OEMs.
Felizmente, para alguns dos outros consumidores da Microsoft que não conseguiram obter o Windows PE durante a vigência do Windows XP, haverá um sistema análogo ao OPK disponível, chamado de WAIK (Kit de Instalação Automatizada do Windows). O WAIK estará disponível gratuitamente para download em microsoft.com/downloads depois do lançamento do Windows Vista, e incluirá os seguintes componentes: Windows PE 2.0, Serviços de Implantação do Windows, ImageX e o Gerenciador de Imagen de Sistema do Windows – uma ferramenta que eu não mencionei antes, que permite a criação de arquivos unattend.xml para automatizar a instalação. Também foi fornecida a documentação completa para todas as ferramentas.
Observe que o método recomendado para obtenção do WAIK é fazer o download do BDD (Business Desktop Deployment Solution Accelerator) completo em microsoft.com/desktopdeployment, que oferece não só o WAIK, mas também o USMT (Ferramenta de Migração de Perfil do Usuário), ACT (Kit de Ferramentas de Compatibilidade de Aplicativos). O BDD também inclui ferramentas e ajuda extra para uma implantação bem–sucedida do Windows Vista.

Windows PE 2.0
Abordei detalhadamente o Windows PE 2.0 na edição de novembro de 2006 da TechNet Magazine, então não vou entrar em muitos detalhes aqui; basta dizer que o WAIK fará o lançamento oficial da nova compilação do Windows PE para o Windows Vista. É importante compreender o Windows PE, já que todas as outras ferramentas do WAIK usam ou trabalham com o Windows PE de algum modo. Você pode encontrar meu artigo sobre o Windows PE 2.0 aqui (em inglês) .

ImageX
Em minha última coluna, falei bastante sobre o formato de arquivo WIM (imagem do Windows). (Consulte microsoft.com/technet/technetmag/issues/2006/12/desktopfiles (em inglês).) Agora, vou examinar o ImageX, que é uma ferramenta de linha de comando pequena, mas poderosa, que possibilita a geração de imagens interna do Windows Vista. Quando planejamos o ImageX, tínhamos considerado a criação de uma ferramenta baseada em GUI, mas decidimos nos concentrar na linha de comando, já que a automação do processo de imagem era o componente crítico. Para ver as opções de linha de comando do ImageX, consulte a Figura 1.
Figura 1 Ferramenta de linha de comando ImageX em ação
Figura 1 Ferramenta de linha de comando ImageX em ação (Clique na imagem para diminuir a exibição)
Figura 1 Ferramenta de linha de comando ImageX em ação
Figura 1 Ferramenta de linha de comando ImageX em ação (Clique na imagem para aumentar a exibição)
O WDS (Serviços de Implantação do Windows), que descreverei mais tarde, oferece uma ferramenta GUI leve, que permite fácil captura de imagens, mas não oferece a funcionalidade completa do ImageX. Também é importante observar que o ImageX foi projetado e testado para capturar imagens para implantação com o Windows PE. Ele não foi projetado para fazer capturas "ao vivo" de sistema do Windows que estejam em execução.
Se você estiver familiarizado com qualquer outra ferramenta de imagens de sistema, você tem um certo grau de conhecimento do ImageX. O ImageX foi projetado para ser de uso simples, permitindo que você capture e aplique imagens com facilidade e ao mesmo tempo fornecendo funcionalidades críticas que freqüentemente estão ausentes ou incompletas nas ferramentas de implantação usadas comumente antes dele. Um exemplo disso, sobre o qual vou falar um pouco, é a capacidade de montar, com facilidade e transparência, uma imagem como parte de seu sistema de arquivos local, de modo que você possa exibir, modificar ou excluir arquivos de dentro de uma imagem existente.
O ImageX oferece as opções de manipulação de imagem exibidas na Figura 2. Vou nomear alguns comandos específicos para descrevê-los com mais profundidade.
Figure 2 Opções de manipulação de imagem (Close Figure 2)

Opção | Descrição
IMAGEX /APPEND | Acrescenta uma nova imagem de volume a um arquivo WIM que já contém uma imagem de volume existente.
IMAGEX /APPLY | Aplica uma imagem de volume a um volume que foi particionado e formatado.
IMAGEX /CAPTURE | Captura uma imagem de volume inicial em um arquivo WIM.
IMAGEX /DELETE | Exclui permanentemente as referências a uma imagem de volume de um arquivo WIM. Observe que esta função exclui os metadados. Ela não remove os dados do arquivo compactado – isso pode ser feito com a opção /export para criar um WIM totalmente novo.
IMAGEX /DIR | Exibe a árvore do diretório de uma imagem de volume especificada em um arquivo WIM.
IMAGEX /EXPORT | Exporta uma imagem de volume de um arquivo WIM ou diversos arquivos SWM (Split WIM).
IMAGEX /INFO | Exibe os detalhes de uma determinada imagem de volume ou arquivo WIM – também pode definir a opção /boot para uma imagem de volume específica que contém o Windows PE. Apenas o Windows PE pode ser inicializado a partir de um arquivo WIM.
IMAGEX /SPLIT | Divide um arquivo WIM em um ou mais arquivos SWM menores, para que possa estar presente em vários CDs ou DVDs.
O comando Capture deve ser relativamente claro – o principal a ser lembrado é que você usa apenas uma captura por WIM. Como um arquivo WIM é apenas uma captura de arquivo, você pode capturar um volume inteiro (C:) ou mesmo apenas um diretório (C:\Test). O comando Application é o mesmo – você pode aplicar uma imagem a um diretório (mesmo que você tenha capturado um volume inteiro) ou, mais provavelmente, à raiz de um volume. Uma vez que já exista uma única imagem de volume em um WIM, você deve usar o comando append para acrescentar algo a ele. O comando Apply também é relativamente auto-explicativo e só se torna complicado quando você está aplicando vários arquivos WIM. O comando Delete é útil se você desejar remover a referência a uma imagem de volume específica – mas, para remover completamente os dados dessa imagem, você deve usar export para criar um novo WIM, sem esses dados (isto é, se quiser reduzir o tamanho da imagem, removendo os dados remanescentes, você deverá usar export). Considere export como uma ferramenta que pode agir como um desfragmentador ou consolidador, permitindo que você transforme uma imagem de volume em um ou mais arquivos WIM ou exporte-a para seu próprio arquivo WIM, completamente independente. O ImageX também oferece as seguintes opções de edição de imagens: IMAGEX /MOUNT, IMAGEX /MOUNTRW e IMAGEX /UNMOUNT.
Conforme mencionado, a equipe de produto incorporou capacidades de edição e formatação nas ferramentas de imagem logo do começo. Habilitando a edição, o formato e as ferramentas permitem que os clientes copiem os arquivos, apliquem service packs, adicionem/removam arquivos ou aplicativos independentes ou adicionem/removam outros dados da imagem conforme necessário (mesmo montar e modificar o Registro). Os serviço das imagens sempre foi um foco principal.
Você pode pensar a montagem da imagem como o carregamento do arquivo WIM como um diretório virtual. Se você tiver familiaridade com esse sistema, a analogia mais adequada provavelmente é o ponto de montagem de volume, que permite que você monte um volume inteiro em um diretório existente em um outro volume (tornando F: visível como C:\DriveF, por exemplo). De maneira similar, você pode ter usado a ferramenta Microsoft® Virtual CD ou outras ferramentas de montagem ISO que permitem que você monte imagens de CD (ISO) como unidades locais. Do mesmo modo, o ImageX lhe permite montar um arquivo WIM como uma sobreposição sobre um diretório. Você cria o diretório e, em seguida, usa o comando mount para sobrepor a imagem de volume especificada na parte superior do diretório, como se aplicasse a imagem ali.
Diferentemente da ferramenta Virtual CD, no entanto, você pode montar uma imagem WIM mesmo se ela estiver em um compartilhamento de rede ou em mídia removível. É claro que isso pode limitar sua capacidade de edição – um WIM em mídia óptica (CD ou DVD) geralmente será editável em modo somente leitura. Você também pode editar apenas uma imagem de volume em um WIM por vez, se estiver editando em modo de leitura/gravação – isso é para permitir bloqueio adequado e atualização segura do arquivo quando ele for desmontado.
Você pode montar a imagem como somente leitura (/mount) ou em leitura/gravação (/mountrw). Quando você usa leitura/gravação, quaisquer alterações feitas na imagem são armazenadas em cache temporariamente (elas não têm efeito imediatamente) e, quando você executar o comando /unmount, com a opção /commit, as alterações ficam permanentemente no WIM. Se você fez alterações e, depois, decidiu que, na verdade, não queria conservá-las, também pode descartá-las em vez de confirmá-las, ao desmontar a imagem. Isso é tudo ou nada – todas as gravações que você fez enquanto o arquivo WIM estava montado são confirmadas ou descartadas.
Observe que há uma limitação importante aqui. Assim como o comando delete, quando você usa a funcionalidade de leitura/gravação para editar o WIM, os dados de arquivos no arquivo WIM em si não são completamente apagados ou limpos – os arquivos são acrescentados ao final do arquivo WIM e a referência anterior na imagem do volume é suplantada pelos dados atualizados. Isso significa que, se você acrescentou um novo arquivo de 5MB, substituindo um arquivo de 5MB existente, sua imagem aumentará o equivalente ao tamanho do arquivo de 5MB depois de compactado (isto é, 5MB ou menos, dependendo do tipo de compactação utilizado). Para remover os dados antigos do WIM (se desejar diminuir o tamanho da imagem), você precisaria usar /export para exportar a imagem de volume para um arquivo WIM totalmente novo.
Se você leu minha discussão sobre o Windows PE 2.0 na edição de novembro de 2006 da TechNet Magazine, deve lembrar que ele oferece suporte à inicialização a partir de um WIM. Para fazer isso, o arquivo WIM é lido com o uso de um driver, de maneira semelhante ao que o ImageX faz. Mas o suporte do ImageX foi projetado para ser usado durante o design, e o recurso de inicialização do WIM foi projetado especificamente para ser somente leitura e trabalhar apenas para o Windows PE. Então, apesar de os recursos serem similares, os drivers e a implementação são diferentes.
Além da ferramenta ImageX, a Microsoft oferece uma API documentada formalmente, a WIMGAPI, que permite suporte completo a qualquer ferramenta de imagem que queira capturar, aplicar ou modificar arquivos WIM. Então, qualquer terceiro que deseje adicionar suporte a imagens ou substituir uma infra-estrutura de imagens existente, pode fazê-lo com a WIMGAPI. Essa API faz parte do WAIK e, portanto, é distribuída com ele.

Instalação baseada em imagem do Windows
Com o formato de imagens em mãos, foi projetado o novo mecanismo para instalação. Fundamentalmente, ele é muito parecido com a antigo Miniinstalação ou as boas-vindas do Windows, fazendo as perguntas básicas para instalar e configurar o sistema ao mesmo tempo em que manuseia uma configuração de disco antes de instalar a imagem a partir de install.wim no DVD na instalação do Windows. O objetivo principal do novo mecanismo de instalação era permitir instalações manuais do Windows. Previmos que muitos clientes OEM e empresariais usariam o ImageX para fazer suas implantações.

Serviços de Instalação Remota
Nesse ponto, você pode estar se perguntando porque eu não falei de RIS (Serviços de Instalação Remota). O RIS é algo que também herdei quando comecei a trabalhar na equipe de implantação do Windows. O RIS, que foi lançado pela primeira vez com o Windows 2000 e novamente com o Windows Server® 2003, usa PXE (Pre-boot Execution Environment) para inicializar um computador em rede até o ponto em que um assistente rudimentar possa ser concluído, e a instalação do Windows possa ser feita em toda a rede.
O único grande problema do RIS é que ele era muito frágil. A versão do RIS para o Windows Server 2003, originalmente com suporte apenas para o Windows 2000 Professional, expandiu o suporte para as versões de servidor do Windows. Com a chegada dos controladores de armazenamento SATA (Serial ATA) e GB ou NICs mais rápidos, manter os drivers atualizados no RIS era sempre muito perigoso. Além disso, o RIS não oferece suporte a muitos dos mesmos locais que o Windows, o que significa que a instalação de versões localizadas do Windows com teclados localizados pode ser difícil, senão impossível. Os serviços de implantação do Windows foram projetados para ser uma combinação da instalação do Windows e do RIS – uma inicialização iniciada por PXE do Windows PE, que permitiria que você implantasse um arquivo WIM na rede.
O WDS foi projetado não apenas para estar disponível na versão que está para ser lançada do Windows Server, codinome "Longhorn", mas também como uma atualização que seria instalável no Windows Server 2003. Isso significa que o WDS conseguiria implantar o Windows Vista a partir de versões anteriores do Windows Server, e que ele também poderia implantar versões anteriores do Windows. Na verdade, o WDS não apenas funciona com o RIS, mas requer uma instalação do RIS para funcionar. Isso ocorre porque ele funciona atualizando a infra-estrutura do RIS para que seja compatível com WDS, ao mesmo tempo em que fornece a nova infra-estrutura WDS.
Além de funcionar como uma atualização do RIS – portanto, fornecendo um bom caminho de migração para clientes que continuam a usar versões anteriores do Windows enquanto começam as implantações do Windows Vista, o WDS também oferece ferramentas de gerenciamento muito melhores do que as que o RIS tinha, permitindo facilmente a adição de novas imagens ao servidor. Ele também oferece uma estrutura PXE conectável, o que significa que um servidor PXE de terceiros pode integrar-se e especificar que ele deve responder à solicitação de um cliente PXE específico, em vez da solicitação do WDS. Recebíamos essa solicitação freqüentemente com o RIS e não podíamos atendê-la na época.
Inicialmente, disponível como um componente instalável no Windows Server 2003 para atualizar o RIS, o WDS também deve ser lançado como componente integrado dos produtos do Windows Server "Longhorn". A Microsoft também está planejando, atualmente, incluir funcionalidades do WDS nas versões futuras do SMS (que será conhecido como System Center Configuration Manager).
O WDS funciona oferecendo uma versão inicializada por PXE do Windows PE 2.0. Essa imagem está presente em um WIM (o que significa que há poucos dados transmitidos pela rede) e é inicializada pela rede em um RAMDisk. A instalação então acontece com o Windows PE, usando um novo aplicativo cliente com a funcionalidade oferecida pelo rudimentar aplicativo OSChooser do RIS, no passado.
Embora o WDS não ofereça suporte a imagens do RIS do Windows XP, Windows 2000 ou Windows Server 2003 originalmente, ele consegue implantar imagens Sysprep desses sistemas. O WDS também se integra ao Active Directory®, como o RIS sempre fez, mas o servidor PXE também pode ser executado sem o Active Directory, se necessário. O WDS pode até mesmo ser iniciado a partir do Windows PE, inicializado a partir de algo diferente de PXE – como um CD, DVD ou UFD (unidade flash USB). Essa é uma funcionalidade útil que o RIS não podia oferecer.
Há, na verdade, três modos nos quais o WDS pode operar, dependendo de seu uso corrente do RIS:
WDS herdado Os binários são instalados, mas o OSChooser é o mecanismo de inicialização. RISetup e RIPrep, a ferramenta de instalação em script e a ferramenta de instalação baseada em imagem para RIS, ainda funcionam.
Modo misto Ambos os mecanismos de inicialização estão disponíveis, ambos os conjuntos de ferramentas de imagem funcionam e ambos os conjuntos de ferramentas de gerenciamento funcionam.
Nativo Não há funcionalidade RIS, apenas funcionalidade WIM, inicialização do Windows PE e novas ferramentas de gerenciamento estão disponíveis. Observe que este é o único modo programado para estar disponível para o Windows Server "Longhorn". Ele não incluirá nenhuma funcionalidade RIS.
O WDS também implementa um protocolo personalizado de comunicação cliente-servidor e, como resultado, um cliente OEM ou empresarial poderia também, em teoria, compilar seu próprio aplicativo de implantação.
O processo de capturar uma imagem WIM para um servidor WDS é quase idêntico ao cenário Sysprep descrito. A diferença é que a última etapa envolverá fazer a inicialização na imagem de captura WDS, uma imagem do Windows PE que existe para ajudá-lo a capturar um sistema cliente, e capturá-lo no servidor WDS.
Os componentes principais do WDS são os seguintes: o WDS Server Service, PXE Server, Armazenamento de Imagens, protocolo de comunicação, compartilhamento de arquivos com imagens do Windows PE (a serem inicializadas), imagens WIM (a serem instaladas), além de arquivos de gerenciamento relacionados.
O WDS foi projetado para ser relativamente leve e fornecer uma experiência quase idêntica (apesar de freqüentemente mais rápida) do que a instalação tradicional do Windows baseada em mídias ópticas. A implementação do WDS como atualização do RIS permite que você substitua o RIS gradualmente e com liberdade, enquanto trabalha na implantação do Windows Vista em sua organização. Ela também funciona de modo mais fácil e rápido do que o RIS funcionava com versões anteriores do Windows.

Gerenciador de Imagem de Sistema do Windows
O componente final do WAIK é o SIM (Gerenciador de Imagem de Sistema do Windows). Se você está familiarizado com o Setup Manager de versões anteriores do Windows, então o conceito do Windows SIM deve ser mais ou menos familiar para você. Essa ferramenta permite que você execute diversas tarefas com arquivos de instalação autônomos. É possível criar facilmente um novo arquivo de instalação autônomo, editar um já existente ou verificar as configurações de um arquivo existente em comparação com uma imagem específica do Windows Vista. A ferramenta também pode mostrar todas as possíveis opções de configuração dado um determinado WIM fornecido com o Windows Vista – pense nas opções de instalação autônomas tradicionais, que sempre foram documentadas nos arquivos de ajuda que acompanhavam o deploy.cab. Finalmente, o Windows SIM pode ajudar a criar compartilhamentos de distribuição e conjuntos de configurações, que são usados para acrescentar drivers, aplicativos e atualizações às instalações do Windows Vista por intermédio de um arquivos de instalação autônomo.
O Windows SIM requer que você seja um administrador local no sistema em que está sendo feita a execução. Quando você abre o Windows SIM, você vê cinco painéis, como ilustrado na Figura 3.
Figura 3 Gerenciador de Imagem de Sistema do Windows
Figura 3 Gerenciador de Imagem de Sistema do Windows (Clique na imagem para diminuir a exibição)
Figura 3 Gerenciador de Imagem de Sistema do Windows
Figura 3 Gerenciador de Imagem de Sistema do Windows (Clique na imagem para aumentar a exibição)
Distribution Share, na parte superior esquerda, é um painel que exibe drivers e outros pacotes que você adicionou por intermédio do SIM. Por padrão, ele não tem um compartilhamento de distribuição montado, mas você pode facilmente abrir ou criar um.
O painel Windows Image, subordinado a Distribution Share, exibe as opções de configuração (Components and Packages) em uma imagem de volume específica ao Windows em um WIM. Observe que você monta uma única imagem de volume do Windows (um SKU no DVD do Windows Vista) por vez.
Answer File, o painel do centro, exibe as opções de configuração em um arquivo de instalação autônomo do Windows Vista novo ou existente, bem como as configurações padrão definidas pelos catálogos (as configurações possíveis) da imagem de volume do WIM que você montou.
Properties, no canto superior direito da janela, é um painel que permite que você edite as propriedades individuais de um componente do painel Answer File.
O último painel é Messages, localizado na parte inferior da janela e que exibe comentários mais aprofundados, inclusive uma exibição do XML bruto de um arquivo de instalação autônomo do Windows Vista (sempre em formato XML), bem como uma saída de validação e quaisquer mensagens relacionadas a quaisquer conjuntos de configurações que você esteja usando atualmente (a guia Configuration Set conterá dados somente se você tiver um conjunto de configurações aberto).
Como vocês viram, o WAIK oferece um conjunto muito poderoso de ferramentas para ajudá-lo a implantar o Windows Vista. A equipe de implantação do Windows fez um ótimo trabalho na criação de uma coleção de ferramentas que, como você vai ver, tornam a implantação do Windows Vista mais fácil do que a de qualquer versão anterior do Windows.

Wes Miller é gerente de desenvolvimento da Pluck (pluck.com) em Austin, Texas. Antes disso, trabalhou na Winternals Software e na Microsoft, como gerente de programas e gerente de produtos do Windows. Wes quer agradecer Scott Dickens e John Macintyre, da Microsoft, pela ajuda oferecida nesta coluna. Ele pode ser contatado pelo email technet@getwired.com.


 Anota&#231;&#245;es de campo: Suporte t&#233;cnico para parentes
Anotações de campo
Suporte técnico para parentes
James Snell

EU ME CASEI ano passado e, em troca de minha bela esposa, parece que assinei um contrato de suporte técnico com toda a família dela. Recentemente, recebi, de minha sogra, a temida ligação com a pergunta "Você entende de computadores, não é?" e lá fui eu encontrar seu computador com Windows® XP padecendo com uma tonelada do spyware, adware, barras de ferramentas comuns e assim por diante.
Se você for um profissional de TI, é bem provável que esteja acostumado a consertar computadores. Mas fazer isso para um parente não é fácil. A forma mais rápida de lidar com um computador infectado é formatar o disco rígido e reinstalar o Windows. Infelizmente, a maioria das pessoas rejeitam essa opção, porque não quer perder todos os dados. Normalmente, isso significa um demorado trabalho de faxina à sua frente. Mas e quando não é possível nem mesmo ligar o computador ou se conectar à Internet?
O que é preciso fazer é reunir um kit de ferramentas em uma chave USB de 512 MB, inclusive software antivírus, anti-spyware e firewall pessoal. Mantenha esse kit de ferramentas atualizado e à mão.
Convém, ainda, colocar Windows XP Service Pack 2 (SP2) na unidade USB. Embora o Windows XP agora venha com SP2 na caixa, a versão da minha sogra é de data anterior a essa edição. É possível fazer o download da instalação do Windows XP SP 2 em microsoft.com/technet/prodtechnol/winxppro/maintain/winxpsp2.mspx. (Queremos a versão para vários computadores; aquela para instalação em um único computador utiliza o Windows Update.) Com 266MB, dificilmente será um download rápido, mas você só precisa fazê-lo uma vez.
Então, digamos que você passe a tarde formatando e instalando o SO ou removendo laboriosamente vírus e spyware para depois, em todo caso, instalar as atualizações de software necessárias para o Windows, mais firewall, atualizar as definições do antivírus e assim por diante. E agora? Você, certamente, não quer passar todos os seus finais de semana fazendo isso. Há várias providências que você pode tomar para tornar cenários como esse menos prováveis.

Banir o junkware
O sistema da minha sogra estava tomado de softwares instalados, principalmente, por amigos – desde o mais útil até o pior dos lixos. Para impedir que isso se torne recorrente, eu bloqueei a conta de administrador com uma senha forte e configurei minha sogra como usuário padrão (ela não precisa usar a conta de administrador com tanta freqüência). Na próxima vez em que alguém tentar instalar alguma coisa para ela, terá que fazer o logon como administrador para prosseguir e, normalmente, isso é o bastante para dissuadi-lo. Isso, mais um pouco de educação do usuário, deve manter o lixo pequeno. (Get Safe Online, getsafeonline.org, dá algumas dicas ótimas para os usuários manterem seus PCs seguros.)
As necessidades de segurança de minha sogra são diferentes no que diz respeito a senhas. Eu desativei a senha da conta de usuário para estimulá-la a usá-la. Além do mais, imagino que seja mais provável que alguém com más intenções e acesso físico ao computador remova a caixa da casa do que os dados da caixa.
Assim, pode parecer bobagem que eu cole um recadinho na parte de dentro da porta em frente ao computador. Porém, não me preocupa que ela obtenha a senha de administrador sem que eu saiba – afinal, o computador é dela. Embora isso não fosse aceito como prática recomendada em uma empresa, minha sogra não armazena nenhum dado crítico e não se aborrece que outras pessoas usem seu computador. A meta aqui é facilitar a sua vida de usuário e – ainda mais importante – a minha vida como seu engenheiro de suporte técnico.

Repelir hóspedes!
A próxima etapa era providenciar um pouco de proteção extra. Agrada-me o fato de que um firewall esteja integrado ao Windows e que existam firewalls de terceiros. Todavia, não confio em um único e solitário firewall. Para aumentar a segurança, minha sogra agora tem um roteador ADSL com firewall integrado. Sim, é um gasto extra e uma peça a mais na engrenagem para configurar e executar, mas isso realmente dá um grau de proteção adicional. Além do que, trata-se de uma caixa com luzes pisca-pisca, e isso impressiona muito!
Mas não suponha que a configuração inicial do roteador seja segura. Eu selecionei uma dupla que, por padrão, possuía interfaces de Web e telnet habilitadas no lado público. Reserve um tempo para examinar as opções avançadas.
Firewalls de software não são carregados até que os componentes do sistema de rede estejam ativos. O firewall interno do Windows é a única proteção que você tem durante os primeiros estágios da inicialização (mais um motivo para instalar Windows SP2 antes de conectar o computador à Internet). Mesmo desabilitando o firewall do Windows, você continuará protegido até que o firewall escolhido tenha sua chance de iniciar. Além disso, com o firewall do roteador in loco, eu não preciso mais me preocupar que algo o desligue, por ser um dispositivo separado; se ele não estiver ativo, minha sogra não conseguirá se conectar. Ademais, eu o vejo da mesma forma que dados de chaveamento duplo. Para que um ataque tenha êxito, tanto o roteador, quanto o firewall do software devem falhar ao mesmo tempo. Não é impossível, mas é menos provável.

Incomodar e proteger
Imagine como todo o processo teria sido muito mais fácil com um bom backup. Eu não tenho paciência para quem diz que não pode fazer o backup, no mínimo, das informações mais importantes. Gravadores e mídias de DVD não são muito caros e o Windows já é fornecido com software de backup. O problema é ter tantas pessoas que, simplesmente, não o usam. No caso de minha sogra, minha solução foi fazer o usual backup programado da pasta Meus Documentos e salvar o arquivo diretamente na pasta de gravação de CD (%perfildousuário%\Configurações locais\Dados de aplicativos\Microsoft\Gravação de CD). Para que isso funcione, é preciso programar a tarefa agendada para que seja executada apenas quando o usuário tiver feito logon. Dessa forma, o assistente para gravação de CD agora emite prompts regulares (e irritantes) até que ela insira um disco virgem – e isso é exatamente o que eu quero.

Mantenha contato
Instalando o Windows Live™ Messenger, é possível configurar o compartilhamento de área de trabalho. Isso significa que, depois que você voltar para sua casa, se for preciso configurar mais alguma coisa, você poderá ver o que está acontecendo sem ter que fazer outra visita (o que sempre é bom). Eventualmente, também posso confirmar que ter o controle de um computador remoto (o que requer autorização, obviamente) e ser visto enquanto se controla o mouse é ainda mais impressionante do que as luzes pisca-pisca do roteador!

James Snell é ex-especialista de suporte da Microsoft e vive no Reino Unido. Ele trabalhou com usuários domésticos e algumas das maiores contas globais na Microsoft. James atualmente treina uma habilidade nova: a paternidade. Você pode contatá-lo pelo e-mail James.Snell@lineone.net.


 Confidencialidade do Windows: Saindo do inferno da DLL
Confidencialidade do Windows
Saindo do inferno da DLL
Raymond Chen

INFERNO DA DLL. Um problema tão traiçoeiro que tem seu próprio apelido pejorativo. Você instala um programa e, de repente, algum programa não diretamente relacionado deixa de funcionar. Isso é porque, embora você desconheça, os dois programas estão conectados por um arquivo DLL compartilhado. Os dois programas podem ter idéias diferentes sobre qual versão do arquivo MSVCRT.DLL deve existir no diretório do sistema. Ou o primeiro programa pode fazer uma atualização do controle ActiveX® usado pelo segundo – uma atualização com a qual o segundo programa não seja inteiramente compatível.
Se ambos os programas são essenciais para as operações diárias de sua empresa, realmente não importa culpar os programas. O importante é que você precisa recuperá-los e colocá-los em execução. Não há muita diferença entre "Estamos perdendo dinheiro" e "Estamos perdendo dinheiro por causa do Bob". De qualquer modo, sua empresa está perdendo dinheiro e cabe a você resolver o problema imediatamente.
Antigamente, você escolhia qual programa vencia e qual perdia. Após o Windows® 2000, os paliativos foram disponibilizados para ajudá-lo a reparar tais conflitos. Esses paliativos, no entanto, são apenas soluções temporárias, que permitem a você recuperar seu sistema enquanto investiga uma solução mais permanente para o conflito.
O Windows 2000 implementou uma versão rudimentar do que atualmente é denominado charmosamente de Redirecionamento de biblioteca de link dinâmico. Para habilitar o redirecionamento de DLL, crie um arquivo com o mesmo nome que o programa cujas DLLs deseja redirecionar, mas com .local anexado ao nome. Por exemplo, para aplicar redirecionamento para C:\Arquivos de programas\Litware Inc\Invoice.exe, crie o arquivo C:\Arquivos de programas\Litware Inc\Invoice .exe.local. O conteúdo do arquivo não é importante, o importante é que o arquivo exista.
Após habilitar o redirecionamento de um programa, todas as tentativas feitas por esse programa para carregar uma DLL serão examinadas no diretório em que ele está contido antes de ser feita nos locais de pesquisa usuais. Portanto, no caso de o arquivo MSVCRT.DLL ser conflitante, você pode habilitar o redirecionamento em cada programa e fazer uma cópia particular do MSVCRT.DLL no diretório de instalação de cada programa. Depois, cada programa recebe sua própria versão do MSVCRT.DLL – a versão da DLL de teste do programa.
A mágica desta técnica é que ela funciona mesmo se o programa usar um caminho completo para carregar a DLL. Por exemplo, suponha que o programa tente carregar o arquivo de C:\Arquivos de programas\Arquivos comuns\Proseware Inc\taxplugin.dll. Após a atualização para o Proseware 2.0, você descobre que seu plug-in de imposto é incompatível com o programa de emissão de faturas. O que você pode fazer é copiar uma versão antiga do plug-in de imposto em C:\Arquivos de programas\Litware Inc\taxplugin.dll. Embora o programa utilize um caminho completo para carregar o plug-in de imposto, o redirecionamento de DLL ainda examinará o diretório atual e utilizará a substituição de local em vez daquela existente no diretório Proseware Inc.
No Windows XP e no Windows Vista™, as regras para redirecionamento de DLL são um pouco diferentes, mas o princípio geral é o mesmo. Além de criar um arquivo .local, você também pode criar um diretório .local. Nesse caso, o diretório .local é pesquisado em vez de ser pesquisado o diretório de instalação do programa. Isso permite a aplicação do redirecionamento de vários programas no mesmo diretório sem conflito.
Observe que não é possível aplicar redirecionamento a programas que contêm manifesto do aplicativo e as conhecidas DLLs representam também uma isenção de redirecionamento. (Para obter mais detalhes, consulte "Dynamic-Link Library Redirection") (em inglês).
O redirecionamento de DLL não desaparecerá completamente com o inferno da DLL, mas pelo menos apresentará a você algumas técnicas de primeiros-socorros para tentar ajudá-lo enquanto resolve o problema.
Figura 1
Figura 1

Raymond Chen escreve sobre a história do Windows e da programação Win32 em seu site, The Old New Thing (em inglês), bem como em seu novo livro também intitulado The Old New Thing (Addison-Wesley, 2007). Porém, ele não tem um gato de estimação chamado The Old New Thing.