Configuring Form Based Authentication

Prérequis

La liste ci-dessous reprend l’ensemble des comptes qui ont été créés dans le cadre de l’implémentation.
GokanOzcifci azerty123 !

Description

URL

Centrale d’administration de la ferme de production

http://centraladmin.spdev.local:100

Portail –porte d’entrée FBA

http://portail.spdev.local:222

 

Type de serveur

Infra de Prod Infra de Test

Application Server

 

SRV-APP-01

Front-End Server

 

SRV-FE-01

Database

 

SRV-SQL-01

 

Description

Port

Port de la centrale d’administration

100

Portail –porte d’entrée FBA

222


Configuration de ASP.NET_SQL

Dans le cadre de l’installation d’une authentification FBA dans un environnement SharePoint, le compte utilisé doit détenir certaines permissions sur le serveur de base de données SQL pour fonctionner correctement. Ce compte doit appartenir aux rôles SQL suivants :

  • SQL Serveur Créateur de base de données (SQL Database Creator)
  • SQL Serveur Administrateur de base de données (SQL Security Admin)

Ce compte doit également détenir certaines permissions sur les autres serveurs de la batterie, tel que les serveurs frontaux ou les serveurs applicatifs.
La procédure ci-dessous explique comment configurer ASP.NET_SQL :

  • Connectez-vous au serveur Applicatif ou SharePoint 2010 est installé.
  • Démarrez CMD. Naviguer jusque C:\Windows\Microsoft.Net\Framework\V2.0.50727>aspnet_regsql.exe

 

  • Là l’assistant d’installation s’affichera.

 

  • On sélectionne « Configure SQL Server for application services ».

 

  • L’assistant vas nous demander le hostname de notre serveur SQL et de sélectionnez une base de donné pour l’écriture des données. Sélectionnez <default> et donnez le nom de votre serveur.

  • L’assistant commencera l’installation.

 

  • Apres l’installation cliquez sur finish.

  • Connectez-vous sur le serveur SQL et démarrez SQL Server Management Studio

 

  • Apres s’être authentifier sur le serveur SQL, veuillez bien faire attention que le serveur en soit même est configuré en mixed mode.

 

  • On retourne chez Object Explorer, on étend Security –> Logins. Clic-droit sur logins et on sélectionne “New Login…”. Username: FormGokan ||Password: Vision1T

 

  • Puis on donne l’accès à FormGokan sur la base de donnée crée par ASP.NET. Clic-droit sur la base de données -> Sécurité -> Users -> New user
    • User name : FormGokan
    • Login name : FormGokan
    • Database role Membership : db_owner

 


 

La procédure permettant de démarrer l’assistant de configuration se fait comme ceci.

  • Connectez-vous sur le serveur applicatif ou SharePoint 2010 tourne et ouvrez IIS 7

 

  • Sélectionnez votre Application Pool. On va apporter des modifications sur la Connection Strings || Providers

  • Sélectionnez Connection Strings et créez une nouvelle entrée.

Introduisez votre nom de server, la base de données, et vos credentials. Cliquez OK.

  • Maintenant on sélectionne Providers, et dans le menu on cliquez sur .NET Roles. On va créer un nouveau provider.

 

  • Insérez les valeurs dans la fenêtre qui s’affichera.

 

  • Vérifiez bien que FBARoleProvider est bien configuré avec vos credentials.

 

 

 

  • On sélectionne maintenant .NET Users et encore une fois un Add

 

  • Ajouter les valeurs dans la fenêtre qui va s’afficher et cliquez sur OK

 


 

  • Crucial! On vérifie si tout a été bien configuré au niveau de SharePoint Central D’administration.
    • Faites un explore sur la Central Administration

    • Ouvrez Web.Config avec Notepad

    • vérifiez bien si la FBAMembershipProvider et FBARoleProvider sont bien configuré :

  • Dans le Central Administration, sélectionnez Application Management, et sélectionnez Manage Web Applications. Du ribbon sélectionnez New et créez une nouvelle page avec claims based Authentication avec les valeurs suivantes.

 

  • Donnez également « des » valeurs pour la Site Collection. Ceci n’a pas d’importance pour le Titre – Description etc..

 

 

  • Apres avoir configuré notre Site Collection l’on va modifier les paramètres pour une Authentication FBA. Connectez-vous sur l’IIS de votre serveur Applicatif pour configurer votre App Pool + SharePoint Web Services + Security Token

 

    • On va ajouter une Connection String

 

 

    • Ajouter un Providers pour members and rôles

     

     

    • Configurer .NET Rôles

