forms Based Authentication (FBA) konfigurálása a SharePoint 2010 programmal
a http://blogs.technet.com/b/mahesm/
a SharePoint 2010 támogatja az FBA-t, például a WSS 3.0 vagy a MOSS 2007. Ez az ASP. net egyik jellemzője, amelyet a SharePoint-ban használunk. SharePoint 2010 webes alkalmazásokat hozhat létre klasszikus alapú hitelesítéssel vagy Követelésalapú hitelesítéssel. Az FBA azonban csak a Követelésalapú hitelesítéssel létrehozott webes alkalmazásokkal konfigurálható.
mi a különbség a klasszikus módú hitelesítés és a kárigény alapú hitelesítés között?
klasszikus módú hitelesítés: az integrált windows hitelesítésre utal. Az űrlapalapú hitelesítés nem konfigurálható, ha a webalkalmazás klasszikus módú hitelesítést használ. Konvertálhat egy webes alkalmazást klasszikus módú hitelesítésről követelés alapú hitelesítésre. Ez azonban csak a PowerShell parancsokkal és annak visszafordíthatatlan folyamatával lehetséges. Részletes lépéseket tettem a webalkalmazás klasszikus módú hitelesítésről követelések alapú hitelesítésre történő átalakítására.
kárigény alapú hitelesítés: a SharePoint 2010 A Windows Identity Foundation rendszerre épül. Ez lehetővé teszi a hitelesítést a windows, valamint a nem windows alapú rendszerek. Ez azt is lehetővé teszi, hogy egyetlen URL-ben több hitelesítés is legyen.
az FBA konfigurálása a SharePoint 2010 segítségével 4 fő lépést tartalmaz. Az FBA SQL tagsági szolgáltatóval történő konfigurálásának lépései az alábbiak:
I> meglévő webes alkalmazások létrehozása vagy konvertálása igényalapú hitelesítés használatára
II> felhasználói azonosítók létrehozása az SQL Database-ben
III> Web módosítása.config file
IV> adjon engedélyeket az SQL database-ben jelenlévő felhasználóknak
Megjegyzés: Ha az FBA-t LDAP tagsági szolgáltatóval szeretné konfigurálni, akkor hivatkozhat TechNet cikk.
kérjük, olvassa el az alábbi részletes lépéseket:
I> meglévő webes alkalmazások létrehozása vagy konvertálása kárigény alapú hitelesítés használatára
Megjegyzés: – A webalkalmazást a központi adminisztrációs konzolról vagy a PowerShell-ből kell létrehozni, azonban igényeken alapuló hitelesítést kell használnia.
A. webalkalmazás létrehozása központi adminisztrációval
-
-
- nyissa meg a központi felügyeleti konzolt.
- kattintson a webalkalmazás kezelése elemre az Alkalmazáskezelés alatt.
- kattintson az Új gombra a szalagon.
- a Claims based Authentication lehetőséget választotta az oldal tetején.
- válassza ki a webalkalmazás portszámát.
- kattintson az űrlapalapú hitelesítés engedélyezése (FBA) elemre a követelések hitelesítési típusai alatt. A Windows hitelesítés alapértelmezés szerint engedélyezve van, és ha nincs szüksége windows hitelesítésre, akkor el kell távolítania a jelölőnégyzetet.
- adja hozzá a Tagsági szolgáltatót & Szerepkörkezelő neve
- a webalkalmazás létrehozása után ellenőrizze a webalkalmazás hitelesítési szolgáltatójának beállításait. Az alábbi képernyőkép van:
-
Megjegyzés:- Ha a Windows hitelesítést és az űrlapalapú hitelesítést egyetlen URL-ben szeretné használni, akkor válassza a Windows hitelesítés engedélyezése és az űrlapalapú hitelesítés engedélyezése lehetőséget.
Megjegyzés:-Csak a megértés érdekében a Tagsági szolgáltatót “SQL-MembershipProvider” – ként, a Szerepkezelőt pedig “SQL-RoleManager” – ként használom. Használhat különböző neveket, azonban meg kell emlékezni a névre, hogy hivatkozhasson rájuk web.konfigurációs fájlok. Ezek a nevek kis-és nagybetűk.
B. Mi van, ha már van egy webalkalmazás, amelyet klasszikus módú hitelesítéssel hoztak létre, vagy hogyan lehet átalakítani a webalkalmazást klasszikus módú hitelesítésről igényalapú hitelesítésre?
nem kell törölnie a webalkalmazást. Ön tudja alakítani, hogy a webes alkalmazás a klasszikus mód hitelesítés követelések alapú hitelesítés. Ezt azonban csak a PowerShell használatával lehet megtenni, és ez visszafordíthatatlan folyamat. Kövesse a PowerShell parancsokat, hogy a webes alkalmazást klasszikus módú hitelesítésről igényalapú hitelesítésre konvertálja:
$App = get-spwebapplication “URL”
$app.useclaimsauthentication = “True”
$app.Frissítés()
példa: –
$App = get-spwebapplication “http://sp1:8000”
$app.useclaimsauthentication = “True”
$app.Update()
miután a webalkalmazás igényalapú hitelesítést használ, létrehozhat egy webhelycsoportot. Most, ha hozzáfér a webalkalmazáshoz, elérheti a webhelyet a Windows hitelesítés vagy az űrlap alapú hitelesítés kiválasztásával, az alábbi képen látható módon.
válassza a windows authentication és login to site lehetőséget. Amikor bejelentkezik a jelenleg bejelentkezett hitelesítő fogják használni. Győződjön meg arról, hogy a bejelentkezett fiók rendelkezik hozzáféréssel a SharePoint webhelyhez; ellenkező esetben a hozzáférés megtagadva hibát kap.
II> konfigurálja a Tagsági szolgáltatót és a Szerepkörkezelőt.
- a SharePoint 2010 kiszolgálón nyissa meg a parancssort.
- keresse meg a C:WindowsMicrsooft elemet .NetFramework64v2.0.50727
- fuss ” aspnet_regsql.exe”. Ez megnyitja az ASP. net SQL Server telepítővarázslóját. Ezen kattintson a Tovább gombra.
- kattintson az “SQL Server konfigurálása az Alkalmazásszolgáltatásokhoz”elemre.
- adja meg az adatbázis nevét. Ha nem adja meg az adatbázis nevét, akkor létrehoz egy adatbázis-hívást aspnetdb.
- használja a membershipseeder eszközt a felhasználók létrehozásához az SQL adatbázisban. Megtalálható az eszköz és információ, hogy a codeplex.
Megjegyzés:- Az adatbázis nevét “SQL-Auth” – ként adtam meg.
III> módosítsa a webet.a Tagsági Szolgáltató és a Szerepkörkezelő konfigurációs fájlja.
3 különböző webet kell módosítanunk.konfigurációs fájlok az FBA működéséhez. Web.az FBA webes alkalmazás konfigurálása, web.a központi adminisztrációs oldal konfigurációja & Web.az STS konfigurációja.
A. Web módosítása.az FBA webes alkalmazás konfigurálása.
- csatlakozási karakterlánc hozzáadása:
<connectionStrings>
<add name= “SQLConnectionString” connectionString= ” adatforrás=SQL; integrált biztonság=SSPI;Kezdeti katalógus=SQL-Auth” />
</connectionStrings>
a csatlakozási karakterláncot a </SharePoint> után és a <rendszer előtt kell hozzáadni.web>
- tagsági Szolgáltató és Szerepkezelő hozzáadása:
<roleManager defaultProvider=” c ” enabled=”igaz” cacheRolesInCookie= “hamis”>
<szolgáltatók>
<név hozzáadása= ” c “típus=” Microsoft.SharePoint.Adminisztráció.Követelések.SPClaimsAuthRoleProvider, Microsoft.SharePoint, Verzió=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c” />
<add connectionStringName=”SQLConnectionString” applicationName=”/” description=”Stores and retrieves roles from SQL Server” name=”SQL-RoleManager” type=”System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a” />
</providers>
</roleManager>
<membership defaultProvider=”i”>
<providers>
<add name=”i” type=”Microsoft.SharePoint.Administration.Követelések.SPClaimsAuthMembershipProvider, Microsoft.SharePoint, Verzió=14.0.0.0, kultúra=semleges, PublicKeyToken=71e9bce111e9429c” />
<add connectionStringName = “SQLConnectionString”passwordAttemptWindow= “5”enablepasswordrestrieval=” false”enablePasswordReset=” false”requiresQuestionAndAnswer=” true” applicationName=”/”requiresUniqueEmail=” true”passwordFormat=” Hashed”description=” tárolja és lekéri a tagsági adatokat az SQL Server”name=” SQL-MembershipProvider”type=” rendszer.Web.Biztonságiak.SqlMembershipProvider, Rendszer.Web, Verzió=2.0.3600.0, kultúra = semleges, PublicKeyToken=b03f5f7f11d50a3a” />
</szolgáltatók>
</tagság>
</rendszer.web >
B. Web módosítása.config a központi adminisztráció webes alkalmazás.
- csatlakozási karakterlánc hozzáadása:
<connectionStrings>
<add name= “SQLConnectionString” connectionString= ” adatforrás=SQL; integrált biztonság=SSPI;Kezdeti katalógus=SQL-Auth” />
</connectionStrings>
a csatlakozási karakterláncot a </SharePoint> után és a <rendszer előtt kell hozzáadni.web>
- tagsági Szolgáltató és Szerepkezelő hozzáadása:
<roleManager defaultProvider= “AspNetWindowsTokenRoleProvider” enabled=”igaz” cacheRolesInCookie= “hamis”>
<szolgáltatók>
<add connectionStringName= “SQLConnectionString” applicationName=”/”description=” tárolja és lekérdezi szerepeket SQL Server”name=” SQL-RoleManager”type=” rendszer.Web.Biztonságiak.SqlRoleProvider, Rendszer.Web, Verzió=2.0.3600.0, kultúra = semleges, PublicKeyToken=b03f5f7f11d50a3a” />
</szolgáltatók>
</roleManager>
<membership defaultProvider= “SQL-MembershipProvider”>
<szolgáltatók>
<add connectionStringName = “SQLConnectionString”passwordAttemptWindow=” 5 ” enablepasswordrestrieval=”false” enablePasswordReset=”false” requiresQuestionAndAnswer= “true” applicationName=”/ “requiresUniqueEmail=” true “passwordFormat=” Hashed “description=” tagsági adatok tárolása és lekérése az SQL Serverről” name= “SQL-MembershipProvider” Típus= ” rendszer.Web.Biztonságiak.SqlMembershipProvider, Rendszer.Web, verzió=2.0.3600.0, kultúra = semleges, PublicKeyToken=b03f5f7f11d50a3a” />
</szolgáltatók>
</tagság>
C. Web módosítása.az STS konfigurációja. Megtalálhatja az STS webet.config from % programfiles % common filesMicrosoft Sharedweb szerver bővítmények14webszolgáltatásokbiztonságtoken
< connectionStrings>
<add name= “SQLConnectionString” connectionString= ” adatforrás=SQL; integrált biztonság=SSPI;Initial Catalog=SQL-Auth” />
</connectionStrings>
<system.web>
<roleManager defaultProvider=”c” enabled=”true” cacheRolesInCookie=”false”>
<providers>
<add name=”c” type=”Microsoft.SharePoint.Administration.Claims.SPClaimsAuthRoleProvider, Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c” />
<add connectionStringName=”SQLConnectionString” applicationName=”/” description=”Stores and retrieves roles from SQL Server” name=”SQL-RoleManager” type=”System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a” />
</providers>
</roleManager>
<membership defaultProvider=”i”>
<providers>
<add name=”i” type=”Microsoft.SharePoint.Administration.Követelések.SPClaimsAuthMembershipProvider, Microsoft.SharePoint, Verzió=14.0.0.0, kultúra=semleges, PublicKeyToken=71e9bce111e9429c” />
<add connectionStringName = “SQLConnectionString”passwordAttemptWindow= “5”enablepasswordrestrieval=” false”enablePasswordReset=” false”requiresQuestionAndAnswer=” true” applicationName=”/”requiresUniqueEmail=” true”passwordFormat=” Hashed”description=” tárolja és lekéri a tagsági adatokat az SQL Server”name=” SQL-MembershipProvider”type=” rendszer.Web.Biztonságiak.SqlMembershipProvider, Rendszer.Web, Verzió=2.0.3600.0, kultúra = semleges, PublicKeyToken=b03f5f7f11d50a3a” />
</szolgáltatók>
</tagság>
</rendszer.web>
a fentieket a <előtt kell hozzáadni/konfiguráció>
IV> engedélyeket ad az SQL database felhasználóinak.
- nyissa meg a központi felügyeleti konzolt, majd kattintson a webalkalmazások kezelése elemre az Alkalmazáskezelés alatt.
- válassza ki a webalkalmazást, majd kattintson a felhasználói házirend elemre a szalagon.
- kattintson a Felhasználó hozzáadása elemre, és válassza Az alapértelmezett zóna lehetőséget.
- most írja be a felhasználónevet, adja hozzá a felhasználót a webalkalmazáshoz a megfelelő engedély megadásával.
gyakori problémák:
ha több szolgáltatásfiókot használ a TechNet cikk szerint a kezdeti telepítéshez szükséges felügyeleti és szolgáltatási fiókok (SharePoint Server 2010), akkor előfordulhat, hogy nem tudja megoldani a felhasználóneveket, vagy nem tudja hozzáadni a felhasználókat a webalkalmazáshoz. Ha 3 különböző fiókot használ (Farm Administrator account, Application pool account for web application and service application account), akkor meg kell győződnie arról, hogy hozzáfér az SQL tagsági adatbázishoz (SQL-Auth).
fontos:
mi történik az FBA-val, amikor a WSS 3.0 / MOSS 2007-et SharePoint 2010-re frissítjük?
a SharePoint 2010-re történő frissítés előtt el kell távolítania a weben végrehajtott módosításokat.konfigurációs fájl. Amint a frissítési folyamat befejeződik, az összes webes alkalmazás frissítésre kerül; ezek azonban klasszikus módú hitelesítést fognak használni. Ezeket a webes alkalmazásokat klasszikus módú hitelesítésről igényalapú hitelesítésre konvertálhatja.
3rd party eszközök: FBA Manager SP2010 (Forms alapú hitelesítés) Dev-IT