wif and sl4 (pt)
DESCRIPTION
TRANSCRIPT
WIF e Silverlight 4 – Claims Aware, Federação de Identidade (Passiva e Activa)Nuno Godinho – Consultor Independente
Nuno Filipe GodinhoConsultor Independente
Mail: [email protected]@sapo.pt
MSN: [email protected]
Blogs: http://pontonetpt.com/blogs/nunogodinhohttp://xamlpt.com/blogs/nunogodinhohttp://weblogs.asp.net/nunogodinhohttp://msmvps.org/blogs/nunogodinho
Twitter: NunoGodinho
Sobre Mim
Agenda
• Introdução à Claims-Based Identity• WIF – Windows Identity Foundation– Introdução– Contrução de Soluções Silverlight Claims-Aware
• Federação de Identidade em Silverlight– Passiva– Activa
• Resumo
Agenda
Introdução à Claims-based Identity
• As nossas Soluções são prisioneiras de Silos de Identidade
Introdução à Claims-Based Identity
Login.aspx Page1.aspx
CredenciaisTipos / APIs
Repositórios de Credenciais
Repositório de Informações de Utilizador
• Na vida real esta identificação funciona bastante bem … Mas como é que o fazemos?
Introdução à Claims-Based Identity
Externalizamos aAutenticação
Obtemos informação via de documentos
• As Claims/ Declarações podem libertar as nossas Soluções dos Silos de Identidade
Introdução à Claims-Based Identity
Fornecedor de Identidade (IdP)
STS
Security Token
Claims Solução com Identidade Federada (RP)
Active Directory Federation Services 2.0
WIF – Windows Identity Foundation
• Essencial do modelo de desenvolvimento de claims– O Object Model das Claims está integrado na API do .NET– Modelo de Desenvolvimento comum para ASP.NET e WCF– Modelo de Desenvolvimento comum para soluções “on-
premises & cloud” – Baseado em Configurações
• Ferramentas para configuração automática das aplicações baseadas em Metadados– WS-Federation, WS-Trust
• Framework para o desenvolvimento de STS à medida• Muito Mais…
WIF – Windows Identity Foundation
• Modelo de Objectos
IClaimsPrincipalIClaimsIdentity
Delegate
Claims
ClaimClaim
IIdentity AuthenticationType IsAuthenticated Name
IPrincipal IsInRole
Identity
IClaimsIdentityIClaimsIdentity
Claim
Subject
Issuer
Value
ClaimType
ValueType
OriginalIssuer
Identity
WIF – Windows Identity Foundation
void Page_Load(object sender, EventArgs e) { IClaimsPrincipal icp = (IClaimsPrincipal) Thread.CurrentPrincipal;
IClaimsIdentity claimsIdentity = (IClaimsIdentity)icp.Identity;
ageClaimValue = (from c in claimsIdentity.Claims where c.ClaimType == "http://MyNS/AgeClaim" select c.Value ).Single(); }
• Como funciona– HTTPModule(s) colocados no fluxo de execução de uma
solução ASP.NET• Tratam de expôr politicas, gerir protocolos de redireccionamento,
estabelecimento de sessões, …
– WSFederationAuthenticationModule• Implementa o protocolo de redireccionamento WS-Federation
– SessionAuthenticationModule• Trata da gestão de sessões (independentemente do protocolo de
autenticação)
– ClaimsPrincipalHttpModule• Fornece uma forma para a injecção de claims (declarações) no
objecto Principal
WIF – Windows Identity Foundation
• Fluxo de Processamento do ASP.NET c/ WIF
WIF – Windows Identity Foundation
WSFAM
SecurityTokenHandler
ClaimsAuthenticationManager
SessionAuthenticationModule
ClaimsAuthorizationManager
• Bindings– UserNameWSTrustBinding– CertificateWSTrustBinding– WindowsWSTrustBinding– KerberosWSTrustBinding– IssuedTokenWSTrustBinding
WIF – Windows Identity Foundation
Federação de Identidade em Silverlight
• O que é Federação de Identidade?“Um processo de autenticação de utilizadores entre diversos sistemas de TI ou mesmo organizações” – via Wikipedia
• Qual é o Objectivo da Federação de Identidade?“O objectivo principal da federação de identidade é permitir aos utilizadores de um domínio acesso seguro a dados ou sistemas de outros domínios de uma forma semelhante, sem necessidade de administração de utilizadores redundante” – via Wikipediahttp://en.wikipedia.org/wiki/Federated_identity
Identity Federation in Silverlight
• O que é a Federação Passiva?
1. O Utilizador Final navega para o RP
6. O Token de Segurança fornecido pelo IdP é enviado para o RP
Identity Federation in Silverlight
Fornecedor de Identidade
(IdP)
Solução com Identidade
Federada (RP)
Cliente
Relação de Confiança
2. O RP redirecciona o Utilizador para o IdP
3. O Utilizador
Final faz
coloca as
credenciais
5. O IdP fornece um Token de Segurança
4. Autenticado
Utilizador Final
Autenticado
DEMO:Federação de Identidade em Silverlight (Passiva)
• O que é a Federação Activa?
Relação de Confiança
2. Autenticado
Identity Federation in Silverlight
Fornecedor de Identidade
(IdP) com STS
Solução com Identidade
Federada (RP)
Cliente / Requerente
1. O Utilizador Final pede um Security Token
3. O IdP fornece um Token de Segurança
4. O Token de Segurança fornecido pelo IdP é apresentado ao RP
End-User
Authenticated
DEMO:Federação de Identidade em Silverlight (Activa)
Resumo
• Claims-based Identity permite-nos Libertar as nossas soluções dos Silos de Identidade
• WIF permite-nos implementar fácilmente Claims-based Identity nas nossas Soluções
• Federação de Identidade permite-nos autenticar Utilizadores entre diversos sistemas de TI ou mesmo organizações
Resumo
• Dois tipos de Federação de Identidade– Passiva – Baseada em redireccionamento– Activa – Autenticação activa sobre o STS do IdP
Resumo
Libertam as vossas Soluções
Nuno Godinho Partner @ [email protected]