Interoperabilidade do Gerenciamento de Identidade Federada
Microsoft Corporation
Maio de 2004
Resumo: À medida que as empresas estendem sistemas internos para usuários externos, é importante garantir que os sistemas possam interoperar com os aplicativos de outras organizações. Os principais provedores de Soluções de Gerenciamento de Identidade demonstraram suas soluções que atendem a essa necessidade em um Workshop de Interoperabilidade recente. (7 páginas impressas)
Nota Este documento descreve os resultados desse Workshop no qual foram testadas implementações de um cenário de interoperabilidade usando o perfil de solicitante passivo WS-Federation com base no conjunto de padrões de Segurança dos Serviços Web.
Sumário
Gerenciamento de Identidade Federada
Workshops de Protocolo de Serviços Web
WS-Federation interoperabilidade de perfil de solicitante passivo
Resultados e discussão do workshop
Links Relacionados
Gerenciamento de Identidade Federada
Para enfrentar o desafio das tendências atuais do setor, como o crescimento do comércio entre empresas, o aumento da mobilidade e a necessidade de conectividade persistente, as organizações estão estendendo sistemas internos para usuários externos que fornecem conectividade a clientes, parceiros, fornecedores e funcionários móveis. Fornecer conectividade eficiente e perfeita requer a criação de relações "baseadas em confiança" que permitem que as organizações compartilhem com segurança as informações de identidade de um usuário. As relações de confiança permitem que as informações de identidade e política fluam entre organizações independentes de plataforma, aplicativo ou modelo de segurança. As relações de confiança precisam ser formadas de forma rápida e eficiente para maximizar a produtividade e eliminar os processos manuais que geralmente ocorrem hoje. A federação descreve a tecnologia e os arranjos de negócios necessários para essa interconexão.
Os sistemas federados precisam interoperar entre limites organizacionais e conectar processos que utilizam diferentes tecnologias, armazenamento de identidades, abordagens de segurança e modelos de programação. Em um sistema federado, as identidades e suas credenciais associadas ainda são armazenadas, de propriedade e gerenciadas separadamente. Cada membro individual da federação continua a gerenciar suas próprias identidades, mas é capaz de compartilhar e aceitar identidades e credenciais de outras fontes de membros com segurança.
Dentro de um sistema federado, uma organização precisa de uma maneira padronizada e segura de expressar não apenas os serviços que disponibiliza para parceiros e clientes confiáveis, mas também as políticas pelas quais administra seus negócios, como quais outras organizações e usuários confiam, quais tipos de credenciais e solicitações ele aceita e suas políticas de privacidade.
Respondendo a essa necessidade, a Microsoft está trabalhando com líderes do setor para desenvolver um conjunto de especificações para a arquitetura de aplicativos distribuídos normalmente conhecido como serviços Web. A arquitetura de serviços Web baseia-se em padrões do setor como SOAP, XML, WSDL e UDDI e fornece uma base para fornecer soluções de negócios completas e interoperáveis para a empresa estendida, incluindo a capacidade de gerenciar a identidade federada e a segurança. O modelo de serviços Web baseia-se na ideia de que os sistemas empresariais são escritos em linguagens diferentes, com diferentes modelos de programação, que são executados em e são acessados de muitos tipos diferentes de dispositivos. Os serviços Web são um meio independente de plataforma e linguagem de criar sistemas distribuídos que podem se conectar e interagir entre si de forma fácil e eficiente na Internet. Mais informações sobre serviços Web e especificações de serviços Web podem ser encontradas na Central de Desenvolvedores de Serviços Web do MSDN.
Interoperabilidade
O sucesso da arquitetura de serviços Web e dos aplicativos que ela habilita depende da capacidade desses aplicativos de interoperar em uma rede confiável de empresas, parceiros e serviços, independentemente da plataforma, linguagem de programação ou aplicativo com o qual eles estão interagindo. Para isso, as empresas que implementam serviços Web querem que seus aplicativos estejam em conformidade com os padrões de serviços Web para garantir a interoperabilidade. Os padrões de serviços Web, incluindo SOAP, XML, WSDL e UDDI, permitem que os desenvolvedores criem soluções de serviço Web interoperáveis em várias plataformas, linguagens de programação e aplicativos. Uma das main maneiras de confirmar que essa interoperabilidade existe e que as especificações de serviços Web estão cumprindo essas metas de negócios é por meio de workshops de interoperabilidade de protocolo.
Workshops de Protocolo de Serviços Web
Os Workshops de Protocolo de Serviços Web são uma maneira de envolver a comunidade de serviços Web (incluindo empresas de usuário final, ISVs e outros fornecedores) no processo de validar e refinar as especificações do WS-*. Há dois tipos de Workshops: Comentários e Interoperabilidade. Os Workshops de Comentários permitem que o autor de cada Protocolo de Serviços Web compartilhe informações básicas sobre o design e receba comentários dos participantes sobre a praticidade da implementação. Os Workshops de Interoperabilidade são realizados pelos mesmos motivos e, além disso, permitem que as empresas testem a interoperabilidade de sua implementação com outros participantes do Workshop.
Depois que todos os comentários e resultados de implementação forem coletados dos Workshops, os autores atualizarão e refinarão a especificação para envio a uma organização de configuração de padrões.
Workshop de interoperabilidade de perfil do solicitante passivo WS-Federation
Em 29 e 30 de março de 2004, os autores da especificação WS-Federation Passive Requester Profile organizaram um Workshop de Interoperabilidade de dois dias no campus da Microsoft em Redmond, Washington.
O workshop de dois dias foi um fórum aberto para empresas que têm implementações baseadas na especificação WS-Federation publicada em 8 de julho de 2003 e no WS-Federation Passive Requester Profile, também publicado em 8 de julho de 2003. Um documento de cenário foi fornecido antes do evento e os participantes foram convidados a testar suas implementações do cenário com implementações de outras empresas. Os participantes do Workshop incluíram IBM Corporation, Microsoft Corporation, Netegrity Inc., Oblix Inc., OpenNetwork Corporation, Ping Identity Corporation e RSA Security Inc. Mais informações sobre este e outros Workshops de Protocolo de Serviços Web podem ser encontradas no MSDN.
Especificação do WS-Federation
A especificação WS-Federation faz parte do conjunto de especificações de Segurança dos Serviços Web. Ele define um modelo e um conjunto de mensagens para intermediar a confiança e a federação de informações de identidade e autenticação em diferentes domínios de confiança.
A especificação WS-Federation identifica duas fontes de solicitações de identidade e autenticação em realms de confiança: solicitantes ativos, como aplicativos habilitados para SOAP, e solicitantes passivos definidos como navegadores HTTP capazes de HTTP amplamente suportado (por exemplo, HTTP 1.1).
WS-Federation perfil de solicitante passivo
O WS-Federation Perfil de Solicitante Passivo é uma implementação de WS-Federation e propõe um protocolo padrão para como os solicitantes passivos (como navegadores da Web) aplicam a estrutura de federação. Dentro desse protocolo, espera-se que os solicitantes de serviço Web entendam os novos mecanismos de segurança e possam interagir com provedores de serviços Web.
WS-Federation interoperabilidade de perfil de solicitante passivo
WS-Federation perfil de interoperabilidade do solicitante passivo
O WS-Federation Perfil de Interoperabilidade do Solicitante Passivo é uma restrição adicional no Perfil do Solicitante Passivo com a finalidade de fornecer mais garantias de interoperabilidade. O perfil define um padrão para solicitar, trocar e emitir tokens de segurança dentro do contexto de um solicitante passivo usando SAML (Security Assertion Markup Language) como o tipo de token.
O perfil de interoperabilidade do solicitante passivo WS-Federation foi criado e distribuído aos participantes antes do Workshop como um guia para a criação de implementações interoperáveis do perfil do solicitante passivo WS-Federation. Para testar o protocolo recomendado, os fornecedores colaboraram na criação de um cenário de implementação. Esse cenário reflete a necessidade comum de as organizações terceirizarem serviços, como benefícios, para terceiros, mas fornecerem acesso de marca ao serviço por meio de um site interno (o solicitante passivo nesse cenário).
Cenário de interoperabilidade
No cenário do workshop de interoperabilidade, uma empresa, My Employer (ME), terceiriza a gestão dos benefícios dos funcionários para uma empresa de terceiros, a Empresa de Benefícios (BC). Minha Empresa de Empregadores e Benefícios estabeleceu confiança e políticas para uma federação de negócios. Como parte da coordenação de sua federação de negócios com a Benefits Company, o My Employer concorda em enviar determinados atributos específicos do usuário, juntamente com a solicitação de recurso para a Benefits Company. O aplicativo de gerenciamento de benefícios na Empresa de Benefícios requer que esses atributos existam antes de exibir o recurso específico que o funcionário do Meu Empregador solicitou.
A meta desse cenário era três vezes:
- Ilustrar uma federação entre empresas entre uma organização e um provedor de serviços de terceiros, permitindo que eu terceirizar o gerenciamento de benefícios dos funcionários.
- Teste a interoperabilidade entre diferentes soluções de fornecedor criadas usando os padrões descritos no perfil do solicitante passivo WS-Federation.
- Obtenha o benefício de uma federação de negócios:
- Eliminando a necessidade de o BC gerenciar identidades e senhas para os funcionários do ME a fim de administrar benefícios.
- Fornecer SSO (Single Sign On Web) confiável para os funcionários do ME para o domínio bc.
Passo a passo do cenário
Um funcionário do ME está no trabalho e acessa uma página do portal de benefícios internos. Se o funcionário ainda não fez logon em seu domínio em ME, ele deverá fazer isso antes de ter acesso à página do portal de benefícios. A página do portal de benefícios exibe informações pertinentes ao usuário individual ou ao próprio ME e tem links para gerenciar os benefícios do usuário.
O funcionário clica no link de gerenciamento de benefícios e é autenticado na Empresa de Benefícios usando as credenciais fornecidas anteriormente para autenticação na página do portal de benefícios do ME.
O funcionário recebe uma "Página de Boas-vindas" personalizada pelo aplicativo de gerenciamento de benefícios que fornece informações personalizadas sobre as opções de benefícios do funcionário.
Aqui, uma implementação de aplicativo de benefícios reais permitiria que um funcionário atualizasse suas opções de plano de saúde e clicasse em um link para gerenciar seu plano de saúde. O funcionário é mostrado as diferentes opções de plano de saúde disponíveis e quanto cada plano custa. O funcionário seleciona um novo plano de saúde e é mostrado o novo valor a ser deduzido de cada contracheque. O funcionário é solicitado a confirmar essa transação.
O funcionário confirma sua seleção e retorna à "Página de Boas-vindas" personalizada, que agora exibe as informações atualizadas do plano de integridade.
Se o funcionário clicar novamente no link para seu plano de saúde, eles serão mostrados os detalhes do plano de saúde escolhido e terão a capacidade de modificar sua escolha antes do final do período de registro.
Depois de concluir a transação, o funcionário clica em um link de saída no site bc e é transferido de volta para um portal interno em ME que exibe a confirmação de que o funcionário foi descontenciado do aplicativo Da Empresa de Benefícios.
Resultados e discussão do workshop
O workshop de interoperabilidade de perfil do solicitante passivo WS-Federation demonstrou altos níveis de interoperabilidade entre todas as implementações de todos os fornecedores participantes e isso foi alcançado muito mais rapidamente do que o esperado e com menos problemas, o que é um sinal claro da maturidade crescente dessas implementações.
Os clientes que implementam serviços Web hoje desejam saber que seus aplicativos estão em conformidade com os padrões existentes e são capazes de interoperabilidade com outros produtos que dão suporte a serviços Web. As implementações do cenário de interoperabilidade testado no Workshop demonstraram interoperabilidade entre todas as soluções de fornecedores.
Fornecer um modelo abrangente, consistente e extensível para serviços Web e Gerenciamento de Identidade Federada requer esforços coordenados de fornecedores de plataforma, desenvolvedores de aplicativos, provedores de rede e infraestrutura e clientes. Eventos como o recente WS-Federation Workshop de Interoperabilidade de Perfil de Solicitante Passivo promovem amplo envolvimento do setor na evolução dos padrões de serviços Web e garantem que clientes, desenvolvedores e fornecedores tenham protocolos comprovados para a criação de serviços Web consistentes, confiáveis e interoperáveis entre plataformas, aplicativos e linguagens de programação.
A interoperabilidade é, e continuará sendo, um fator crescente nas decisões dos clientes em relação às implementações de Serviços Web. Para dar suporte à interoperabilidade na implementação de serviços Web, a Microsoft recomenda:
- Siga os protocolos de implementação de serviços Web estabelecidos. As especificações de serviços Web e o suporte adicional para o desenvolvimento e a implementação de serviços Web podem ser encontrados na Central de Desenvolvedores de Serviços Web do MSDN.
- Participe dos próximos Workshops de Comentários e Interoperabilidade dos Serviços Web. Clique para obter mais informações sobre o Workshop.
- Familiarize-se com as diretrizes de interoperabilidade do WS-I. Mais informações sobre as diretrizes e outros recursos de desenvolvedor do WS-I podem ser encontradas em http://www.ws-i.org/.
- Utilize as ferramentas de teste do WS-I para confirmar se o aplicativo de serviços Web está em conformidade com as diretrizes de interoperabilidade do WS-I.
O conjunto de especificações de Segurança dos Serviços Web fornece uma solução completa para o Gerenciamento de Identidade Federada, permitindo comunicação e colaboração seguras e eficientes entre organizações e usuários externos. A criação de soluções interoperáveis com base nos padrões de Segurança do WS acelerará ainda mais a adoção do Gerenciamento de Identidade Federada e permitirá que os clientes implementem soluções de serviços Web com custo e risco de implementação reduzidos.
Links Relacionados
Consulte os seguintes recursos para obter mais informações:
- Soluções de Gerenciamento de Identidade e Acesso da Microsoft
- Página Índice de Especificações de Segurança dos Serviços Web no MSDN
- Segurança em um mundo de serviços Web: uma proposta de arquitetura e roteiro (white paper), versão 1.0, abril de 2002, International Business Machines Corporation e Microsoft Corporation
- Especificação WS-Federation Language (WS-Federation), versão 1.0, julho de 2003, International Business Machines Corporation, Microsoft Corporation, BEA Systems, Inc., RSA Security, Inc., e VeriSign, Inc.
- Federação de Identidades em um Mundo de Serviços Web (white paper), julho de 2003, International Business Machines Corporation e Microsoft Corporation
- WS-Federation: Especificação de perfil de solicitante passivo, versão 1.0, julho de 2003 versão 1.0, International Business Machines Corporation, Microsoft Corporation, BEA Systems, Inc., RSA Security, Inc., e VeriSign, Inc.
- WS-Federation Passive Requestor Interoperability Profile (download), Fevereiro de 2004, Versão 0.4, International Business Machines Corporation e Microsoft Corporation
- Serviços Web Seguros, Confiáveis e Transacionados: Arquitetura e Composição (white paper), setembro de 2003, International Business Machines Corporation e Microsoft Corporation
- Workshops de Protocolo de Serviços Web
- Lista de endereçamento WS-Security-Workshops
- Central de Desenvolvedores de Serviços Web do MSDN
- WS-I (Organização de Interoperabilidade de Serviços Web)
- Especificação da SAML (Security Assertions Markup Language), novembro de 2002, versão 1.0
© 2004 Microsoft Corporation. Todos os direitos reservados.
Este é um documento preliminar e pode ser alterado substancialmente ao longo do tempo. As informações contidas neste documento representam a visão atual da Microsoft Corporation acerca das questões discutidas até a data da publicação. Como a Microsoft deve responder às mudanças nas condições de mercado, ela não deve ser interpretada como um compromisso por parte da Microsoft e a Microsoft não pode garantir a precisão de qualquer informação apresentada após a data de publicação.
A apresentação, distribuição ou outra disseminação das informações contidas neste documento não é uma licença, expressa ou implícita, para qualquer propriedade intelectual de propriedade ou controlada pela Microsoft e\ou por qualquer outro terceiro. A Microsoft e qualquer outro terceiro pode ter patentes, pedidos de patentes, marcas comerciais, direitos autorais ou outros direitos de propriedade intelectual que abrangem o assunto neste documento. O fornecimento deste documento não oferece nenhuma licença para patentes, marcas comerciais, direitos autorais ou outra propriedade intelectual da Microsoft ou de terceiros. As empresas, as organizações, os produtos, os nomes de domínio, os endereços de email, os logotipos, as pessoas, os locais e os eventos de exemplo descritos aqui são fictícios. Nenhuma associação com nenhuma empresa, organização, produto, nome de domínio, endereço de email, logotipo, pessoa, locais ou eventos reais é intencional nem deve ser inferida.
Este documento e as informações contidas aqui são fornecidas em uma base "AS IS" e, na extensão máxima permitida pela lei aplicável, a Microsoft fornece o documento AS IS AND WITH ALL FAULTS e, portanto, isenta todas as outras garantias e condições, expressas, implícitas ou estatutárias, incluindo, mas não se limitando a, quaisquer garantias implícitas (se houver), funções ou condições de comercialização, de aptidão para uma finalidade específica, de exatidão ou integridade de respostas, de resultados, de esforço workmanlike, de falta de vírus e de falta de negligência, tudo em relação ao documento. ALÉM DISSO, NÃO HÁ GARANTIA OU CONDIÇÃO DE TÍTULO, GOZO SILENCIOSO, POSSE TRANQUILA, CORRESPONDÊNCIA À DESCRIÇÃO OU NÃO VIOLAÇÃO DE QUAISQUER DIREITOS DE PROPRIEDADE INTELECTUAL EM RELAÇÃO AO DOCUMENTO.
EM NENHUM CASO, A MICROSOFT SERÁ RESPONSÁVEL POR QUALQUER OUTRA PARTE PELO CUSTO DE OBTER BENS OU SERVIÇOS SUBSTITUTOS, LUCROS PERDIDOS, PERDA DE USO, PERDA DE DADOS OU QUAISQUER DANOS INCIDENTAIS, CONSEQÜENTES, DIRETOS, INDIRETOS OU ESPECIAIS, SEJA SOB CONTRATO, TORT, GARANTIA OU, CASO CONTRÁRIO, DECORRENTES DE QUALQUER SAÍDA DESTE OU DE QUALQUER OUTRO CONTRATO RELACIONADO A ESTE DOCUMENTO, SE ESSA PARTE TINHA OU NÃO AVISO PRÉVIO DA POSSIBILIDADE DE TAIS DANOS.
Microsoft e Microsoft Web Services são marcas registradas ou marcas comerciais da Microsoft Corporation no Estados Unidos e/ou em outros países.
Os nomes de empresas reais e produtos mencionados aqui podem ser marcas comerciais de seus respectivos proprietários.