in

didierdanse.net

Site personnel de Didier Danse
Didier Danse's Personnal Website
Microsoft Most Valuable Professional SharePoint

didierdanse.net - Les news Developpement

SharePoint: Activer le Single-Sign-On (SSO)

Vous utilisez de multiples comptes au sein de votre entreprise avec par exemple, un pour vous connecter à votre Windows, l’autre pour vous connecter à SAP, un troisième pour vous connecter à une application Oracle ou que sais-je encore? Dans ce cas, le Signle Sign On est une fonctionnalité très utile pour vous et surtout pour vos utilisateurs.

Effectivement, à l’aide de cette fonctionnalité, vous pouvez vous loguer une fois (lorsque vous entrez sur votre Windows) et, si vous avez déjà fourni l’association login / mot de passe pour les autres applications, vous connecter automatiquement à ces autres applications ou système d’informations. Rassurez-vous, le stockage de ces informations est fait de manière cryptée à l’aide d’une clé de cryptage. Nous y reviendrons plus loin dans cet article.

Dans ces quelques lignes, nous allons voir comment l’activer au sein de SharePoint.

Single-Sign-On dans la console d’administration

Rendez-vous sur la page de gestion des Opérations. Le lien concernant SSO se trouve dans la configuration de la sécurité.

clip_image002*

Après avoir cliqué sur ce lien, vous devriez obtenir la page suivante:

clip_image004

Les liens disponibles diffèrent selon les droits de l’utilisateur connecté.

Il se peut également que vous receviez le message suivant: Failed to connect to Microsoft Single Sign-on Service. To configure, please ensure the service is running comme on le retrouve sur la capture suivante:

clip_image005

Dans ce cas, cela sous-entend que le service SSO n’est pas en cours d’exécution. Il faut dès lors l’activer. Si vous n’avez pas ce message, vous êtes évidemment libre de bypasser cette étape mais il est cependant conseillé de vérifier le paramétrage du service.

Activer le service SSO

Rendez-vous dans la fenêtre d’administration des services (services.msc) et cherchez le service Microsoft Single Sign-On. Très certainement celui-ci est-il stoppé.

clip_image006

Si vous activez le SSO, il est fort probable que vous l’utilisiez dans le futur de manière régulière. De ce fait, il est préférable de mettre le service en démarrage automatique.

clip_image007

Par ailleurs, dans l’onglet Log On, indiquez le compte qui exécutera ce service. Celui-ci doit faire partie des administrateurs de votre SharePoint afin de pouvoir créer la base de données qui contiendra le mapping Windows User Account / Application User Account.

clip_image008

Modifier les paramètres de SSO

Un clic sur le premier lien permet de configurer le Single Sign-On.

Single Sign-On-Administrator: peut créer, modifier ou supprimer des définitions d’applications.

Enterprise Application Definition Administrator: peut gérer les credentials d’une définition d’application.

Comme nous l’avions signalé précédemment, il est nécessaire de créer une base de données qui contiendra les différents comptes utilisateurs. C’est dans cet écran que nous pouvons (et même devons) créer la dite base de données. Enfin, il est possible de modifier les paramètres par défaut concernant la durée de vie du ticket SSO et des audits au sein de la base de données.

clip_image010

Rapidement, nous pouvons voir qu’une nouvelle base de données à été créée dans SQL Server:

clip_image012

Cette base ne contient que quelques tables mais c’est bien suffisant pour répondre aux objectifs de SSO. Il vous est loisible de vous balader au sein de cette base afin de bien comprendre comment fonctionne cette base. On notera rapidement que les informations concernant les comptes utilisateurs ne sont pas lisibles tel quel. Cela a dû à un concept déjà cité: la clé d’encryption

Gérer la clé d’encryption

Une clé d’encryption est conceptuellement très simple à maitriser. Il s’agit d’une chaîne de caractères qui est utilisée pour crypter / décrypter les données dans la base de données.

Ainsi, sur le lien Manage Encryption Key, il est possible de générer une nouvelle clé d’encryption. La création d’une nouvelle clé est conseillée de manière périodique ou encore lors d’un soupçon de données altérées. 

clip_image013

clip_image014

Bien que ce ne soit qu’une option, il est fortement recommandé de réencrypter les données stockées dans la base de données lors de la création d’une nouvelle clé sans quoi les utilisateurs devront réencoder leurs credentials.

Enfin, une fois que celle-ci a été générée, il est conseillé de sauvegarder cette clé. On notera tout de même que l’on nous ne propose que de faire des backups sur le drive A…

Définir des applications d’entreprise

Il ne reste dès lors plus qu’à créer des définitions d’applications d’entreprise (entendez par là SAP, Oracle, …) pour lesquelles vous souhaitez stocker des credentials.

Ainsi, définir une application est une étape aisée puisqu’il suffit d’indiquer le nom de l’application (nom que vous souhaitez) et les propriétés qui doivent être persistées.

clip_image015

Ensuite, vous pouvez ajouter, modifier ou supprimer des comptes pour une certaine application.

clip_image016

Notez que pour les comptes qui n’auront pas encore été spécifiées, il est possible directement à l’utilisateur d’encoder son login et son mot de passe au travers de la page http://{server}/_layouts/ssologon.aspx.

Sans entrer dans les détails, il vous est possible d’utiliser un autre provider SSO que celui fournit au travers de cette interface. Il vous est ainsi loisible d’utiliser un autre provider SSO ce qui est très utile si vous utilisez déjà un service SSO.

Enfin, bien que ce code ne soit pas exhaustif, voici une piste de code si vous souhaitez manipuler des informations SSO:

ISsoProvider provider = SsoProviderFactory.GetSsoProvider();

SsoCredentials crentials = provider.GetCredentials(“Mon_Application”);

Ces deux simples lignes de code vous permettrons de récupérer les informations login / mot de passe enregistrées pour l’utilisateur courant pour l’application définie en tant que Mon_Application.

Plus d’infos sur ces méthodes:

http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.portal.singlesignon.ssoproviderfactory.getssoprovider.aspx et http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.portal.singlesignon.issoprovider.getcredentials.aspx

Comments

 

Alex said:

Très bon tuto, seulement j'ai un petit problème, est-ce que SSO et sharepoint sont compatible avec SQL 2005, car pour moi impossible a le configurer, il me dit que mon server n'est pas valide lorsque je renseigne le champ base de données sur la page "Manage settings for SSO" ...Une idée?

May 3, 2010 4:33 AM
 

Didier Danse said:

Bonsoir,

Oui c'est compatible avec Sql Server 2005. Ce post a d'ailleurs été testé avec SS2005.

Par contre, je ne me souviens pas d'un tel message d'erreur. Désolé.

May 4, 2010 5:11 PM

Leave a Comment

(required)  
(optional)
(required)  
Add
L'auteur du site ne peut être tenu responsable des dommages que les informations fournies pourraient entraîner. Tout est cependant mis en oeuvre pour éviter tout désagrément.
Powered by Community Server (Non-Commercial Edition), by Telligent Systems