Configurați autentificarea bazată pe formulare (FBA) cu SharePoint 2010
preluată din http://blogs.technet.com/b/mahesm/
SharePoint 2010 acceptă FBA, cum ar fi WSS 3.0 sau MOSS 2007. Este o caracteristică a ASP. net pe care o folosim cu SharePoint. SharePoint 2010 puteți crea aplicații web utilizând autentificarea clasică bazată pe revendicări sau autentificarea bazată pe revendicări. Cu toate acestea, FBA poate fi configurat numai cu aplicații web create folosind autentificarea bazată pe revendicări.
care sunt diferențele dintre autentificarea în modul clasic și autentificarea bazată pe revendicări?
autentificare în modul clasic: se referă la autentificarea Windows integrată. Nu puteți configura autentificarea bazată pe formulare dacă aplicația web utilizează autentificarea în modul clasic. Puteți converti o aplicație web de la autentificarea în modul clasic la autentificarea bazată pe revendicări. Cu toate acestea, acest lucru se poate face numai folosind comenzile PowerShell și este un proces ireversibil. Am pași detaliați pentru a converti aplicația web de la autentificarea în modul clasic la autentificarea bazată pe revendicări.
autentificare bazată pe revendicări: SharePoint 2010 este construit pe Windows Identity Foundation. Acesta permite autentificarea de la windows, precum și sistemele bazate pe non-windows. Aceasta oferă, de asemenea, capacitatea de a avea mai multe autentificări într-o singură adresă URL.
Configurarea FBA cu SharePoint 2010 implică 4 pași majori. Pașii pentru a configura FBA cu furnizorul de membru SQL sunt mai jos:
i> creați sau convertiți aplicații web existente pentru a utiliza autentificarea bazată pe revendicări
II> creați ID-uri de utilizator în baza de date SQL
III > modificați web.fișier de configurare
IV> Acordați permisiuni utilizatorilor prezenți în baza de date SQL
Notă: Dacă doriți să configurați FBA cu furnizorul de membru LDAP, atunci puteți consulta articolul TechNet.
vă rugăm să găsiți pașii detaliați de mai jos:
i> creați sau convertiți aplicații web existente pentru a utiliza autentificarea bazată pe revendicări
notă: – Aplicația Web trebuie creată din consola de administrare centrală sau PowerShell, cu toate acestea ar trebui să utilizeze autentificarea bazată pe revendicări.
A. crearea aplicației web utilizând administrația centrală
-
-
- deschideți consola centrală de administrare.
- Faceți clic pe Gestionare aplicație Web sub gestionarea aplicațiilor.
- Faceți clic pe nou pe Panglică.
- a ales Autentificarea bazată pe revendicări din partea de sus a paginii.
- alegeți portul nr pentru aplicația web.
- Faceți clic pe Enable forms based Authentication (FBA) sub revendicări tipuri de autentificare. Autentificarea Windows este activată în mod implicit și dacă nu aveți nevoie de autentificare windows, atunci trebuie să eliminați caseta de selectare.
- adăugați furnizorul de membru & numele managerului de roluri
- de îndată ce aplicația web a fost creată, verificați setările furnizorului de autentificare pentru aplicația web. Am captura de ecran de mai jos:
-
notă:- Dacă doriți să utilizați autentificarea Windows și autentificarea bazată pe formulare într-o singură adresă URL, atunci trebuie să selectați activați autentificarea Windows și activați Autentificarea bazată pe formulare.
Notă:-Doar pentru înțelegere, folosesc furnizorul de membru ca „SQL-MembershipProvider” și managerul de roluri ca „SQL-RoleManager”. Puteți utiliza nume diferite, cu toate acestea trebuie să vă amintiți numele, astfel încât să le puteți referi în web.fișiere de configurare. Aceste nume sunt sensibile la majuscule.
B. Ce se întâmplă dacă aveți deja o aplicație Web creată folosind autentificarea în modul clasic sau cum să convertiți aplicația Web din autentificarea în modul clasic în Autentificarea bazată pe revendicări?
nu trebuie să ștergeți acea aplicație web. Puteți converti acea aplicație web de la autentificarea în modul clasic la autentificarea bazată pe revendicări. Cu toate acestea, acest lucru se poate face numai folosind PowerShell și este un proces ireversibil. Urmați comenzile PowerShell pentru a converti aplicația web de la autentificarea în modul clasic la autentificarea bazată pe revendicări:
$App = get-spwebapplication „URL”
$app.useclaimsauthentication =” adevărat ”
$app.Actualizare()
exemplu:-
$App = get-spwebapplication „http://sp1:8000”
$aplicație.useclaimsauthentication =” adevărat ”
$app.Actualizare()
după ce aplicația web utilizează Autentificarea bazată pe revendicări, puteți crea o colecție de site-uri. Acum, dacă accesați aplicația web, puteți accesa site-ul alegând autentificarea Windows sau autentificarea bazată pe formulare, așa cum se arată în imaginea de mai jos.
alegeți autentificarea windows și conectați-vă la site. Când vă conectați, vor fi utilizate acreditările dvs. conectate în prezent. Asigurați-vă că contul cu care sunteți conectat are acces la site-ul SharePoint; în caz contrar, veți primi acces refuzat eroare.
II > configurați furnizorul de membru și managerul de roluri.
- pe serverul SharePoint 2010 deschideți promptul de comandă.
- navigați la C:WindowsMicrsooft .NetFramework64v2.0.50727
- rulați ” aspnet_regsql.exe”. Aceasta va deschide asp. net SQL Server Setup wizard. Pe acest clic pe următorul.
- Faceți clic pe”configurați SQL Server pentru Servicii de aplicații”.
- specificați numele bazei de date. Dacă nu specificați numele bazei de date, atunci se va crea un apel de baze de date aspnetdb.
- utilizați instrumentul membershipseeder pentru a crea utilizatorii în baza de date SQL. Puteți găsi instrumentul și informații cu privire la faptul că de la codeplex.
Notă:- Am specificat numele bazei de date ca „SQL-Auth”.
III > modificați web-ul.fișier de configurare pentru Furnizorul de membru și manager de rol.
avem nevoie de a modifica 3 web diferite.fișiere de configurare pentru ca FBA să funcționeze. Web.configurarea aplicației web FBA, web.configurarea site-ului Administrației Centrale & Web.config de STS.
A. modificare web.configurarea aplicației web FBA.
- adăugați șir de conexiune:
<corzi de conexiune>
<add name= „sqlconnectionstring” connectionString= ” sursa de date = SQL; securitate integrată=SSPI;Catalog inițial=SQL-Auth” />
</connectionStrings >
șir de conexiune trebuie să fie adăugate după</SharePoint >și înainte de < sistem.web>
- adăugați furnizor de membru și manager de rol:
<roleManager defaultProvider= ” c ” activat=” adevărat „cacheRolesInCookie= „fals”>
<furnizori>
<adăugați nume=” c”tip=” Microsoft.SharePoint.Administrație.Revendicări.SPClaimsAuthRoleProvider, Microsoft.SharePoint, Versiunea=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.Revendicări.SPClaimsAuthMembershipProvider, Microsoft.SharePoint, Versiune = 14.0.0.0, Cultură = neutru, PublicKeyToken = 71e9bce111e9429c” />
<add connectionStringName=” SQLConnectionString”passwordAttemptWindow=” 5″enablePasswordRetrieval=” false”enablepasswordreset=” false”requiresQuestionAndAnswer=” true” applicationName=”/”requiresUniqueEmail=” true”passwordFormat=” Hashed”description=” stochează și preia datele de membru de la SQL Server”name=” SQL-MembershipProvider”Type=” System.Web.Securitatea.SqlMembershipProvider, Sistem.Web, Versiune=2.0.3600.0, cultura = neutru, PublicKeyToken = b03f5f7f11d50a3a” />
</furnizori>
</calitatea de membru>
</sistem.web>
B. modificare web.configurarea aplicației web a Administrației Centrale.
- adăugați șir de conexiune:
<corzi de conexiune>
<add name= „sqlconnectionstring” connectionString= ” sursa de date = SQL; securitate integrată=SSPI;Catalog inițial=SQL-Auth” />
</connectionStrings >
șir de conexiune trebuie să fie adăugate după</SharePoint >și înainte de < sistem.web>
- adăugați furnizor de membru și manager de rol:
<roleManager defaultProvider=”AspNetWindowsTokenRoleProvider” enabled = „true” cacheRolesInCookie= „false”>
<furnizori>
<adăugați connectionStringName= „sqlconnectionstring” applicationName=” / ” description=”stochează și preia rolurile din SQL Server” Name=”SQL-RoleManager” Type = ” System.Web.Securitatea.SqlRoleProvider, Sistem.Web, Versiune=2.0.3600.0, cultura = neutru, PublicKeyToken = b03f5f7f11d50a3a” />
</furnizori>
</roleManager>
<calitatea de membru defaultProvider=”SQL-MembershipProvider”>
<furnizori>
<add connectionStringName=” SQLConnectionString „passwordAttemptWindow=” 5 ” enablePasswordRetrieval=” false „enablePasswordReset =” false ” requiresQuestionAndAnswer=” true ” applicationName=” / ” requiresUniqueEmail=” true ” passwordFormat=” Hashed „description=” stochează și preia datele de membru de la SQL Server” nume=” SQL-MembershipProvider”Tip=” Sistem.Web.Securitatea.SqlMembershipProvider, Sistem.Web, Versiune=2.0.3600.0, Cultură = neutru, PublicKeyToken = b03f5f7f11d50a3a” />
</furnizori>
</membru>
C. modificare web.config de STS. Puteți localiza web-ul STS.config de la % programfiles % fișiere comunemicrosoft Sharedweb server extensions14WebServicesSecurityToken
<connectionStrings>
<add name= „sqlconnectionstring” connectionString= ” sursa de date = SQL; securitate integrată=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.Revendicări.SPClaimsAuthMembershipProvider, Microsoft.SharePoint, Versiune = 14.0.0.0, Cultură = neutru, PublicKeyToken = 71e9bce111e9429c” />
<add connectionStringName=” SQLConnectionString”passwordAttemptWindow=” 5″enablePasswordRetrieval=” false”enablepasswordreset=” false”requiresQuestionAndAnswer=” true” applicationName=”/”requiresUniqueEmail=” true”passwordFormat=” Hashed”description=” stochează și preia datele de membru de la SQL Server”name=” SQL-MembershipProvider”Type=” System.Web.Securitatea.SqlMembershipProvider, Sistem.Web, Versiune=2.0.3600.0, cultura = neutru, PublicKeyToken = b03f5f7f11d50a3a” />
</furnizori>
</calitatea de membru>
</sistem.web>
de mai sus trebuie să fie adăugate înainte de </configurare>
IV> Acordați permisiuni utilizatorilor din Baza de date SQL.
- accesați consola de administrare centrală și faceți clic pe Gestionare aplicații web sub gestionarea aplicațiilor.
- Selectați aplicația web și faceți clic pe politica utilizatorului pe panglică.
- Faceți clic pe Adăugare utilizator și selectați zona implicită.
- acum tastați numele de utilizator, adăugați utilizatorul la aplicația web definind permisiunea corespunzătoare.
probleme comune:
dacă utilizați mai multe conturi de servicii conform Articolului TechNet conturi Administrative și de servicii necesare pentru implementarea inițială (SharePoint Server 2010), este posibil să nu puteți rezolva numele de utilizator sau să adăugați utilizatorii la aplicația web. Dacă utilizați 3 conturi diferite (contul de administrator al fermei, contul pool de aplicații pentru aplicația web și contul de aplicații de servicii), atunci trebuie să vă asigurați că aveți acces la baza de date SQL membership (SQL-Auth).
Important:
ce se întâmplă cu FBA când actualizăm WSS 3.0 / MOSS 2007 la SharePoint 2010?
înainte de a face upgrade la SharePoint 2010, trebuie să eliminați modificările pe care le-ați făcut pe web.fișier de configurare. De îndată ce procesul de modernizare se termină, toate aplicațiile web vor fi actualizate; cu toate acestea, acestea vor folosi autentificarea în modul clasic. Puteți converti aceste aplicații web de la autentificarea în modul clasic la autentificarea bazată pe revendicări.
instrumente 3rd party: FBA manager SP2010 (formulare bazate pe Autentificare) Dev-IT