How to setup Forms Based Authentication (FBA)
dit bericht is aangepast van een blog, dat ik beschouw als de hoogste autoriteit voor FBA – configuratie, geschreven door Chris Coulson,
lees de hoogste autoriteit hier voor 2016 en hier voor 2013
2010-Zie de stappen van 2013, zorg ervoor dat de 2010 web app gebruik maakt van claims gebaseerde authenticatie, daarna is alles hetzelfde, je kunt geen klassieke webapplicatie gebruiken.
opmerking: met deze methode hoeft u het web niet te wijzigen.config van centrale admin of van een van de webapplicaties, nu of in de toekomst. U hoeft alleen de machine aan te passen.config en het web.config van de SecurityTokenServiceApplication webservices.
So; dit is de voorkeursmethode. Er zijn andere methoden die er zijn dat u wijzigen central admin ‘ s web.config, het web.config van elke webtoepassing en het web van de beveiligingstokenservice.config; maar, wie wil gaan al die moeite. En moeten herhalen voor elke nieuwe webapplicatie, niet minder. Ik ben lui en ik zou liever de FBA zijn een mogelijkheid op elke toekomstige en huidige webapplicatie. Ik krijg ook echt schetsmatig als ik denk over het wijzigen van de centrale admin web.config; dus, dat is de reden waarom de methode die in detail wordt uiteengezet, op Chris Coulson ‘ s blog, is optimaal.
Hi-level steps
- maak de database aan door aspnet_regsql uit te voeren.exe gevonden op c:\windows\Microsoft.NET\Framework64\v4.0.30319\
- Maak back-ups van alle bestanden die u wilt wijzigen, bijvoorbeeld de machine.config, het web.config van de Securitytokenserviceapplicatie
- maak de bewerkingen, met veel aandacht voor de secties waarin u zich bevindt. Zorg ervoor dat u bij het aanpassen van de sectie lidmaatschapsprovider en de sectie rolprovider de sectie profielprovider
- niet wijzigt de Auth-Provider van de webtoepassing
- bijwerken de juiste fbapack-oplossing installeert voor eenvoudig gebruikersbeheer
- 2016 – https://www.visigo.com/products/sharepoint-fba-pack/download/
- 2013 – Ga naar de visigo – site voor de laatste stabiele versie van deze gratis download
- 2010-ga naar de visigo-site voor de laatste stabiele versie van deze gratis download
- Login met windows creds en voeg een FBA-gebruiker, dan testen dat de verschillende menu ‘ s werk, en dat u kunt inloggen met de FBA-gebruiker
meer gedetailleerde stappen
maak de database door het uitvoeren van aspnet_regsql.exe
- inloggen op uw SharePoint-Server
- Navigeer naar c:\windows\Microsoft.NET\Framework64\v4.0.30319 \
- voer aspnet_reqsql uit.exe als beheerder
- na de ASP.NET SQL setup wizard opent, lees de info en klik vervolgens op Volgende, als een baas!
- op de Selecteer een Setup optie scherm, gebruik maken van de standaard selectie van “Configure SQL Server for application services” en klik op Volgende, nogmaals klik het als een baas!
- voer op het scherm “Selecteer de Server en Database” de Alias voor uw SQL server in, of de naam van de SQL Server als god verhoede dat u geen alias hebt gebruikt toen u de farm instelde, en
- accepteert de <standaard> databasenaam. Als u de naam van de database wijzigt, zorg er dan voor dat u de naam in de ingang van de machine bijwerkt.config verbinding string in de komende stappen. Dit bericht gaat ervan uit dat u de <standaard> naam hebt achtergelaten zoals weergegeven in de volgende schermafbeelding. Als u de standaardnaam verlaat, wordt een database met de naam aspnetdb gemaakt.
- klik op Volgende
merk op: het voorbeeld hierboven liet de standaard naam achter en gebruikte de SQL Alias < – die laatste zin werd gesproken in ” SharePoint Nerd “en vertaald betekent het”Ik heb een SQL Alias gebruikt en de database is portable”
na het klikken op Volgende verschijnt het volgende scherm en je moet op Volgende klikken als je akkoord bent met de info. Het kan geen kwaad om het te lezen, want als er een typefout is dit uw kans om het te veranderen.
klik vervolgens op het volgende scherm op Voltooien.
- inloggen op uw SQL server
- Open de SQL Server Management Studio (SSMS.exe) en geef uw SharePoint Farm-account, het serviceaccount waarop de groep gedeelde services en zoekapplicaties wordt uitgevoerd, en de webinhoud-of serviceaccount(s) db_owner op de aspnetdb.
Noot: als u een fout ontvangt over het feit dat u geen verbinding kunt maken met het SQL server-exemplaar, moet u ervoor zorgen dat de services voor SQL server en SQL server agent worden gestart. Maak je geen zorgen over de SQL Server Browser
- klik op de map beveiliging om deze uit te vouwen
- klik op de map logins om deze uit te vouwen
- Klik met de rechtermuisknop op de gebruikersaccount(s) waarop de groep beveiligingstoken service-toepassingen wordt uitgevoerd (u kunt dit bepalen vanuit inetmgr.exe op uw SharePoint-server)
- klik op Eigenschappen
- klik op Gebruikerstoewijzing
- Selecteer de aspnetdb in de gebruikers die aan dit aanmeldvenster zijn toegewezen
- wijs de dbo toe in de Database rollidmaatschap voor: welk account u ook gebruikt
- klik op Ok
Maak back-ups van alle bestanden die u wilt wijzigen, bijvoorbeeld de machine.config, het web.configuratie van de Securitytokenserviceapplicatie
- Navigeer naar C:\Windows\Microsoft.Net\Framework64\v4.0.30319\Config
- Maak een back-up van de machine.config en sla het op met een .bak extension
- Bewerk De machine.config
- Scroll naar de Verbindingsstrings <>
de sectie verbindingsreeksen ziet eruit als de afbeelding hierboven
- voeg de volgende code toe
1
|
<toevoegen connectionString=”Server=SharePointSQL;Database=aspnetdb;Integrated Security=true” name=”FBADB” />
|
Opmerking: mogelijk moet u de naam van de SQL Server wijzigen vanuit de Alias die ik gebruikte. Je hebt misschien geen alias op zijn plaats en je kunt dat bepalen door te kijken naar cliconfg.executable. Zorg ervoor dat de regel code die luidt “Server=SharePointSQL….is bijgewerkt voor wat uw servernaam is, of bij voorkeur uw alias (bijvoorbeeld” Server=SPAlias….of ” Server=Mdcp15sql … or whatever)
nadat de verbindingsreeksen zijn bijgewerkt zal het er ongeveer zo uitzien:
Zoek de sectie <lidmaatschap> < providers>, het ziet er zo uit
opmerking: U voegt een sectie toe aan het <lidmaatschap> <providers> en aan de < rol> <Providers> niet de profielaanbieders
zorg ervoor dat u de juiste secties bijwerkt
- voeg dit toe aan de Lidmaatschapsproviders
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
<add name=”FBAMembershipProvider”
type=”Systeem.Web.Veiligheid.Sql Lidschipprovider, Systeem.Web, Versie = 4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”
connectionStringName=”FBADB”
enablePasswordRetrieval=”false”
enablePasswordReset=”true”
requiresQuestionAndAnswer=”false”
applicationName=”/”
requiresUniqueEmail=”true”
passwordFormat=”Hash”
maxInvalidPasswordAttempts=”5″
minRequiredPasswordLength=”7″
minRequiredNonalphanumericCharacters=”1″
passwordAttemptWindow=”10″
passwordStrengthRegularExpression=”” />
|
- voeg dit nu toe aan de Rolaanbieders
1
2
|
<add name=”FBARoleProvider” connectionStringName=”FBADB” applicationName=”/”
type=”Systeem.Web.Veiligheid.SqlRoleProvider, Systeem.Web, Versie = 4.0.0.0, Culture=neutraal, Publiceytoken = b03f5f7f11d50a3a” />
|
het eindproduct moet er zo uitzien
merk op hoe de bewerkingen niet werden gemaakt aan de Profielaanbieders. Kijk uit voor dat, het is gemakkelijk te missen.
Open nu de Security Token Service App web.config
- Open IIS-beheer (inetmgr.exe)
- Expand sites
- Expand SharePoint web services
- klik met de rechtermuisknop op Securitytokenserviceapplicatie
- klik op Explore
- Maak een kopie van het web.config als een back-up en sla het op met een .bak-extensie
- voeg het volgende rechts boven de allerlaatste afsluitende configuratietag </configuratie toe>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
<system.web>
<lidmaatschap>
<leveranciers>
<voeg name=”FBAMembershipProvider”
type=”System toe.Web.Veiligheid.Sql Lidschipprovider, Systeem.Web, Versie = 4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”
connectionStringName=”FBADB”
enablePasswordRetrieval=”false”
enablePasswordReset=”true”
requiresQuestionAndAnswer=”false”
applicationName=”/”
requiresUniqueEmail=”true”
passwordFormat=”Hash”
maxInvalidPasswordAttempts=”5″
minRequiredPasswordLength=”7″
minRequiredNonalphanumericCharacters=”1″
passwordAttemptWindow=”10″
passwordStrengthRegularExpression=”” />
</providers>
</lidmaatschap>
<roleManager>
<aanbieders>
<add name=”FBARoleProvider” connectionStringName=”FBADB” applicationName=”/”
type=”Systeem.Web.Veiligheid.SqlRoleProvider, Systeem.Web, Version = 4.0.0.0, Culture = neutraal, PublicKeyToken = b03f5f7f11d50a3a” />
</leveranciers>
</roleManager>
</systeem.web>
|
als je klaar bent moet het er zo uitzien, alleen zal het niet de gele vlek op hebben.
Ok, nu je klaar bent om SharePoint te laten werken met deze wijzigingen, zorg ervoor dat je ze op alle servers in de farm maakt als je meer dan één SharePoint server hebt. Niet nodig op SQL. Open de centrale administratie om er zeker van te zijn dat je je boerderij niet hebt vernietigd. Open een paar site collecties die in de webapplicatie die de FBA toegepast zal krijgen.
u kunt IIS resetten voor een goede maat, maar het zou echt niet nodig moeten zijn, omdat wijzigingen in deze bestanden ervoor zorgen dat dit automatisch gebeurt, of in ieder geval zou het moeten.
Update de Auth-Provider van de webtoepassing
- Open Central admin en navigeer naar webtoepassingen beheren
- als u de webtoepassing niet uitbreidt naar een andere zone en gebruik maakt van dual authentication, selecteert u de webtoepassing en klikt u op authenticatieproviders van het lint. Breid anders de webtoepassing uit en stel vervolgens op de uitgebreide zone de FBA in.
om de FBA in te stellen voert u het volgende uit:
- Ga naar webapplicaties beheren
- Selecteer de webapplicatie waar u formulieren wilt configureren gebaseerde authenticatie
- klik op Authenticatieproviders
- Selecteer de Zone die u wilt configureren, in dit voorbeeld zetten we dubbele authenticatie in (Windows Integrated en FBA)
zodra het zoneconfiguratiescherm wordt geopend,
- scroll naar beneden naar de sectie met betrekking tot FBA en voeg de namen toe die u hebt gebruikt in de secties lidmaatschapsprovider en rolprovider van de .wijzigingen in het configuratiebestand. Als u de namen van de leden-en Rolproviders niet hebt gewijzigd in de codeonderdelen die <lezen, voeg dan name=”FBAMembershipProvider”toe….and <add name=”FBARoleProvider….. dan kun je deze namen gebruiken, anders gebruik je ook wat je veranderd hebt.
- Je gaat naar het vakje met de naam Inschakelen op Formulieren Gebaseerde Verificatie (FBA) en dan is de input van de namen die u gebruikt
- Klik op Opslaan om de wijzigingen
Nu, als u probeert te openen van een web applicatie of site collectie, je krijgt het standaard Teken in de prompt voor het FBA, het zal u toestaan om te kiezen tussen Geïntegreerde Windows-of Forms Based Authentication
U nog steeds niet kan gebruiken FBA, zelfs als u hem probeert te gebruiken, want er zijn geen FBA gebruikers in de aspnetdb op dit moment. Met het FBA-pakket kunt u gebruikers toevoegen aan de database. De 2013 post op Chris Coulson ‘ s blog voor 2013 SharePoint legt een andere methode.
FBA Pack oplossing
met de FBA Pack oplossing kunt u gebruikers toevoegen en beheren
de oplossing downloaden en implementeren op uw SharePoint Server. Het wordt geleverd met een echt geweldig deployment script dat u toelaat om een webapplicatie of de hele boerderij te richten.
nadat u de oplossing hebt opgeslagen, in c:\ implementeer bijvoorbeeld, open dan een administratieve SharePoint management shell en voer deze uit zoals hieronder getoond, als u wilt dat deze wordt ingezet voor de hele farm
Als u het wilt gebruiken voor een specifieke webtoepassing, typt u .\deploy.ps1 niet in .\deploy.ps1 http://urlToThatSpecificWebApplication.Domain.com waar domain.com is uw domein en top level domain achtervoegsel (bijvoorbeeld sharepoint.lokaal, springfield.lokaal, bdbsa.org, ssa.gov of spt.lokaal, of wat dan ook)