Upload
nicolas-georgeault
View
1.454
Download
6
Embed Size (px)
DESCRIPTION
Les Slides de ma presentation sur le Claim lors du SharePoint Summit de Quebec 2012
Citation preview
Tout ce que vous voulez savoir sur l'authentification par revendications de SharePoint 2010... Claims? Vous avez dit Claims?
Nicolas GeorgeaultArchitecte SharePoint Senior, MVP SharePoint ServerPublic Consulting Group
Qui suis-je?
Nicolas GeorgeaultMVP3y SharePoint ServerArchitecte SP chez PublicConsulting Group Canada
Consultant & Speaker [email protected]://ngeorgeault.club-sharepoint.frhttp://www.facebook.com/nicolas.georgeaulthttp://twitter.com/ngeorgeaulthttp://www.slideshare.com/ngeorgeault
Passionné de Horse-Ballwww.fihb-horseball.org
Le club SharePoint
Point de rencontre francophone
Agrégation de contenu en FrançaisBlogues,Articles,Evènements …
Groupe d’échange sur les usages et les bonnes pratiques
5 a 7 des communautés MicrosoftDernier jeudi du mois à Montréal?? A Québec
http://www.club-sharepoint.fr
http://www.ugsf.fr
Références
Références et Crédits
Plan Authentication Methods(SharePoint Server 2010)
http://technet.microsoft.com/en-us/library/cc262350.aspx
A Guide to Claims-Based Identity and Access Control (Microsoft Patterns and Practices)
http://claimsid.codeplex.com/
Steve Peschkahttp://blogs.technet.com/b/speschka/archive/2010/06/12/migrating-a-web-application-from-windows-classic-to-windows-claims-in-sharepoint-2010.aspxhttp://msdn.microsoft.com/en-us/library/hh147183.aspx
Azure ACS Integrationhttp://blogs.objectsharp.com/cs/blogs/steve/archive/2011/04/21/windows-azure-access-control-services-federation-with-facebook.aspxhttp://www.7388.info/index.php/article/studio/2011-07-29/20983.html
Références et Crédits (suite)
SelfSTS and Vittorio Bertoccihttp://archive.msdn.microsoft.com/SelfSTShttp://blogs.msdn.com/b/vbertocci/archive/2010/08/23/selfsts-when-you-need-a-saml-token-now-right-now.aspx
Paul Schaefleinhttp://www.schaeflein.net/blog/Lists/Posts/Post.aspx?ID=4
Wictor Wilénhttp://www.wictorwilen.se/Post/Visual-guide-to-Azure-Access-Controls-Services-authentication-with-SharePoint-2010-Index-Post.aspx
Agenda
Caractéristiques d'une Application sécurisée
Options de l'authentification SharePoint 2010
Aperçu de la terminologie/technologie des revendications
DémosApplication Web SharePoint 2010 avec FBA (Authentification Basée sur les Formulaires)Ajout des fournisseurs d'identité de confiance Azur basés sur ACS
“Pièges”Problèmes habituels lors de l’implémentations de revendicationsProblèmes lors des migrations de MOSS vers SharePoint 2010Quand les revendications se comportent mal…
Recommandations
Caractéristiques d'une Application sécurisée
L'authentification est le processus de validation de l'identité d'un utilisateur
SharePoint n’effectue jamais d'authentification
Si l'invite login apparait de manière permanente, pensez a un problème d'authentification!
Caractéristiques d'une Application sécurisée
L'autorisation est le processus qui détermine les ressources, caractéristiques, etc. auxquels un utilisateur peut avoir accès
Objet SPUser – directeur de la sécurité
Si vous voyez des erreurs « Accès refusé », pensez a des problèmes d’autorisation !
Options de l'authentification SharePoint 2010
La plus grande décision de votre vie !
Conseils TechNet:“« Pour les nouvelles implémentations de SharePoint Server 2010, vous devriez considérer l'authentification basée sur les revendications.”
Options de l'authentification SharePoint 2010
Authentification basée sur les revendications (Jetons)
Authentification Windows: NTLM/Kerberos, BasiqueAuthentification basée sur les formulaires (Fournisseur d'appartenances ASP.NET et gestionnaire de rôles)Fournisseurs d'identité fiablesPage de connexion personnalisé
Mode Authentification Classique (“Old School”)Authentification Windows (NTLM/Kerberos) seulement
Les deux modes connectent les utilisateurs authentifies aux objets SPUser (entités de sécurité)
Concepts d'identité basé sur les revendications
Qu’est-ce qu’une revendication?Un élément d'information décrivant un utilisateur
NomAdresse de CourrielAppartenance à un rôle/groupeÂgeDate d'embauche
A quelle revendications puis-je faire confiance, et quelles revendications affectent mes choix d’autorisation?
Terminologie de l’identité basée sur les revendications
JetonEnsemble sérialisé de revendication au sujet d’un utilisateur authentifie, signe numériquement par un fournisseur de jeton.
Service de Jeton de Sécurité – Fournisseur d’identité (IP-STS)
Valide les informations d'identification utilisateurConstruit, signes et émet des jetons contenant des revendications
Partie utilisatrice (RP)Applications qui prend des décisions d'autorisation basées sur les revendications (SharePoint 2010)
Le paradigme des revendications
Séparation de la logique de l'authentification, de l’autorisation et de la logique de personnalisation
Les applications ne doivent pas déterminer qui est ou n’est pas l'utilisateur. Elles reçoivent des demandes qui identifient cet utilisateur.Parfait pour les développeurs qui souhaitent rarement travailler avec identité et les problèmes qui y sont attaches ! (Gouvernance, Gestion, …)
Fournit un moyen commun pour les application d’acquérir les informations d'identité dont elles ont besoin sur les utilisateurs
La caverne aux merveilles
1. “Je souhaiterai accéder au document de budget.”
2. “Pas avant que vous ne m’ayez prouve que vous faite bien partie du groupe Finance.” “Give me the Magic Word! ;)”
3. “Voici mon IDentifiant utilisateur et mon mot de passe.”
4. “Bonjour, Aladin. Je vois que vous êtes dans le groupe des finances. Voici un jeton, que vous pouvez utiliser.”
5. “Je souhaiterai accéder au document de budget,et voici la preuveque je peux bien y accéder!”
SharePoint 2010
Technologies d'identité basée sur les revendications
WS-Trust, WS-Federation, SAMLDemander et recevoir des jetonsReprésentation XML de revendications
Ces technologies émergentes sont dans l’air depuis un certain temps
Leur utilisation dans l’identification basée sur les revendications représente une nouvelle approche pour la gestion de l'identité dans les applicationsBeaucoup de potentiel dans les environnements de travail
Services de Fédération Active Directory (ADFS), external LDAP, etc.
Énorme potentiel comme nous nous déplaçons vers le nuage
Azure ACS: Facebook, Google, Windows Live ID, etc.
Demo
La Web Part Afficheur des revendications
Visual Web Part
Code behind:
http://blogs.pointbridge.com/Blogs/nielsen_travis/Pages/Post.aspx?_ID=32
IClaimsPrincipal claimsPrincipal = Page.User as IClaimsPrincipal;IClaimsIdentity claimsIdentity = (IClaimsIdentity) claimsPrincipal.Identity;GridView1.DataSource = claimsIdentity.Claims;Page.DataBind();
SharePoint 2010 et le FBA
Globalement semblable à la configuration du FBA pour MOSS, à quelques exceptions près:
Le fournisseur d'authentification n'a pas besoin d'être mappé à une zone distincteUn Web.config supplémentaires pour modifier:
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\WebServices\SecurityTokenAjouter des entrées pour la chaîne de connexion, le fournisseur d'appartenances, le gestionnaire de rôles
Mêmes modifications pour l’Administration Centrale et l’Application Web
Page de connexion
Permet aux utilisateurs de choisir comment ils souhaitent être authentifier lorsque plusieurs fournisseurs sont configurés (authentification mixte)
Des opportunités de personnalisationhttp://www.orbitone.com/en/blog/archive/2010/06/23/sharepoint-2010-mixed-authentication-automatic-login.aspxhttp://blogs.msdn.com/b/brporter/archive/2010/05/10/temp.aspx
Authentification basee sur les formulaires
Ajouter le support Facebook
Créer un compte sur AppFabric Labshttps://portal.appfabriclabs.com/Default.aspx
Utilisez Facebook Developer application pour créer votre nouvelle application personnelle
Ajouter le support Facebook
Notez les valeurs App ID et App Secret
Attribuer une URL « Politique de confidentialité »
Accorder des autorisations à générer le jeton accès
Choisissez « Web » dans le menu de gauche, entrez des valeurs pour l'URL du Site et de domaine du Site
Basé sur votre compte AppFabric Labs / Azure
Ajouter le support Facebook
Générer un certificat auto-signéC:\Program Files\Microsoft Office Servers\14.0\Tools>MakeCert.exe -r -pe -n "CN=www.club-sharepoint.fr" -sky exchange -ss my
Pour le développement seulement!
A ne pas faire en production!
Ajouter le support Facebook
Téléverser le Certificat de signature des jetons
Ajouter le support Facebook
From Azure ACS, choose Add Identity Provider, then choose Facebook application
Enter Application ID, Application secret, and Application permissions
Ajouter le support Facebook
Configurer les paramètres de l’application Cliente
Ajouter le support Facebook
Configurer les groupes de regles
Azure ACSTrusted Identity Providers
Adding Facebook Support
In case the Internet didn’t work:
Adding Facebook Support
In case the Internet didn’t work:
Adding Facebook Support
In case the Internet didn’t work:
Quelques “Pieges”
Quelques “Pièges” des revendications
Problèmes classiques rencontres lors de l’implémentation des revendications
Le robot de recherche nécessite NTLM dans la zone qu'il utiliseLe “Sélecteur de personnes” est plus qu’un “ éditeur d'expression ” pour les revendication
Possibilité de code personnalisé (fournisseur de revendications personnalisées)
Profils utilisateurUser Profiles
Connexion LDAP ou BCS au magasin d'authentification
Intégration de client Office (2007 SP2+, 2010)IE 8 et +: Sites de confiance
Témoignage de la vie réelle
“Après la migration de revendications dans SharePoint 2010, la plupart de nos utilisateurs ont pu se connecter de temps en temps.”
—Un administrateur système decu
Quelques “Pièges” des revendications
Migration de MOSS vers SharePoint 2010Migrer les utilisateurs FBA
$wa = get-SPWebApplication $WebAppName$wa.MigrateUsers($true)
Portalsuperuser et Portalsuperreader doivent être mises à jour afin de refléter le format codé en revendications
$wa.Properties["portalsuperuseraccount"] = "i:0#.w|domain\apppool"$wa.Properties["portalsuperreaderaccount"] = "i:0#.w|domain\apppool"$wa.Update()
Vous devez migrer Tous les fournisseurs de MOSS vers 2010
cad., NTLM et FBA si les deux existaient avant la migration
Quand les revendications se comportent mal…
Affichage plus ou moins “Drole” des noms d’utilisateurs
i:0#.w|SHRPNT\Administratori:0#.f|CustomMembershipProvider|usernamei:0#.t|selfsts|[email protected]
i: Microsoft.SharePoint.Administration.Claims. SPClaimsAuthMembershipProvider (Web.config)
Fournisseurs d’identite: Windows, Forms, Trusted
Quand les revendications se comportent mal…
Set DisplayName property of SPUser$user = Get-SPUser -Web http://abc.shrpnt.loc -Identity "i:0#.f|CustomMembershipProvider|username"$user.DisplayName = "John Doe"$user.Update()
Quand les revendications se comportent mal…
Problèmes d'expiration de session avec les revendications SAML
Les utilisateurs peuvent revenir sur la page des heures plus tard sans avoir à se connecter nouveauPar défaut, SharePoint crée un cookie FedAuth (écrit sur le disque) et non un cookie de Session
$sts = Get-SPSecurityTokenServiceConfig$sts.UseSessionCookies = $true$sts.Update()
Jeu/mise à jour de la propriété TokenLifetime(minutes)
Set-ADFSRelyingPartyTrust -TargetName "SPS 2010 ADFS" -TokenLifetime 5
Quand les revendications se comportent mal…
Redirection continue à la page de connexionCela peut se produire lorsque le TokenLifetime est inférieure à la valeur du parametre LogonTokenCacheExpirationWindowLa valeur par défaut de LogonTokenCacheExpirationWindow dans le STS SharePoint 2010 is est de 10 minutes
$sts = Get-SPSecurityTokenServiceConfig$sts.LogonTokenCacheExpirationWindow =(New-TimeSpan -minutes 4)$sts.Update()
Quand les revendications se comportent mal…
Vous allez à la page de connexion, vous entrez des informations d'identification valides, vous appuyez sur le bouton «connexion», pour être… finalement redirigé vers la page de connexion
Vérifiez les journaux ULS !Peut être une expiration du jetonPout être quelque bien autre chose…
Recommendations
Recommendations
Restez avec le Mode d’authentification classique si vous déployez SharePoint dans un environnement Active Directory « simple »
Surtout si des contrôles de sécurité stricts sont en place et qu’ils sont hors de votre contrôleSurtout si vous migrez uniquement de l'authentification Windows depuis MOSSEt aussi car une fois en mode « revendications »… Vous ne pourrez pas revenir en arrière !
Recommendations
Si vous devez utiliser les revendications pour votre Extranet, essayez de réduire au minimum le nombre d'en-têtes de zones/hôte utilisé
La zone par Défaut devrait en être mieux sécurisée
Avoir une bonne « boîte à outils de dépannage »Lecteur de journal ULSFiddlerClaims Viewer web part
Références et Crédits (suite)
Claims Viewer web parthttp://blogs.pointbridge.com/Blogs/nielsen_travis/Pages/Post.aspx?_ID=32
Fiddlerhttp://www.fiddler2.com/fiddler2/
SharePoint ULS Log Viewershttp://sharepointlogviewer.codeplex.com/http://ulsviewer.codeplex.com/
Transparent Login with Mixed Authenticationhttp://www.orbitone.com/en/blog/archive/2010/06/23/sharepoint-2010-mixed-authentication-automatic-login.aspx
46
Questions
Merci pour votre attention.Bonne fin de journée.
48
Annexes