böger, 2007 - Universidade Federal de Santa Catarina

Transcrição

böger, 2007 - Universidade Federal de Santa Catarina
Implementação de um Modelo de Transposição de
Autenticação para Serviços Web
Davi da Silva Böger1 , Michelle S. Wangham2 , Joni da Silva Fraga1
1
Departamento de Automação e Sistemas – Universidade Fedral de Santa Catarina
Florianópolis – SC – Brasil
2
Grupo de Sistemas Embarcados e Distribuı́dos – GSED
CTTMAR - UNIVALI
São José, SC - Brasil
[email protected], [email protected], [email protected]
Abstract. The Web Services form the basis for the interoperability among applications from different organizations. However, the security infrastructure
introduces additional complications to the transparent communication among
domains that use different security technologies. This work describes the implementation of a prototype of an authentication transposition model which allows
the Single Sign-On through different domains, even when these domais make use
of distinct security technologies.
Resumo. Os Serviços Web fornecem as bases para a interoperabilidade entre
aplicações de diferentes organizações. A infra-estrutura de segurança, no entanto, apresenta complicações adicionais à comunicação transparente entre
domı́nios que usam diferentes tecnologias de segurança. Este trabalho descreve a implementação de um protótipo de um modelo de transposição de
autenticação que permite o uso da autenticação única em diferentes domı́nios,
mesmo que estes usem tecnologias de segurança distintas.
1. Introdução
A crescente demanda pelo compartilhamento de informações tem feito com que
o modelo clássico de autenticação, centrado no provedor de serviços, seja revisto
[Jøsang and Pope 2005]. Novas formas de autenticação, como o gerenciamento de identidades federado [Lockhart et al. 2006], a facilidade Single Sign-On (SSO) [OASIS 2005a]
e o gerenciamento de identidades centrado no usuário [Vecchio et al. 2005] foram desenvolvidas para tentar resolver os problemas do modelo clássico.
Para evitar esses problemas, os provedores e clientes que usem a mesma tecnologia de segurança podem se agrupar em domı́nios para compartilhar informações e
confiar em uma terceira parte para mediar a autenticação. Além disso, domı́nios distintos podem formar relações de confiança entre si, permitindo que a autenticação em um
possa ser transposta para os domı́nios associados. No entanto, em geral os domı́nios possuem autonomia para decidir polı́ticas e tecnologias, o que torna a interoperabilidade e a
transposição mais difı́ceis.
A implementação descrita neste trabalho 1 serve para prover autenticação única em
ambientes heterogêneos, atravessando domı́nios administrativos mesmo que usem tecno1
O primeiro autor é o responsável pela totalidade da implementação descrita e pela elaboração do artigo,
tarefas supervisionadas pelos demais autores (orientador e co-orientador).
logias de segurança distintas. Para isso, o protótipo usa o modelo de transposição de
autenticação descrito em [Camargo et al. 2007]. Esse modelo se baseia em padrões de
segurança para Serviços Web e ataca o problema das diferentes tecnologias de segurança
por meio do gerenciamento de identidades federado.
Na seção 2, as tecnologias usadas no modelo de autenticação implementado são
introduzidas e, em seguida, o próprio modelo de autenticação é descrito (seção 3. A
seção 4 descreve o protótipo implementado, bem como a sua integração a um portal Web.
Alguns trabalhos relacionados são apresentados na seção 6 e, por fim, os resultados e
contribuições do protótipo implementado são descritos na conclusão.
2. Segurança em Serviços Web
Os Serviços Web [Booth et al. 2004], baseados na Arquitetura Orientada a Serviços
(AOS) e em padrões como XML [Bray et al. 2006] e HTTP [Fielding et al. 1999], formam uma tecnologia que visa padronizar a comunicação entre aplicações na Web. Essa
tecnologia provê mecanismos para troca de mensagens entre aplicações de forma a abstrair detalhes internos de implementação e sistema. As mensagens trocadas seguem um
formato padrão, definido na especificação SOAP [Mitra 2003]. Além disso, a definição
de uma linguagem para a descrição de serviços, a WSDL (Web Services Description Language) [Booth and Liu 2006], permite que as especificações funcionais dos serviços sejam obtidas e processadas dinamicamente.
A especificação WS-Security [OASIS 2006c] define formas de prover integridade e confidencialidade às mensagens SOAP usando, respectivamente, os padrões
XML-Signature [Bartel et al. 2002] e XML-Encryption [Imamura et al. 2002]. Esses dois
padrões servem para representar assinaturas e cifras no formato XML (e não apenas assinar e cifrar documentos XML). Além disso, a WS-Security também estende o padrão
SOAP para que as mensagens possam transportar diveros elementos de segurança como,
por exemplo, pares usuário/senha [OASIS 2006d], certificados X.509 [OASIS 2006e],
Kerberos tickets [OASIS 2006a] ou asserções SAML [OASIS 2006b].
A especificação SAML (Security Assertion Markup Language) [OASIS 2005a]
define uma infra-estrutura de segurança capaz de expressar, na forma de asserções,
informações de autenticação, de autorização e de atributos acerca de um sujeito. Apesar de não prover a autenticação em si, o padrão SAML permite que, uma vez realizada a
autenticação, esta possa ser usada em domı́nios diferentes por meio da troca de asserções.
O modelo de confiança nos Serviços Web é definido na especificação WS-Trust
[OASIS 2007b]. Esta especificação pressupõe que, caso um sujeito tentando acessar um
recurso não disponha das credenciais exigidas na polı́tica do provedor, este deve conhecer
alguma autoridade que possa consultar (terceira parte confiável), na tentativa de obter tais
credenciais. Na WS-Trust, essa autoridade é genericamente denominada de Serviço de
Tokens de Segurança (Security Token Service - STS) e é responsável por emitir, validar e
trocar credenciais de segurança. A WS-Trust prevê que as credenciais sejam transparentes
ao sujeito que invocar o STS, no entanto, não provê informações sobre como credenciais de um tipo especı́fico são transformadas para as credenciais exigidas no domı́nio do
provedor de serviço.
Para se poder expressar de forma uniforme e interoperável uma polı́tica em
Serviços Web, foram criadas as especificações WS-Policy [Vedamuthu et al. 2007b] e
WS-PolicyAttachment [Vedamuthu et al. 2007a]. Estas fornecem, respectivamente, uma
forma simples de expressar requisitos não-funcionais de serviços Web na forma de
polı́ticas e formas de anexar essas polı́ticas aos serviços Web. A especificação WSSecurityPolicy [OASIS 2007a] define um conjunto inicial de asserções de polı́tica, que
descrevem as caracterı́sticas de segurança definidas na WS-Security e WS-Trust, para serem usadas com a WS-Policy.
Apesar da WS-Policy poder descrever qualquer caracterı́stica de segurança, para
polı́ticas de controle de acesso, recomenda-se o uso de uma linguagem especı́fica,
a XACML (eXtensible Access Control Markup Language) [OASIS 2005b]. Esta
especificação define uma linguagem para expressar regras de polı́tica, bem como um protocolo de pedido/resposta em que diversas entidades interagem para concretizar o controle
de acesso. As principais entidades são o PEP (Policy Enforcement Point), responsável por
efetivar o controle de acesso e o PDP (Policy Decision Point), responsável por decidir se
o acesso será permitido com base em atributos do cliente e do recurso.
Outra especificação importante para o estabelecimento de confiança em Serviços
Web é a WS-Federation [Lockhart et al. 2006]. Essa especificação estende os modelos de
segurança da WS-Security, WS-Trust e WS-Policy descrevendo como devem ser combinados a fim de prover melhores mecanismos de mediação de confiança, dentro de uma
federação ou entre federações distintas. Segundo a WS-Federation, o objetivo de uma
federação é o compartilhamento de informações, como identidades e atributos, de acordo
com uma certa polı́tica que dita como será o compartilhamento, pois as informações são
freqüentemente pessoais ou confidenciais.
Na WS-Federation, o STS é estendido com as funções de provedor de identidades
(IdP) e pelo serviço de atributos e pseudônimos (APS). O provedor de identidade é um
serviço de autenticação que emite credenciais de autenticação. O serviço de atributos e
pseudônimos visa o compartilhamento de informações sobre o cliente, sempre de acordo
com a polı́tica de privacidade da federação. A fim de esconder a verdadeira identidade do
cliente, este pode usar um pseudônimo, gerenciado pelo IdP e pelo APS, por meio do qual
um provedor de serviços pode obter seus atributos sem comprometer sua privacidade.
3. Modelo de transposição
O modelo de autenticação proposto em [Camargo 2006] define uma dinâmica por meio
da qual a autenticação em um domı́nio pode ser transposta mesmo nos casos em que
a tecnologia de segurança seja diferente no outro domı́nio. Para tal, é necessário que
cada domı́nio possua uma autoridade de autenticação e de atributos, implementadas pelo
STS/IdP e pelo APS, e que estas autoridades possuam relações de confiança entre si.
A Figura 1 mostra um exemplo onde um cliente de um domı́nio que usa a tecnologia de segurança SPKI [Ellison et al. 1999] deseja acessar um recurso disponı́vel em
um provedor de serviço s pertencente a um domı́nio que usa X.509 [ITU 1993]. Uma
asserção SAML de autenticação é gerada pelo STS/IdP do domı́nio SPKI (passos 1 a 3).
Tal asserção contém atributos do cliente, e será transposta para o domı́nio X.509 juntamente com a requisição de acesso ao recurso (passo 4). O provedor de serviço realiza
o controle de acesso de acordo com sua polı́tica de segurança. No entanto, o provedor
precisa que a asserção SAML seja transformada em uma credencial que possa entender,
um certificado X.509. Para isso o seu PDP requisita ao STS/IdP do domı́nio (passo 5).
Este pode precisar invocar o STS/IdP do domı́nio do cliente para buscar os atributos necessários à geração do certificado (passo 6) para depois invocar o serviço de tradução de
Domínio SPKI
Domínio X.509
APS
Passo
2
Passo
6.1
Passo 7
STC
Passo 6
STS/
IdP
STS/
IdP
Passo
Passo
33
Passo
1
Passo5
Passo 8
Qualidade de
proteção
Passo 4
PEP
PDP
Passo 9
WS-Security
Cliente
Provedor de
WS
Figura 1. Dinâmica do modelo de transposição de autenticação
credenciais (STC) (passo 7). O STC gera o certificado para o STS/IdP que entrega para o
PDP (passo 8). O PDP pode, então, decidir o acesso do cliente ao recurso.
4. Protótipo do modelo de transposição de autenticação
Cliente
Provedor
de
Serviços
WSS4J
STC
STS/
IdP
Camada de
Aplicação
SunXACML
XMLSecurity
OpenSAML
APS
Serviços para Transposição das
Credenciais
SDSI1.2
PEP
Handler
Qualidade de Proteção
PDP
Handler
Camada de
Segurança
Controle de Acesso
SOAP + HTTP
Camada de
Transporte
Figura 2. Arquitetura do protótipo
O protótipo do modelo de transposição de autenticação desenvolvido é composto
de: um STS que acumula as funções de provedor de identidade e serviço de atributos; o
par PEP/PDP; o serviço de tradução de credenciais; e os controles de confidencialidade e
integridade nas mensagens SOAP. A Figura 2 mostra a arquitetura desse protótipo.
A configuração de software 2 usada nos ambientes de modelagem, implementação
e testes é formada das seguintes ferramentas, além daquelas mostradas na Figura 2: JUDE
para modelagem UML; J2SDK da Sun e Eclipse 3.1.1 (com JDT e plug-ins para Ant
e JUnit) para programação Java; Apache Ant para executar scripts; implementação de
SOAP Apache Axis; container Apache Tomcat; e o motor de testes JUnit.
4.1. Modelagem e Implementação
Cada STS/IdP lida com a infra-estrutura de segurança do seudomı́nio, logo para cada
tecnologia de segurança é necessário definir uma implementação de STS/IdP. Neste
2
Outros detalhes sobre as configurações e softwares utilizados podem ser encontrados no endereço
http://www.das.ufsc.br/seguranca/webservices/
protótipo, os STS/IdPs devem processar requisições de três tipos (Figura 3): (1)
requisições de autenticação de um membro do seu domı́nio; (2) requisições de pedido de
atributos na forma de asserções SAML; (3) requisições de pedido de validação de credencial, possivelmente emitida em outro domı́nio, com a subseqüente emissão de uma outra
credencial na tecnologia de segurança do domı́nio do STS. No protótipo desenvolvido,
foram implementados dois domı́nios distintos: um usando a infra-estrutura X.509 e outro
usando a infra-estrutura SPKI. Essas duas tecnologias foram escolhidas por serem infraestruturas bastante distintas, e pela existência de suporte a elas na especificação XMLSignature. Cabe apontar que a maioria das ferramentas existentes na área de segurança
para Serviços Web têm sua arquitetura voltada para X.509.
Figura 3. Requisições de emissão tratadas pelo portal
Segundo o modelo da WS-Trust, todas essas requisições são para emissão de tokens, logo, em todas as requisições, o elemento wst:RequestType do RST (RequestSecurityToken) contém o URI de emissão (http://schemas.xmlsoap.org/ws/2005/02/trust/Issue).
A diferenciação entre os tipos de requisição é feita analisando-se outros campos da mensagem (Figura 3). O funcionamento do protótipo completo está mostrado no diagrama
de comunicação da Figura 4.
Figura 4. Funcionamento do protótipo para um cliente SPKI e um provedor X.509
As requisições do tipo 1 são feitas por um cliente ao STS/IdP do seu domı́nio,
quando este deseja acessar um serviço que exija autenticação (mensagem 1, na Figura
4). O cliente recebe uma credencial de autenticação e passa essa credencial junto com
a requisição ao serviço que deseja acessar. Uma requisição de autenticação possui o
URI de asserções SAML (http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile1.1#SAMLV2.0) no conteúdo do elemento wst:TokenType. Nestas requisições, o STS/IdP
emite e assina uma asserção SAML tendo como sujeito o requerente e contendo uma
afirmação de autenticação e, possivelmente, alguns dos seus atributos.
As requisições do tipo 2 (mensagem 6, na Figura 4) também possuem o URI
das asserções SAML como conteúdo do elemento wst:TokenType, no entanto diferem das
requisições do tipo 1 pois apresentam o elemento wst:Claims, este contendo o nome do
membro do qual se deseja obter os atributos, seguido de uma lista não vazia de nomes de
atributos. Quando o STS/IdP recebe uma requisição desse tipo, este lê a lista de atributos
e acessa uma base de dados para obter os seus valores. Depois, este emite e assina uma
asserção SAML contendo os atributos do cliente.
As requisições do tipo 3 (mensagem 5, na Figura 4) são feitas pelo PDP do
provedor de serviço ao STS/IdP do seu domı́nio quando este deseja validar o token de
autenticação recebido do cliente. Nestas requisições, o elemento wst:TokenType contém
o URI indicando o tipo de credencial especı́fico do domı́nio. Quando o STS/IdP recebe
uma requisição desse tipo, este valida a asserção SAML recebida de acordo com a sua
confiança no STS/IdP emissor. Em seguida, o STC converte a asserção em uma credencial que o provedor de serviços entenda e, para isso, pode precisar de atributos do cliente.
Nesse caso, o STS/IdP faz uma requisição de atributos (do tipo 2) ao STS/IdP do domı́nio
do cliente. A credencial gerada pelo STC e assinada pelo STS/IdP é então usada pelo
provedor do serviço para obter informações sobre o cliente.
Como a implementação SOAP usada foi o Apache Axis, algumas caracterı́sticas
puderam ser implementadas usando os handlers que são componentes de software que
interceptam as mensagens SOAP nos pontos de entrada e saı́da dos clientes e serviços.
Foram criados handlers que implementam o par PEP/PDP, a confidencialidade e integridade das mensagens SOAP e a autenticação do cliente no seu STS/IdP. Este último foi
desenvolvido para simplificar a implementação de clientes que desejem usar o modelo
implementado e é o responsável por invocar o STS/IdP para autenticação (tipo 1) no lado
do cliente. Quando o handler intercepta uma mensagem SOAP saindo do cliente, este faz
uma requisição de autenticação ao STS/IdP e insere a credencial recebida no cabeçalho
da mensagem. Esta credencial, uma asserção SAML, é usada para o controle de acesso
no provedor de serviço pelos handlers que implementam o par PEP/PDP.
Com o objetivo de prover confidencialidade e autenticidade às mensagens, foram
desenvolvidos handlers baseados nas bibliotecas WSS4J e XML-Security da Apache. Os
handlers que interceptam mensagens que não saem do domı́nio de origem são especı́ficos
e usam a infra-estrutura de segurança subjacente. Os handlers que interceptam as mensagens que atravessam domı́nios usam apenas os pares de chaves dos principais para prover
confidencialidade e autenticidade, sendo que a confiança nessas chaves é verificada pelo
modelo de autenticação.
4.2. Testes de software
Com o objetivo de validar o protótipo, foram realizados testes de unidade e de sistema
sobre o mesmo. Os erros encontrados foram devidamente corrigidos e um relatório de
testes foi escrito.
Nos testes de unidade foram criados test cases, a fim de verificar a correção da
implementação dos componentes. Os test cases têm por objetivo apresentar a um compo-
nente diversos cenários diferentes, que cubram todos os aspectos possı́veis para os dados
de entrada, conferindo se as saı́das estão conforme esperado. De alguma forma, nos testes
de unidade, todos os trechos de código da unidade testada devem ser executados e verificados quanto à correção. Por essa caracterı́stica, os testes de unidade são chamados de
testes de caixa branca (o funcionamento interno dos componentes é inspecionado).
Nos testes de sistema, a abordagem é diferente. Estes testes são chamados de
caixa preta e o sistema como todo, com os seus componentes internos conectados, é validado sob a perspectiva das suas funcionalidades visı́veis externamente e não da sua
implementação interna. Por este tipo de teste, a adaptação do protótipo aos outros programas e a integração dos componentes internos é validada.
5. Integração ao Portal de Entretenimento
Um portal tem por objetivo agregar informações provenientes de diferentes origens em
uma única e simples interface, se tornando um meio de fácil acesso para os usuários do
sistema. A escolha de um portal como aplicação de teste foi devido a esta tecnologia se
mostrar muito promissora como ponto de acesso de clientes a informação distribuı́da, e
por trabalhar com o conceito de autenticação única. Por ser de fácil instalação e gerenciamento e por ser distribuı́do com licença livre, o portal Stringbeans3 foi escolhido como
infra-estrutura.
No portal desenvolvido, os clientes se cadastram para poder acessar serviços
de entretenimento pessoal, como bilheterias de shows e cinemas, compra de passagens
aéreas, reservas em hotéis, etc.. Quando o cliente se cadastra no portal, pode personalizar
seu acesso definindo quais serviços serão apresentados e a forma como serão apresentados. Além disso, o cliente fornece ao portal diversos dados pessoais que o portal cadastra
no serviço de atributos para que outros STS/IdP possam posteriormente acessar para gerar
credenciais.
Domínio SPKI
Domínio SPKI
Serviço de
Filmes em
Cartaz
SSL
Login/password
SAML asserção
STS/
IdP
Serviço de
Sinopses
Serviço de
Vendas de
Ingressos
Domínio X.509
Figura 5. Integração do protótipo ao portal
A Figura 5 mostra a integração do protótipo do modelo de transposição de
autenticação ao portal Web. Uma vez cadastrado no portal, o cliente pode se autenticar
por meio do par usuário/senha, sobre uma sessão SSL, para acessar os serviços reunidos
no portal. Seguindo o protótipo de transposição de autenticação descrito, o portal autentica o cliente no STS/IdP do seu domı́nio e depois usa essa autenticação nos domı́nios dos
3
Disponı́vel em http://www.nabh.com/projects/sbportal
provedores de serviços. Quando os provedores forem acessar o serviço de atributos no
domı́nio do portal, pedirão por atributos do cliente do portal. Dessa forma, o portal faz
a mediação do acesso dos clientes do portal aos serviços prestados pelos provedores. O
cliente do portal desfruta, então, de um contexto SSO por meio do acesso mediado.
Como
o
portal
Stringbeans
segue
o
padrão
de
Portlets
[Abdelnur and Hepper 2003] e implementa a especificação WSRP (Web Services
for Remote Portlet, diversas bibliotecas necessárias para a execução do protótipo já
estavam disponı́veis no portal. Para fazer a integração, foi necessário adicionar ao portal
as bibliotecas ausentes e implementar os portlets que se comportam como clientes SOAP
e se comunicam com o STS do domı́nio do portal e com os provedores de serviços. Os
Portlets são responsáveis também pela geração das marcações HTML que serão exibidas
no navegador do usuário. Exceto pela geração de HTML, a criação de um cliente em um
Portlet é igual a um cliente de um Serviço Web normal.
6. Trabalhos relacionados
A transposição de autenticação em arquiteturas orientadas a serviço já foi alvo
do esforço de algumas pesquisas, sendo que a maioria envolve com o conceito
de identidades federadas em Serviços Web, no entanto, se restringindo apenas ao
uso da infra-estrutura de segurança X.509. Os principais trabalhos nesse sentido
são o CredEx [Vecchio et al. 2005] e o Projeto Shibboleth [Scavo and Cantor 2005].
Em [Camargo et al. 2007], foi apresentado o modelo descrito na seção 3 e uma
implementação preliminar do modelo. Esta primeira implementação, por não tratar totalmente o modelo e por não considerar questões importantes relativas à adequação aos
padrões, como o uso do XACML e do WS-Policy, não foi suficiente para trazer à tona
todas as dificuldades envolvidas com desenvolvimento do modelo completo. O presente
trabalho é uma continuação do trabalho iniciado em [Camargo et al. 2007], sendo que
este descreve em detalhes o protótipo, agora completo, do modelo de transposição. Outras
melhorias introduzidas ao trabalho apresentado em [Camargo et al. 2007] dizem respeito
a facilidade de configuração.
O CredEx define um repositório centralizado por meio do qual um usuário pode
gerenciar suas credenciais. A implementação,entretanto, apenas prevê a associação de
um par usuário/senha a um certificado X.509, e vice-versa. O Projeto Shibboleth está
baseado no conceito de federações e permite também a transposição de autenticação e
troca de atributos por meio de asserções SAML. Entretanto, a maioria das organizações
que adotam o Shibboleth fazem uso do padrão X.509 para autenticação dos servidores e
uma autenticação baseada em senha para autenticação dos clientes.
7. Conclusão
Os principais objetivos deste trabalho foram a definição, implementação e testes de um
protótipo segundo o modelo de transposição de autenticação e, em seguida, a integração
do mesmo a um portal Web de entretenimento. Com a conclusão destes objetivos,
verificou-se a viabilidade do modelo de transposição de autenticação com base no gerenciamento federado de identidades e atributos. As principais dificuldades encontradas na implementação do protótipo foram a adequação das ferramentas disponı́veis à
infra-estrutura SPKI, que foram projetadas tendo como foco o X.509, e ainda a pouca
documentação das bibliotecas utilizadas no protótipo. A integração com o portal repre-
sentou a comprovação da aplicabilidade do protótipo em um contexto que reflete bem a
proposta do crescente compartilhamento de informações.
Os trabalhos futuros relacionados a este, alguns já em andamento, se referem
a ampliação das tecnologias de autenticação suportadas pela implementação, como
biometria, usuário/senha, tickets Kerberos, e outros. Outro trabalho importante é a
implementação do gerenciamento de pseudônimos, que contribuirá para garantir a privacidade dos clientes.
Agradecimentos
Este trabalho está sendo desenvolvido no contexto do projeto “Infra-estrutura de
Segurança para Aplicações Distribuı́das Orientadas a Serviço”, financiado pelo CNPq
(550114/2005-0).
Referências
(1993). Itu-t recommendation x.509. http://www.itu.int/rec/T-REC-X.509-199708-S/e.
Abdelnur, A. and Hepper, S. (2003).
http://jcp.org/en/jsr/detail?id=168.
Java portlet specification version 1.0.
Bartel, M., Boyer, J., Fox, B., LaMacchia, B., and Simon, E. (2002). Xml-signature
syntax and processing. http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/.
Booth, D., Haas, H., McCabe, F., Newcomer, E., Champion, M., Ferris, C., and Orchard,
D. (2004). Web services architecture. http://www.w3.org/TR/2004/NOTE-ws-arch20040211/.
Booth, D. and Liu, C. K. (2006). Web services description language (wsdl) version 2.0
part 0: Primer. http://www.w3.org/TR/2006/CR-wsdl20-primer-20060327.
Bray, T., Paoli, J., Sperberg-McQueen, C. M., Maler, E., Yergeau, F., and
Cowan, J. (2006).
Extensible markup language (xml) 1.1 (second edition).
http://www.w3.org/TR/2006/REC-xml11-20060816/.
Camargo, E., da Silva Fraga, J., Wangham, M. S., and de Mello, E. R. (2007).
Autenticação e autorização em arquiteturas orientadas a serviço através de identidades
federadas. In Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuı́dos,
Belém.
Camargo, E. T. (2006). Transposição de autenticação e de autorização em arquiteturas
orientadas a serviços através de identidades federadas. Mestrado em eng. elétrica,
Universidade Federal de Santa Catarina, Florianópolis.
Ellison, C., Frantz, B., Lampson, B., Rivest, R., Thomas, B., and Ylonen, T. (1999). Spki
certificate theory. RFC 2693. http://www.ietf.org/rfc/rfc2693.txt.
Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P., and Berners-Lee,
T. (1999). Hypertext transfer protocol – http/1.1. ftp://ftp.isi.edu/in-notes/rfc2616.txt.
Imamura, T., Dillaway, B., and Simon, E. (2002). Xml encryption syntax and processing.
http://www.w3.org/TR/2002/REC-xmlenc-core-20021210.
Jøsang, A. and Pope, S. (2005). User centric identity management. In AusCERT Asia
Pacific Information Technology Security Conference.
Lockhart, H., Andersen, S., Bohren, J., Sverdlov, Y., Hondo, M., Maruyama, H., Nadalin, A., Nagaratnam, N., Boubez, T., Morrison, K. S., Kaler, C., Nanda, A.,
Schmidt, D., Walters, D., Wilson, H., Burch, L., Earl, D., Baja, S., and Prafullchandra, H. (2006). Web services federation language (ws-federation) version 1.1. http://download.boulder.ibm.com/ibmdl/pub/software/dw/specs/ws-fed/WSFederation-V1-1B.pdf.
Mitra, N. (2003). Soap version 1.2 part 0: Primer. http://www.w3.org/TR/2003/RECsoap12-part0-20030624.
OASIS (2005a). Assertions and protocols for the oasis security assertion markup language
(saml) v2.0. http://docs.oasis-open.org/security/saml/v2.0/saml-core-2.0-os.pdf.
OASIS (2005b). extensible access control markup language (xacml) version 2.0.
http://docs.oasis-open.org/xacml/2.0/access control-xacml-2.0-core-spec-os.pdf.
OASIS (2006a).
Web services security:
Kerberos token profile
http://www.oasis-open.org/committees/download.php/16788/wss-v1.1-spec-osKerberosTokenProfile.pdf.
1.1.
OASIS (2006b). Web services security: Saml token profile 1.1. http://www.oasisopen.org/committees/download.php/16768/wss-v1.1-spec-os-SAMLTokenProfile.pdf.
OASIS (2006c).
Web services security:
Soap message security
http://www.oasis-open.org/committees/download.php/16790/wss-v1.1-spec-osSOAPMessageSecurity.pdf.
1.1.
OASIS (2006d).
Web services security:
Usernametoken profile
http://www.oasis-open.org/committees/download.php/16782/wss-v1.1-spec-osUsernameTokenProfile.pdf.
1.1.
OASIS (2006e).
Web services security: X.509 certificate token profile 1.1.
http://www.oasis-open.org/committees/download.php/16785/wss-v1.1-spec-osx509TokenProfile.pdf.
OASIS (2007a).
Ws-securitypolicy 1.2.
http://docs.oasis-open.org/ws-sx/wssecuritypolicyz-/200702/ws-securitypolicy-1.2-spec-cs.pdf.
OASIS (2007b). Ws-trust 1.3.
trust-1.3-os.pdf.
http://docs.oasis-open.org/ws-sx/ws-trust/200512/ws-
Scavo, T. and Cantor, S. (2005).
Shibboleth architecture - technical overview.
http://shibboleth.internet2.edu/docs/draft-mace-shibboleth-tech-overview-latest.pdf.
Vecchio, D. D., Humphrey, M., and Nagaratnam, J. B. N. (2005). Credex: User-centric
credential management for grid and web services. In 2005 IEEE International Conference on Web Services (ICWS 2005), Orlando, FL. IEEE.
Vedamuthu, A. S., Orchard, D., Hirsch, F., Hondo, M., Yendluri, P., Boubez, T., and Ümit Yalçinalp (2007a). Web services policy 1.5 - attachment.
http://www.w3.org/TR/2007/CR-ws-policy-attach-20070330.
Vedamuthu, A. S., Orchard, D., Hirsch, F., Hondo, M., Yendluri, P., Boubez, T., and Ümit Yalçinalp (2007b). Web services policy 1.5 - framework.
http://www.w3.org/TR/2007/CR-ws-policy-20070330.

Documentos relacionados

transposic¸˜ao de autenticac¸˜ao em arquiteturas orientadas a servic

transposic¸˜ao de autenticac¸˜ao em arquiteturas orientadas a servic A transposição de autenticação consiste, basicamente, em permitir o acesso a recursos controlados em um domı́nio diferente daquele do cliente, usando credenciais fornecidas no seu domı́nio de o...

Leia mais

- GCSeg - Secure and Reliable Computing Research Group

- GCSeg - Secure and Reliable Computing Research Group A Internet provê uma poderosa infra-estrutura de comunicação, que com seu crescimento têm impulsionado a demanda por aplicações distribuı́das. Entretanto, a interação entre estas aplicaçõ...

Leia mais