Ouvrez .NET Rôles de votre Application Web. Ne faites pas attention de l’erreur qui viens en disant que votre provider n’est pas Trusted. Mettez-votre FBAMembershipProvider comme default provider.

Après avoir sélectionnez votre Provider, créez 2 groups :

Configurer .NET Users

Ouvrez .NET Users de votre Application Web. Ne faites pas attention de l’erreur qui viens en disant que votre provider n’est pas Trusted. Mettez-votre FBAMembershipProvider comme default provider.

Apres avoir sélectionnez votre Provider, créez un utilisateur :

 

 


 

 

    • Verifier Authentication Form

Normalement, et je précise bien sur ce mot ; SharePoint devrais automatiquement mettre à jour votre Web App pour autoriser les connexions via Form, mais vérifions quand même.

    • Ajouter un Utilisateur dans la Site Collection

On va dans la Central D’administration -> Application Management -> Change Site Collection Administrator et sélectionnez votre utilisateur créer y’a quelque étapes auparavant.

  • Testing

On se connecte sur http://portail.spdev.local:222/ avec mes credentials d’ASP.NET et wow, une page sublime de SharePoint :

 

 

Il suffit juste de remettre dans IIS de notre Wep App les provider de .NET USERS en « I »

  • Re-testing

Avant de tout tester faites juste un IISRESET et Bingo !

 

CodePlex FBA Pack

Allez sur le site http://sharepoint2010fba.codeplex.com/ et télécharger l’application.
Puis utilisez ces commandes pout installer et activer la web part dans votre collection de site ou Application Web..

Installation du pack SharePoint 2010 FBA

  • Télécharger et extracter Sharepoint2010FBAPack.zip sur le serveur applicatif
  • Ouvrez Power Shell et naviguez jusqu’au dossier crée.
  • Exécuter la commande suivante:
    .\deploy [Site Collection]
    ex. .\deploy http://portail.spdev.local:222/
  • Pour désinstaller:
    .\undeploy [Site Collection]

STSADM.EXE -o Addsolution -filename “C:\gokan\visigo.sharepoint.formsbasedauthentication.wsp”
STSADM.EXE -o deploysolution -name visigo.sharepoint.formsbasedauthentication.wsp -immediate -allowGacDeployment -url http://portail.spdev.local:222
STSADM.EXE -o execadmsvcjobs 

 

Erreurs recontrées

 

1.Server Error in ‘/’ Application/

 

 

 

La réponse :

  • Faites bien attention que tous les WEB.CONFIG soit bien configurez
    • Serveur Applicatif (2) : Central D’Administration + Security Token

 

 

  • Serveur Frontal(3): L’application Web en questions + Security Token + SharePoint Web Services

 

 

2.Connection impossible sur la web.config via IIS

Sur l’un de mes web.config, un pointer était non destiné vers FBADB (ma nouvelle connectionstring) mais vers l’ancien LocalSqlServer.

Alors pour arranger ça, IIS à mis tout seul un « Remove ».

Ce qu’il en soit est n’est pas une mauvaise idée. Mais si la Connectionstring n’existe plus, il n’arrive pas à supprimer quelque chose qu’il n’existe pas/plus et cela implique des complications. Donc effacer cette petite ligne.

<remove name="LocalSqlServer" />

 
3.Wildcarts

Quand on cherche un utilisateur dans le FBA on ne reçoit rien « tant » que l’on n’a pas mis ses credentials au complet. Ajouter le provider FBAMembershipProvider dans le segment <PeoplePickerWildcards> du web.config de la Central D’administration..

 

 

 

 

 

 

 

Summitcloud

http://blog.summitcloud.com/2009/11/forms-based-authentication-sharepoint-2010-fb/

Blog

http://ranaictiu-technicalblog.blogspot.com/2011/01/sharepoint-2010-form-based.html

Technet

http://technet.microsoft.com/en-us/library/ee806890.aspx

Gokan Ozcifci

gokanx.wordpress.com