Rede Segura Usando Serviços de Segurança Distribuída Windows PDF
Download "Rede Segura Usando Serviços de Segurança Distribuída Windows 2000"
Lídia da Fonseca Minho
1 Sistema Operacional Rede Segura Usando Serviços de Segurança Distribuída Windows 2000 Documento Técnico Resumo Grandes empresas precisam de flexibilidade para delegar administração de contas e gerenciar domínios complexos. Preocupações com a segurança na Internet estão ocasionando o desenvolvimento de tecnologia de segurança de chave pública que precisa ser integrada à segurança Windows. Para atender estas necessidades de expansão, Microsoft desenvolveu os Serviços de Segurança Distribuída Windows Este documento examina os componentes dos Serviços de Segurança Distribuída Windows 2000 e proporciona detalhes sobre a sua implementação.
2 1999 Microsoft Corporation. Todos os direitos reservados. A informação contida neste documento representa a visão atual da Microsoft Corporation sobre os assuntos discutidos à época da publicação. Como a Microsoft precisa responder às condições variáveis do mercado, este documento não deverá ser interpretado como um compromisso da Microsoft, e a Microsoft não pode garantir a exatidão de nenhuma informação aqui apresentada após a data da publicação. Este documento serve somente como informação. A MICROSOFT NÃO DÁ GARANTIAS, EXPRESSAS OU IMPLÍCITAS, NESTE DOCUMENTO. Microsoft, BackOffice, o logo BackOffice, Visual Basic, Win32, Windows, e Windows NT são marcas registradas e ActiveX e Authenticode são marcas da Microsoft Corporation. Java é uma marca da Sun Microsystems, Inc. Outros produtos ou nomes de empresas mencionados aqui podem ser marca registrada de seus respectivos proprietários. Microsoft Corporation One Microsoft Way Redmond, WA USA 0399 Revisão Técnica por Giuliano Pasquale Seminar Group Microsoft Brasil
3 CONTEÚDO DOCUMENTO TÉCNICO INTRODUÇÃO Destaques 1 SERVIÇOS DE SEGURANÇA DISTRIBUÍDA WINDOWS ACTIVE DIRECTORY E SEGURANÇA...4 Vantagens do Gerenciamento de Conta do Active Directory 5 Relacionamento entre Diretório e Serviços de Segurança 6 Relações de Confiança de Domínio 7 Delegação de Administração 8 Direitos de Acesso Refinado 9 Herança de Direitos de Acesso 10 MÚLTIPLOS PROTOCOLOS DE SEGURANÇA...11 SECURITY SUPPORT PROVIDER INTERFACE...13 PROTOCOLO DE AUTENTICAÇÃO KERBEROS...13 Kerberos Background 14 Integração Kerberos 16 Interoperabilidade Kerberos 16 Extensões Kerberos para Chave Pública 18 SEGURANÇA INTERNET PARA WINDOWS Autenticação Cliente com SSL Autenticação de Usuários Externos 22 Microsoft Certificate Server 22 CryptoAPI 23 ACESSO INTERBUSINESS: PARCEIROS DISTRIBUÍDOS...23 SIGN-ON ÚNICO NA EMPRESA E NA INTERNET...25 Credenciais NTLM 25 Credenciais Kerberos 26 Pares de Chaves Privada/Pública e Certificados 26 Transição sem Igual 27 PROPORCIONANDO UMA MIGRAÇÃO SUAVE PARA DOMÍNIOS DE PRÓXIMA GERAÇÃO RESUMO PARA MAIORES INFORMAÇÕES...29
5 INTRODUÇÃO O sistema operacional Microsoft Windows NT possui excelentes funcionalidades de segurança para a empresa. Um único acesso ao domínio Windows NT permite o acesso a recursos em qualquer lugar da rede corporativa. Ferramentas administrador fáceis de usar, para política de segurança e gerenciamento de contas, reduzem o custo de implantação do Windows NT. O modelo e domínio do Windows NT é flexível e suporta uma ampla faixa de configurações de rede, de um único domínio em uma localização a domínios multimaster espalhados pelo globo. Windows NT também proporciona uma base para segurança integrada para a família BackOffice de serviços de aplicação, incluindo Microsoft Exchange, SQL Server, SNA Server e Microsoft Systems Management Server. O modelo de segurança do Windows NT proporciona um framework sólido para a implantação de aplicações cliente/servidor para a empresa. Atualmente, as empresas estão se abrindo para a Internet. Os negócios precisam interagir com parceiros, fornecedores e clientes usando tecnologias baseadas na Internet. Segurança é essencial para o controle de acesso aos recursos de uma rede corporativa, intranets e servidores baseados na Internet. Intranets estão rapidamente tornando-se a maneira mais efetiva de compartilhar informação entre muitas relações de negócio diferentes. Atualmente, o acesso a informação de negócio não pública por partes externas é controlado através da criação de contas de usuário para aqueles que fazem parte da família de negócios estendida. Parcerias ajudam a definir as relações de confiança que eram aplicadas somente nos funcionários que usavam as instalações corporativas, mas que agora incluem muitas outras pessoas. As tecnologias de segurança também estão mudando rapidamente. Certificados de chave pública e senhas dinâmicas são duas áreas tecnológicas que estão crescendo rapidamente para atender as necessidades de segurança de alto nível do ambiente atual. Acesso remoto a redes públicas e o acesso Internet para comunicações interbusiness estão direcionando a evolução da tecnologia de segurança. A arquitetura de segurança do Windows NT está posicionada de maneira ímpar para aproveitar estes e outros avanços tecnológicos. Windows NT combina facilidade de uso, ferramentas de administração excelentes e uma sólida infraestrutura de segurança que suporta a empresa e a Internet. Destaques Segurança Distribuída do Windows 2000 possui muitas funcionalidades novas para simplificar a administração de domínio, aumentar a performance e integrar tecnologia de segurança Internet baseado em criptografia de chave pública. Os destaques do Serviços de Segurança Distribuída Windows 2000 incluem: Integração com o Windows 2000 Active Directory para proporcionar gerenciamento de contas para domínios grandes, escalável e flexível, com controle de acesso refinado e delegação de administração. Protocolo de autenticação Kerberos versão 5, um padrão maduro de segurança Internet que é implementado como o protocolo padrão para Documento Técnico Plataforma Windows 1
6 SERVIÇOS DE SEGURANÇA DISTRIBUÍDA WINDOWS 2000 autenticação de rede; proporciona uma base para interoperabilidade de autenticação. Autenticação forte usando certificados de chave pública, canais seguros baseado em Secure Sockets Layer (SSL) 3.0 e CryptoAPI para entregar protocolos padrão da indústria para integridade de dados e privacidade através de redes públicas. Este documento descreve a próxima geração de segurança distribuída Windows, que proporciona funcionalidades para suportar as demandas da empresa baseada na Internet. A maioria do material descrito aqui é entregue no Windows 2000, embora algumas funcionalidades já tenham sido implementadas no Windows NT 4.0, como observado no texto. A segurança do Windows 2000 está se adaptando a muitas áreas para suportar a empresa baseada em Internet. Algumas dessas mudanças refletem avanços no suporte a grandes organizações, através do uso do Active Directory hierárquico do Windows Outras alterações aproveitam as vantagens da arquitetura de segurança Windows para integrar autenticação usando certificados de chave pública Internet. A lista abaixo introduz as novas funcionalidades de segurança Windows 2000: O Active Directory proporciona o armazenamento de todas as informações de política de segurança de domínio e conta. O Active Directory, que proporciona replicação e disponibilidade de informação de conta para múltiplos Controladores de Domínio, está disponível para administração remota. O Active Directory suporta um espaço de nome hierárquico para informação de conta de usuário, grupo e de computador. Contas podem ser agrupadas por unidades organizacionais, ao invés do espaço de nome de conta de domínio flat proporcionado por versões anteriores do Windows NT. Direitos administrador para criar e gerenciar contas de grupo podem ser delegados ao nível de unidades organizacionais. Direitos de acesso podem ser concedidos a propriedades individuais nos objetos do usuário; por exemplo, um indivíduo ou grupo específico possui o direito de resetar senhas, mas não de modificar outras informações da conta. Replicação no Active Directory permite atualizações de contas em qualquer controlador de domínio, não apenas no controlador de domínio primário (PDC). Múltiplas réplicas master do Active Directory em outros controladores de domínio, que eram conhecidas como controladores backup de domínio (BDCs), são atualizadas e sincronizadas automaticamente. Windows 2000 implementa um novo modelo de domínio que usa o Active Directory para suportar uma árvore de domínios com hierarquia de múltiplos níveis. O gerenciamento das relações de confiança entre domínios é simplificado através de confiaças transitivas por toda a árvore de domínio. Segurança Windows inclui uma nova autenticação baseada nos protocolos de segurança padrões da Internet, incluindo Kerberos Versão 5 e Transport Layer Security (TLS) para protocolos de segurança distribuída, em adição ao suporte a protocolos de autenticação do Windows NT LAN Manager para Documento Técnico Plataforma Windows 2
7 compatibilidade. A implementação de protocolos de segurança de canais seguros (SSL 3.0/TLS) suporta autenticação cliente forte através do mapeamento das credenciais do usuários na forma de certificados de chave pública, para contas Windows NT existentes. Ferramentas de administração comum são usadas para gerenciar informação e controle de acesso a contas, seja usando autenticação secreta compartilhada ou segurança de chave pública. Windows 2000 suporta o uso opcional de smart cards para logon interativo, em adição às senhas. Smart cards suportam armazenamento criptografado e seguro de chaves públicas e certificados, habilitando autenticação forte da estação para o domínio. Documento Técnico Plataforma Windows 3
8 ACTIVE DIRECTORY E SEGURANÇA Windows 2000 proporciona o Microsoft Certificate Server para as organizações emitirem certificados X.509 versão 3 para seus funcionários ou parceiros de negócios. Isto inclui a introdução do CryptoAPI para certificar gerenciamento e módulos para lidar com certificados de chave pública, incluindo certificados de formato padrão emitidos por uma Autoridade Certificadora (CA) comercial, por uma CA de terceiros, ou pelo Microsoft Certificate Server incluído no Windows. Administradores de sistema definem quais CAs são confiávis nos seus ambientes e, dessa maneira, quais certificados são aceitos para autenticação cliente e acesso a recursos. Usuários externos que não possuem contas Windows 2000 podem ser autenticados usando certificados de chave pública e sendo mapeados para uma conta Windows existente. Direitos de acesso definidos para a conta Windows determinam os recursos que os usuários externos podem usar no sistema. Autenticação cliente, usando certificados de chave pública, permite ao Windows 2000 autenticar usuários externos, baseado em certificados emitidos por Autoridades Certificadoras confiáveis. Usuários Windows 2000 possuem ferramentas fáceis de usar e diálogos de interface comuns para o gerenciamento de pares de chaves privada/pública e para os certificados que eles usam para acessar recursos baseados na Internet. O armazenamento de credenciais de segurança pessoal, que usa armazenamento seguro baseado em disco, é transportado facilmente com o protocolo padrão indústria proposto, Personal Information Exchange. O sistema operacional também possui suporte integrado a dispositivos de smart card. Tecnologia de encriptação está construída de muitas maneiras no sistema operacional, para aproveitar o uso de assinaturas digitais para proporcionar vetores de dados autenticados. Em adição aos controles ActiveX e Java Classes assinados para o Internet Explorer, Windows 2000 usa assinaturas digitais para integridade de imagem de uma variedade de componentes de programa. Desenvolvedores internos também podem criar software assinado para distribuição e proteção contra vírus. Em adição a estas mudanças, nós esperamos que terceiros hospedem serviços de autenticação de senha dinâmica no Windows 2000 Server e que efetuem autenticação para integrar senhas dinâmicas na autenticação de domínio do Windows As APIs e documentação para suportar estes produtos de terceiros estão disponíveis na Plataforma SDK Microsoft. Cada uma das novas funcionalidades de segurança do Windows 2000 está descrita em mais detalhes nas seções seguintes. Informação de conta no Windows NT é mantida atualmente com o uso de uma porção segura do registry nos controladores de domínio. Usando trust de domínio e autenticação pass-through, uma hierarquia de dois níveis de domínios proporciona alguma flexibilidade par a a organização do gerenciamento de contas e recursos de servidor; entretanto, as contas são mantidas em um espaço de nome flat sem Documento Técnico Plataforma Windows 4
9 nenhuma organização interna. Serviços de Segurança Distribuída Windows 2000 usam o Active Directory como o repositório para informação de conta. O Active Directory proporciona melhoria significativa na implementação baseada em registry, nas áreas de performance e escalabilidade, e oferece um ambiente administrativo com ricas funcionalidades. O diagrama seguinte mostra a estrutura hierárquica para uma árvore de domínios Windows 2000, e o contexto de nomes hierárquicos em cada domínio usando unidades organizacionais (OUs) como recipientes de objetos de diretório. Domain Hierarchy: Domain Tree Organizational Unit (OU) hierarchy within a Domain Users, Groups, Machines, Printers, etc. Users OU OU Figura 1. Estrutura hierárquica do Active Directory Vantagens do Gerenciamento de Conta do Active Directory As vantagens da integração do gerenciamento de conta de segurança com o Active Directory são: Contas para usuários, grupos e máquinas podem ser organizadas em recipientes de diretório chamados unidades organizacionais (OUs). Um domínio pode ter qualquer número de OUs organizadas em um espaço de nome estruturado em árvores. Empresas podem organizar o espaço de nome para informação de conta para representar os departamentos e organizações na empresa. Contas de usuário, assim como OUs, são objetos de diretório que podem ser renomeados facilmente na árvore de domínio com as mudanças na organização. O Active Directory suporta um número muito maior de objetos de usuário (mais de 1 milhão de objetos) com melhor performance que o registry. O tamanho do Documento Técnico Plataforma Windows 5
10 domínio individual não está mais limitado a performance do repositório de conta de segurança. Uma árvore de domínios conectados pode suportar estruturas organizacionais bem maiores e complexas. Administração da informação de conta é melhorada com o uso de ferramentas gráficas avançadas para gerenciamento do Active Directory, assim como através de suporte OLE DS para linguagens de script. Podem ser implementadas tarefas comuns com o uso de batch scripts para automatizar a administração. Serviços de replicação de diretório suportam múltiplas cópias de informação de conta, sendo que podem ser feitas atualizações em qualquer cópia, não somente no controlador de domínio primário designado. O suporte a Lightweight Directory Access Protocol (LDAP) e sincronização de diretório proporcionam os mecanismos para ligar o diretório Windows com outros diretórios da empresa. Armazenar informação de conta de segurança no Active Directory significa que os usuários e grupos são representados como objetos no diretório. Acesso de leitura e escrita aos objetos no diretório pode ser dado ao objeto como um todo, ou para propriedades individuais do objeto. Administradores possuem controle refinado sobre quem pode atualizar informação de usuário e de grupo. Por exemplo, um grupo de operadores de Telecom pode receber o acesso de escrita somente para propriedades de conta de usuário relacionadas a equipamento telefônico do escritório, sem a necessidade de receberem privilégios completos de Conta Operador ou Administrador. O conceito de um grupo também é simplificado porque grupos locais e globais são representados por objetos de grupo no diretório. Interfaces de programação existentes para acesso a grupo local ainda são suportadas para compatibilidade completa com o passado. Entretanto, grupos definidos no diretório podem ser usados para controle de acesso em todo o domínio, a recursos ou somente para propósitos de administração local no controlador de domínio. Relacionamento entre Diretório e Serviços de Segurança Existe uma relação fundamental entre o Active Directory e os Serviços de segurança integrados no sistema operacional Windows O Active Directory armazena informação de política de segurança de domínio tais como restrições de senha a todo o domínio e privilégios de acesso ao sistema que possuem influência direta no uso do sistema. Objetos relacionados a segurança no diretório devem ser administrados de maneira segura para evitar alterações não autorizadas que afetam a segurança geral do sistema. O sistema operacional Windows 2000 implementa modelo de segurança baseado em objeto e controle de acesso para todos os objetos no Active Directory. Todo objeto no Active Directory possui um descritor de segurança único que define permissões de acesso necessárias para ler ou atualizar as propriedades do objeto. O diagrama abaixo mostra o relacionamento fundamental entre o Active Directory e Documento Técnico Plataforma Windows 6
11 os serviços de segurança do sistema operacional. Directory and Security Services Active Directory Stores security policy and account information Operating system Implements security model on all objects Trusts information stored securely in the directory Active Directory Windows 2000 Server Figura 2. Relacionamento entre o Active Directory e os serviços de Segurança O Active Directory usa imitação e verificação de acesso Windows 2000 para determinar se um cliente Active Directory pode ler ou atualizar o objeto desejado. Isto significa que o cliente LDAP pede ao diretório que acione o sistema operacional para reforçar controle de acesso, ao invés do próprio Active Directory ter que tomar decisões de controle de acesso. O modelo de segurança do Windows 2000 proporciona uma implementação unificada e consistente de controle de acesso a todos os recursos de domínio, baseado na participação em grupo. Componentes de segurança do Windows 2000 podem confirmar a informação relacionada a segurança armazenada no diretório. Por exemplo, o serviço de autenticação do Windows 2000 armazena informação de senha encriptada em uma porção segura do diretório de objetos de usuário. O sistema operacional confirma que esta informação de política de segurança está armazenada de maneira segura e que as restrições de conta ou participação em grupo não são alteradas por ninguém sem acesso autorizado. Em adição, informação de política de segurança para gerenciamento geral de domínio é mantida no diretório. Esta relação fundamental da Segurança e o Active Directory é atingida somente através da completa integração do diretório com o sistema operacional Windows 2000, e não está disponível de outra forma. Relações de Confiança de Domínio Domínios do Windows 2000 podem ser organizados em uma árvore hierárquica de Documento Técnico Plataforma Windows 7
12 domínio. As relações de confiança entre domínios permitem que usuários sem contas definidas no domínio, sejam autenticados por servidores de recursos em outro domínio. No Windows NT 4.0 e em versões anteriores, relações de confiança interdomínios são definidas por contas de domínio relações de confiança em uma viaentre controladores de domínio. O gerenciamento de relações de confiança entre domínios de contas e domínios de recursos em uma rede grande é uma tarefa complexa. O Active Directory suporta duas formas de relações de confiança: Relações de confiança em uma via explícitas a domínios Windows NT 4.0. Relações de confiança em duas vias transitivas entre domínios que são parte da árvore de domínio do Windows O diagrama abaixo mostra os dois estilos de relação de confiança. Domain Trust Relationships Microsoft.Com Domain Downlevel Domain FarEast. Microsoft. Com Europe. Microsoft. Com Explicit NT4-style Trusts Domain Domain Kerberos Trust Domain Domain Figura 3. Relações de confiançade domínios Confianças transitivas entre domínios simplifica o gerenciamento de contas confiávis interdomínios. Domínios que são membros da árvore de domínio definem uma relação de confiança em duas vias com o domínio pai na árvore. Todos os domínios implicitamente confirmam outros domínios na árvore. Se existem domínios específicos que não querem relação de confiança em duas vias, contas de relações de confiança em uma via explícitas podem ser definidas. Para organizações com múltiplos domínios, o número geral de relações de confiança em uma via explícitos é reduzido de maneira significativa. Delegação de Administração Delegação de administração é uma ferramenta de valor para as organizações Documento Técnico Plataforma Windows 8
13 confinarem a administração de segurança para aplicação somente em subconjuntos definidos do domínio inteiro da organização. O requisito importante é conceder direitos para administrar um pequeno conjunto de usuários ou grupos nas suas áreas de responsabilidade e, ao mesmo tempo, não dar permissões para contas de gerenciamento em outras partes da organização. Delegação de responsabilidade para criar usuários ou grupos é definida no nível da unidade organizacional (OU), ou container, onde as contas são criadas. Administradores de grupo para uma unidade organizacional não possuem necessariamente a habilidade de criar e gerenciar contas para outra unidade organizacional em um domínio. Entretanto, configurações de política para todo o domínio e direitos de acesso definidos em níveis superiores na árvores de diretório podem ser aplicados usando herança de direitos de acesso. Há três maneiras de definir a delegação de responsabilidades de administração: Delegar permissões para alterar propriedades em um recipente particular, tal como o LocalDomainPolicies do próprio objeto de domínio. Delegar permissões para criar e deletar objetos filho de um tipo específico embaixo de uma OU, tal como Usuários, Grupos ou Impressoras. Delegar permissões para atualizar propriedades específicas em objetos filho de um tipo específicos embaixo de uma OU; por exemplo o direito de configurar senhas em objetos Usuário. A interface de usuário do Directory Service Administration facilita a visualização de informação delegada definida para recipientes. Também é fácil adicionar novas delegações de permissões, através da seleção de para quem você deseja delegar permissão, e a escolha de quais permissões eles precisam. A integração do repositório de contas de segurança com o Active Directory proporciona benefícios reais para administrar uma empresa. Performance, facilidade de administração e escalabilidade para grandes organizações são o resultado direto. Empresas baseadas na Internet podem usar árvores de domínio e OUs hierárquicas para organizar contas para parceiros de negócio, clientes assíduos ou fornecedores com direitos de acesso específicos aos seus sistemas. Direitos de Acesso Refinado Grandes organizações dependem tipicamente de muitos indivíduos ou grupos para garantir e gerenciar a infraestrutura de conta de rede. Eles precisam da habilidade de conceder direitos de acesso a operações específicas tais como limpar senhas de usuário ou desabilitar contas para grupos específicos sem conceder permissão de criar novas contas ou alterar outras propriedades de contas de usuário. A arquitetura de segurança para objetos do Active Directory usa descritores de segurança do Windows 2000 para controlar o acesso a objetos. Cada objeto no diretório possui um descritor de segurança único. A Lista de Controle de Acesso (ACL) no descritor de segurança é uma lista de entradas que concedem ou negam direitos de acesso específico a usuários ou grupos. Direitos de acesso podem ser concedidos ou negados com níveis de escopo diferentes no objeto. Direitos de Documento Técnico Plataforma Windows 9
14 acesso podem ser definidos em qualquer um dos seguintes níveis: Aplicar ao objeto como um todo, que significa a aplicação a todas as propriedades do objeto. Aplicar a um grupo de propriedades definidas por conjuntos de propriedade no objeto. Aplicar a uma propriedade individual do objeto. Conceder acesso uniforme de leitura/escrita a todas as propriedades de um objeto é a permissão de acesso padrão para o criador do objeto. Conceder ou negar permissões de acesso a objeto a um conjunto de propriedades, é uma maneira conveniente de definir permissões a um grupo de propriedades relacionadas. O agrupamento de propriedades é definido pelo atributo de conjunto de propriedades de uma propriedades no esquema. A relação do conjunto de propriedades pode ser customizada através da alteração do esquema. Finalmente, a definição de direitos de acesso em um nível por propriedade proporciona o mais alto nível de granularidade de permissões. Definição de acesso por propriedade está disponível em todos os objetos no Active Directory. Objetos de recipente no diretório também suportam acesso refinado com respeito a quem possui permissões para criar objetos filho e quais tipos de objeto filho eles podem criar. Por exemplo, o controle de acesso definido em uma unidade organizacional (OU) pode definir quem pode criar objetos Usuário (contas) neste container. Outra entrada no controle de acesso para a OU pode definir quem pode criar objetos Impressora. Controle de acesso refinado nos recipientes do diretório é uma maneira efetiva de manter a organização do espaço de nomes do diretório. Uma nova implementação do Editor de Lista de Controle de Acesso (ACL), o controle de diálogo comum para visualização ou alteração de permissões de segurança de objeto, proporciona uma interface fácil de usar para a definição de direitos de acesso para objetos do Active Directory, através de conjunto de propriedades ou propriedades individuais. O Editor ACL também suporta a definição de direitos de acesso herdados em objetos de container que são válidos para todos os sub-objetos naquela porção da árvore de diretório. Herança de Direitos de Acesso Herança de direitos de acesso refere-se a como a informação de controle de acesso definida em recipientes de mais alto nível do diretório, se espalha para subrecipientes e objetos folha. Geralmente há dois modelos para a implementação de herança de direitos de acesso: herança dinâmica e estática. Herança dinâmica determina os direitos de acesso efetivos a um objeto através da avaliação das permissões definidas explicitamente no objeto e das permissões definidas para todos os objetos pai no diretório. Isto permite flexibilidade para alterar o controle de acesso em porções da árvore de diretório através de alterações específicas no container que afetam automaticamente todos os subrecipientes e objetos folha. O custo desta flexibilidade é o custo de performance para avaliar direitos de acesso efetivos na hora que um cliente requisita uma operação de leitura/escrita em um objeto de diretório específico. Documento Técnico Plataforma Windows 10
15 MÚLTIPLOS PROTOCOLOS DE SEGURANÇA Windows 2000 implementa uma forma estática de herança de direitos de acesso, referenciada como herança Create Time. Pode ser definida a informação de controle de acesso que se espalha para objetos filho do container. Quando o objeto filho é criado, os direitos de herança do recipente são misturados aos direitos de acesso padrão no novo objeto. Quaisquer mudanças nos direitos de acesso herdados em níveis superiores da árvore devem ser propagadas para todos os objetos filho afetados. Novos direitos de acesso herdados são propagados pelo Active Directory para os objetos aos quais eles se aplicam, baseado em opções para como os novos direitos são definidos. Performance para verificação de controle de acesso é bem rápida com o uso do modelo estático de herança de direitos de acesso. O sistema operacional é projetado para otimizar verificações de acesso, operações necessárias e freqüentes, não somente para o objeto de diretório, mas também para os arquivos de sistema e todos os outros objetos de sistema do Windows Windows 2000 suporta múltiplos protocolos de segurança de rede porque cada protocolo proporciona compatibilidade para clientes existentes, mecanismos de segurança mais efetivos ou funcionalidades de interoperabilidade para redes heterogêneas como a Internet. Há muitos protocolos de autenticação nas redes corporativas atualmente, e a arquitetura Windows 2000 não limita quais protocolos podem ser suportados. Um protocolo de segurança que atenda todas as necessidades deveria ser mais simples, mas as configurações de redes, de pequenas empresas a provedores de conteúdo Internet de larga escala, não compartilham os mesmos requisitos de segurança. Os clientes precisam poder escolher como integrar nova tecnologia de segurança, tal como senhas dinâmicas ou criptografia de chave pública, nos seus ambientes computacionais. Windows 2000 é projetado para suportar múltiplos protocolos de segurança, um elemento essencial para o ambiente computacional distribuído de hoje. Usando APIs de segurança Win32 de propósito geral, o sistema operacional isola as aplicações suportadas dos detalhes dos diferentes protocolos de segurança disponíveis. Interfaces de aplicação de mais alto nível proporcionada por RPC e DCOM Autenticados proporciona abstrações baseadas em parâmetros de interface para usar serviços de segurança. A infraestrutura de segurança do Windows 2000 suporta estes protocolos primários de segurança: O protocolo de autenticação do Windows NT LAN Manager (NTLM) é usado pelo Windows NT 4.0 e versões anteriores do Windows NT. NTLM continuará a ser suportado e usado para autenticação de rede pass-through, acesso de arquivo remoto e conexões RPC autenticadas a versões anteriores do Windows NT. O protocolo de autenticação Kerberos Versão 5 substitui o NTLM como o protocolo de segurança primário para acesso a recursos nos domínios Windows O protocolo de autenticação Kerberos é um padrão de indústria maduro que possui vantagens para autenticação de rede Windows. Documento Técnico Plataforma Windows 11
16 Alguns dos benefícios do protocolo Kerberos são autenticação mútua do cliente e servidor, carga de servidor reduzida durante o estabelecimento de conexão, e suporte a delegação de autorização de clientes para servidores através do uso de mecanismos proxy. Distributed Password Authentication (DPA) é o protocolo de autenticação secreto compartilhado usado por algumas das maiores organizações da Internet, tais como a MSN e CompuServe. Este protocolo de autenticação faz parte dos serviços Microsoft Commercial Internet System (MCIS) e é projetado especificamente para usuários utilizarem a mesma senha Internet para conectar a qualquer número de sites Internet que são parte da mesma organização. Os servidores de conteúdo da Internet usam o serviço de autenticação MCIS como um serviço Internet de retaguarda, e os usuários podem conectar-se a múltiplos sites sem ter que redigitar suas senhas. Protocolos baseados em chave pública proporcionam privacidade e confiabilidade sobre a Internet. SSL é o padrão de fato atualmente para conexões entre browsers Internet e servidores de informação Internet. (Uma definição de protocolo padrão IETF baseada em SSL3 é conhecida correntemente por Transport Layer Security Protocol, ou TLS). Estes protocolos, que usam certificados de chave pública para autenticar clientes e servidores, dependem de uma infraestrutura de chave pública para amplo uso. Windows NT 4.0 proporciona serviços de segurança de canal seguro que implementam os protocolos SSL/PCT. Segurança no Windows 2000 possui suporte melhorado a protocolos de chave pública, o que está descrito a seguir neste documento. Segurança corporativa depende da flexibilidade de usar os mecanismos de segurança certos quando necessário. Computação corporativa continuará a depender de uma ampla faixa de serviços de rede proporcionados por servidores remotos de arquivo e impressão, servidores de aplicações de negócio e dados, e data warehouse e ambientes de processamento transacionais. Suporte a múltiplos protocolos de segurança de rede permite que o Windows 2000 Professional e o Windows 2000 Server hospedem uma variedade de serviços de rede em adição as tecnologias baseadas na Internet. Architecture For Multiple Authentication Services Remote file DCOM application Internet Explorer, Internet Information Server Directory enabled apps using ADSI Mail, Chat, News CIFS/SMB Secure RPC NTLM Kerberos HTTP LDAP SChannel SSL/TLS POP3, NNTP DPA SSPI Documento Técnico Plataforma Windows 12 MSV1_0/ SAM KDC/ Directory Membership services
17 SECURITY PROTOCOLO SUPPORT DE PROVIDER AUTENTICAÇÃO INTERFACE KERBEROS O diagrama seguinte mostra o suporte de arquitetura para múltiplos protocolos de segurança implementados no Windows 2000 usando a Security Support Provider Interface (SSPI). Figura 4. Arquitetura para Múltiplos Serviços de Autenticação O Security Support Provider Interface é uma API Win32 de sistema usada por muitas aplicações e serviços de sistema tais como o Internet Explorer (IE) e Internet Information Server (IIS) para isolar protocolos de nível aplicação de protocolos de segurança usados para autenticação de rede. Provedores de segurança usam credenciais diferentes para autenticar o usuário, ou certificados secretos compartilhados ou de chave pública. Os protocolos de segurança interagem com diferentes serviços de autenticação e armazéns de informação de conta. O provedor de segurança NTLM usa o serviço de autenticação MSV1_0 e o serviço NetLogon em um controlador de domínio, para autenticação cliente e informação de autorização. O provedor de segurança Kerberos conecta a um Key Distribution Center (KDC) online e ao armazém de conta Active Directory para tickets de sessão. DPA usa os serviços de segurança MCIS para autenticação membership e informação de acesso específica de servidor. Serviços de canal seguro são baseados em certificados de chave pública emitidos por Autoridades Certificadoras trusted; eles não exigem um servidor de autenticação online. As APIs de segurança do Windows para autenticação de rede são definidas pelo Security Support Provider Interface (SSPI) documentado na Plataforma SDK. O SSPI comunica-se com uma API Win32 baseada no Generic Security Service Application Program Interface (GSS-API) e proporciona abstração de interface similar para o gerenciamento de contexto de segurança 1. Aplicações e serviços Windows 2000 usam SSPI para isolar protocolos de nível aplicação dos detalhes dos protocolos de segurança de rede. Windows 2000 suporta a interface SSPI para reduzir código de nível aplicação necessário ao suporte de múltiplos protocolos de autenticação. SSPI proporciona uma abstração genérica para suportar múltiplos mecanismos de autenticação baseado em protocolos secretos compartilhados ou de chave pública. Aplicações usando segurança Windows 2000 integrada aproveitam a modularidade proporcionada pelo SSPI, chamando o diretório de rotinas SSPI ou usando protocolos de gerenciamento de conexão de rede de mais alto nível proporcionado pelo RPC autenticado ou DCOM. O protocolo de autenticação Kerberos define as interações entre um cliente e um Serviço de Autenticação de rede conhecido como Key Distribution Center (KDC). 1 Generic Security Services Application Program Interface, J. Linn, Internet RFC 1508, Setembro, Documento Técnico Plataforma Windows 13
18 Windows 2000 implementa KDC como o serviço de autenticação em cada controlador de domínio. O domínio Windows 2000 é equivalente a área de atuação do Kerberos mas continua a ser referenciado como um domínio. A implementação Kerberos do Windows 2000 é baseada na definição Internet RFC 1510 do protocolo Kerberos 2. A run time do cliente Kerberos é implementada como um provedor de segurança do Windows 2000 baseado no SSPI. Autenticação Kerberos inicial é integrada com a arquitetura WinLogon de sign on único. O servidor Kerberos (KDC), integrado aos serviços de segurança Windows existentes rodando no controlador de domínio, usa o Active Directory como o banco e dados de conta para usuários (diretores) e grupos. O protocolo de autenticação Kerberos melhora as funcionalidades de segurança básicas do Windows 2000 e proporciona as seguintes funcionalidades: Performance de autenticação servidor mais rápida durante estabelecimento de conexão inicial. O servidor de aplicação não tem que conectar-se ao controlador de domínio para autenticar o cliente. Isto permite que os servidores de aplicação escalem melhor quando lidando com grandes números de requisições de conexão cliente. Delegação de autenticação para arquiteturas de aplicação cliente/servidor de múltiplas camadas. Quando um cliente conecta-se a um servidor, o servidor imita o cliente naquele sistema. Mas se o servidor precisa fazer uma conexão de rede a outro servidor back-end para completar a transação cliente, o protocolo Kerberos permite delegação de autenticação para o primeiro servidor conectar-se, ao invés do cliente a outro servidor. A delegação permite que o segundo servidor também imite o cliente. Transitive relações de confiançapara autenticação interdomínio. Usuários podem autenticar-se a domínios em qualquer lugar na árvore de domínio porque os serviços de autenticação (KDCs) em cada domínio trust tickets emitidos por outros KDCs na árvore. Transitive trust simplifica o gerenciamento de domínio para grandes redes com múltiplos domínios. O protocolo de autenticação Kerberos versão 5 definido na RFC 1510 passou por uma ampla revisão na indústria e é bem conhecido em grupos de interesse de segurança. Kerberos Background Kerberos é um protocolo de autenticação secreto de compartilhamento porque tanto o usuário quanto o KDC conhecem a senha do usuário ou, no caso do KDC, a senha criptografada one-way. O protocolo Kerberos define uma série de trocas entre clientes, o KDC, e os servidores para obter e usar tickets Kerberos. Quando um usuário inicia um logon no Windows, o Kerberos SSP obtém um ticket Kerberos inicial (TGT) baseado em um hash criptografado da senha do usuário. Windows 2000 armazena o TGT em um ticket cache na estação associada ao contexto de logon do usuário. Quando um programa cliente tenta acessar um 2 The Kerberos Network Authentication Service (V5), J. Kohl and C. Neumann, Internet RFC 1510, Setembro, Documento Técnico Plataforma Windows 14
19 serviço de rede, a run time Kerberos verifica o ticket cache para um ticket de sessão válido ao servidor. Se não há um ticket disponível, o TGT é enviado em uma requisição para o KDC para um ticket de sessão que permite acesso ao servidor. O ticket de sessão é adicionado ao ticket cache e pode ser reusado em futuras conexões ao mesmo servidor até que o ticket expire. O período de expiração do ticket é definido pela política de segurança de domínio e é usualmente configurado para aproximadamente oito horas. Se o ticket de sessão expira no meio de uma sessão ativa, o provedor de segurança Kerberos retorna os valores de erro apropriados que permitem que o cliente e o servidor atualizem o ticket, gerem uma nova chave de sessão e reiniciem a conexão. O diagrama seguinte mostra a relação entre o cliente, o KDC e o servidor de aplicação usando protocolo de autenticação Kerberos. Kerberos Authentication Protocol Overview Present session ticket at connection setup Application Server (Target) Verifies session ticket issued by KDC Initial client authentication to KDC Request session ticket from KDC for target server Key Distribution Center (KDC) Windows Directory Server Windows Domain Controller Figura 5. Visão geral do protocolo de autenticação Kerberos O ticket de sessão Kerberos é apresentado ao serviço remoto durante a mensagem de conexão inicial. Porções do ticket de sessão são encriptadas usando uma chave secreta compartilhada entre o serviço e o KDC. O servidor pode autenticar rapidamente o cliente através da verificação do ticket de sessão sem ter que ir até o serviço de autenticação, porque o run time para o servidor do Kerberos possui uma cópia cached da chave secreta do servidor. A configuração de sessão de conexão é muito mais rápida no lado servidor do que a autenticação NTLM. Com NTLM, o servidor poderia obter as credenciais do usuário, e então teria que reautenticar o usuário através do controlador de domínio como parte do Documento Técnico Plataforma Windows 15
20 estabelecimento de conexão. Tickets de sessão Kerberos contêm uma chave única de sessão criada pelo KDC para usar a encriptação simétrica da informação de autenticação e dados transferidos entre o cliente e o servidor. No modelo Kerberos, o KDC é usado como um terceiro trusted online para gerar a chave de sessão. Serviços de autenticação online são muito eficientes para serviços de aplicação distribuída disponíveis em um ambiente de rede parecido com um campus. Integração Kerberos O protocolo Kerberos está totalmente integrado na arquitetura de segurança do Windows 2000 para autenticação e controle de acesso. O logon inicial ao domínio Windows é proporcionado pelo WinLogon. WinLogon usa o provedor de segurança Kerberos para obter um ticket Kerberos inicial. Outros componentes do sistema operacional, tal como o Redirector, usam a interface SSPI para o provedor de segurança Kerberos para obter um ticket de sessão para conectar ao SMB Server para acesso remoto a arquivo. O protocolo Kerberos versão 5 define um campo encriptado em tickets de sessão para carregar Authorization Data, mas o uso do campo é deixado para as aplicações. Windows 2000 usa o Authorization Data em tickets Kerberos para carregar Windows Security IDs representando o usuário e a participação em grupo. O provedor de segurança Kerberos no lado servidor de uma conexão usa o Authorization Data para construir um token de acesso de segurança Windows representando o usuário naquele sistema. O servidor segue o modelo de segurança Windows de imitação do cliente usando o token de acesso representando o cliente antes de tentar acessar recursos locais protegidos por Listas de Controle de Acesso (ACLs). Delegação de autenticação é suportada na versão 5 do protocolo Kerberos, usando flags proxy e forwarding nos tickets de sessão. Windows 2000 usa a funcionalidade de delegação para permitir aos servidores obter outro ticket de sessão para conectar a servidores remotos ao invés de ao cliente. Interoperabilidade Kerberos O protocolo Kerberos versão 5 está implementado para uma variedade de sistemas e é usado para proporcionar um serviço único de autenticação em uma rede distribuída. A interoperabilidade Kerberos proporciona um protocolo comum que permite um único banco de dados de contas (possivelmente replicado) para a autenticação de usuários em todas as plataformas computacionais da empresa, para acessar todos os serviços em um ambiente heterogêneo. A interoperabilidade Kerberos está baseada nas seguintes características: Um protocolo de autenticação comum usado para identificar o usuário final ou serviço pelo nome principal em uma conexão de rede. A habilidade de definir relações de confiançaentre áreas de atuação Kerberos e para gerar requisições referentes a ticket entre áreas. Documento Técnico Plataforma Windows 16