How to setup Forms Based Authentication (FBA)
this post is adapted from a blog, that I consider the supreme authority for FBA configuration, written by Chris Coulson,
Read the supreme authority here for 2016 and here for 2013
2010 – See the 2013 steps, make sure the 2010 web app uses claims based authentication, then after that kaikki on sama, et voi käyttää klassista web-sovellusta.
huomaa: tällä menetelmällä ei tarvitse muokata verkkoa.config keskus admin tai minkä tahansa web-sovellusten, nykyisen tai tulevan. Sinun tarvitsee vain muokata konetta.config ja web.config of SecurityTokenServiceApplication Web services.
So; tämä on suositeltava menetelmä. On olemassa muita menetelmiä siellä, että olet muokata Keski admin web.config, web.config kunkin web-sovelluksen, ja security token service sovellus web.config; mutta, kuka haluaa mennä kaikki tämä vaiva. Ja täytyy toistaa jokaisen uuden web-sovellus, ei vähemmän. Olen laiska ja haluaisin mieluummin, että FBA olisi mahdollisuus jokaisessa tulevaisuudessa ja nykyinen web-sovellus. Saan myös todella summittainen, kun ajattelen muokkaamalla keskeinen admin web.config; niin, siksi menetelmä, joka on kirjoitettu yksityiskohtaisesti, Chris Coulson blogi, on optimaalinen.
Hi-tason vaiheet
- Luo tietokanta ajamalla aspnet_regsql.exe löytyy osoitteesta c:\windows\Microsoft.NET\Framework64\v4.0.30319\
- tee varmuuskopiot kaikista tiedostoista, joita olet muokkaamassa, esim.koneesta.config, web.securitytokenserviceapplication
- tee muokkaukset kiinnittäen erityistä huomiota niihin osioihin, joissa olet. Varmista jäsenyyden tarjoaja-osiota ja roolin tarjoaja-osiota muokattaessa, että et muokkaa Profiilin tarjoaja-osiota
- Päivitä verkkosovelluksen Auth-tarjoaja
- asenna sopiva fbapack-ratkaisu käyttäjien hallinnan helpottamiseksi
- 2016 – https://www.visigo.com/products/sharepoint-fba-pack/download/
- 2013 – siirry visigon sivustolle saadaksesi uusimman vakaan version tästä ilmaisesta latauksesta
- 2010-siirry visigon sivustolle saadaksesi uusimman vakaan version tästä ilmaisesta latauksesta
- Kirjaudu windows creds ja lisää FBA käyttäjä, sitten testata, että eri valikon työ, ja että voit kirjautua FBA-käyttäjällä
tarkemmat vaiheet
Luo tietokanta ajamalla aspnet_regsql.exe
- Kirjaudu SharePoint-palvelimelle
- Siirry c:\windows\Microsoft.NET\Framework64\v4.0.30319\
- Suorita aspnet_reqsql.exe hallinnoijana
- jälkeen ASP.NET SQL setup wizard avautuu, Lue tiedot ja valitse sitten seuraava, kuten pomo!
- valitse asetusvaihtoehto-näytössä, käytä oletusvalintaa ”Configure SQL Server for application services” ja valitse Seuraava, jälleen klikkaa sitä kuin pomo!
- Kirjoita” Valitse palvelin ja tietokanta ” – näytölle Alias SQL server-palvelimellesi tai SQL Server-nimi, jos Jumala varjelkoon sinua käyttämästä salanimeä, kun perustat maatilan, ja
- hyväksy <oletus> tietokannan nimi. Jos vaihdat tietokannan nimeä, varmista, että päivität nimen koneeseen tullessa.config-yhteysmerkkijono tulevissa vaiheissa. Tässä viestissä oletetaan, että jätit <oletus> nimen seuraavan ruutukuvan mukaisesti. Oletusnimen poistuminen luo tietokannan nimeltä aspnetdb.
- klikkaa seuraavaksi
Huomautus: yllä oleva esimerkki jätti oletusnimen ja käytti SQL Alias <- että viimeinen lause oli puhuttu ”SharePoint nörtti” ja käännetty se tarkoittaa ”käytin SQL Alias ja tietokanta on kannettava”
kun napsautat Seuraava, seuraava näyttö ilmestyy ja sinun tulee klikata Seuraava, Jos olet OK info. Se ei haittaa lukea sitä, koska jos on kirjoitusvirhe tämä on mahdollisuus muuttaa sitä.
sitten, seuraavalla näytöllä valitse Valmis.
- Kirjaudu SQL server
- avaa SQL Server Management Studio (SSMS.exe) ja anna SharePoint Farm-tili, jaettujen palvelujen ja hakusovellussarjan ylläpitävä palvelutilisi sekä verkkosisällön tai sivuston sovellussarjan palvelutili(t) db_owner aspnetdb: ssä.
Huom.: jos havaitset jonkin SQL server-instanssin yhteyden puuttumisen, varmista, että SQL server-ja SQL server agent-palvelut on käynnistetty. Älä huoli SQL Server-selaimesta
- Napsauta tietoturvakansiota laajentaaksesi sitä
- Napsauta kirjautumiskansiota laajentaaksesi sitä
- napsauta hiiren kakkospainikkeella käyttäjätiliä(t), joka käyttää security token service-sovellussarjaa (voit määrittää tämän inetmgr: stä.exe SharePoint-palvelimellasi)
- valitse Ominaisuudet
- valitse Käyttäjän Mapping
- valitse aspnetdb käyttäjistä, jotka on yhdistetty tähän kirjautumisikkunaan
- Määritä DBO Tietokantaroolijäsenyyteen: sen mukaan, kumpi tili on käytössä
- valitse Ok
tee varmuuskopiot kaikista tiedostoista, joita olet muokkaamassa, esim.koneesta.config, web.securitytokenserviceapplication
- Navigoi kohteeseen C:\Windows\Microsoft.Net\Framework64\v4.0.30319\Config
- ota koneesta varmuuskopio.config ja tallenna se .bak-laajennus
- muokkaa konetta.config
- Selaa < ConnectionStrings>
yhteysmerkkijonot-osio näyttää yllä olevan kuvan
- lisää siihen seuraava koodi
1
|
<add connectionString= ”Server=SharePointSQL; Database=aspnetdb; Integrated Security=true ”name= ”FBADB” />
|
Huomautus: saatat joutua muokkaamaan SQL Serverin nimeä käyttämästäni Peitenimestä. Sinulla ei ehkä ole peitenimeä ja voit määrittää sen katsomalla cliconfg: tä.exe. Varmista, että rivi koodia, joka lukee ”Server=SharePointSQL….is päivitetty mihin tahansa palvelinnimeesi tai mieluiten peitenimeesi (esim.” Server=SPAlias….or ” Server=MDCP15SQL… or whatever)
kun yhteysmerkkijonot on päivitetty, se näyttää jokseenkin tältä:
Etsi <jäsenyys> < tarjoajat> osio, se näyttää tältä
Huomautus: <jäsenyyden> <tarjoajat> ja < roolin> <tarjoajat> ei Profiilin tarjoajat
varmista, että päivität oikeat osiot
- Lisää tämä Jäsentarjoajiin
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
<add name=” FBAMembershipProvider”
type = ” System.Web.Security.SqlMembershipProvider, Järjestelmä.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”
connectionStringName=”FBADB”
enablePasswordRetrieval=”false”
enablePasswordReset=”True”
requiresQuestionAndAnswer=”false”
hakemusnimi=”/”
requiresUniqueEmail= ”true”
passwordFormat = ”Hashed”
maxInvalidPasswordAttempts=”5″
minitarvittu passwordth=”7″
vähimmäisvaatimuksetnonalfanumeriset kartat=”1″
passwordAttemptWindow=”10″
passwordstrength regularexpression=”” />
|
- Lisää tämä nyt roolin tarjoajiin
1
2
|
<add name=” FBARoleProvider ”connectionStringName=” FBADB ” applicationName=”/”
type= ” järjestelmä.Web.Security.SqlRoleProvider, Järjestelmä.Web, Version=4.0.0.0, Culture=neutraali, PublicKeyToken=b03f5f7f11d50a3a” />
|
valmiin tuotteen pitäisi näyttää tältä
huomaa, miten muokkauksia ei tehty Profiilin tarjoajille. Varo sitä, se on helppo missata.
avaa nyt Security Token-palvelusovellus web.config
- Open IIS manager (inetmgr.exe)
- Expand sites
- Expand SharePoint web services
- right click on SecurityTokenServiceApplication
- click Explore
- Take a copy of the web.config varmuuskopiona ja tallentaa sen .bak-laajennus
- lisää seuraava aivan viimeisen päättyvän kokoonpanon tagin < / configuration yläpuolelle>
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>
<jäsenyys>
<palveluntarjoajat>
<add name=” FBAMembershipProvider”
type = ” System.Web.Security.SqlMembershipProvider, Järjestelmä.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”
connectionStringName=”FBADB”
enablePasswordRetrieval=”false”
enablePasswordReset=”True”
requiresQuestionAndAnswer=”false”
hakemusnimi=”/”
requiresUniqueEmail= ”true”
passwordFormat = ”Hashed”
maxInvalidPasswordAttempts=”5″
minitarvittu passwordth=”7″
vähimmäisvaatimuksetnonalfanumeriset kartat=”1″
passwordAttemptWindow=”10″
passwordstrength regularexpression=”” />
< / tarjoajat>
</jäsenyys>
<roleManager>
<palveluntarjoajat>
<add name=” FBARoleProvider ”connectionStringName=” FBADB ” applicationName=”/”
type= ” järjestelmä.Web.Security.SqlRoleProvider, Järjestelmä.Web, Version=4.0.0.0, Culture = neutraali, PublicKeyToken=b03f5f7f11d50a3a” />
</palveluntarjoajat>
</roleManager>
</järjestelmä.web>
|
kun olet valmis, sen pitäisi näyttää tältä, mutta siinä ei ole keltaista tahraa.
Ok, nyt olet valmis saamaan SharePoint toimimaan näillä muutoksilla, varmista, että teet ne kaikilla maatilan palvelimilla, jos sinulla on useampi kuin yksi SharePoint-palvelin. Ei tarvita SQL. Avaa keskushallinto varmistaaksesi, ettet ole tuhonnut maatilaasi. Avaa muutamia sivuston kokoelmia, jotka ovat web-sovellus, joka saa FBA sovellettu.
voit nollata IIS: n hyvällä mittarilla, mutta sitä ei todellakaan pitäisi tarvita, koska muutokset näihin tiedostoihin aiheuttavat sen tapahtuvan automaattisesti, tai ainakin pitäisi.
Päivitä verkkosovelluksen Auth-tarjoaja
- avaa Keskushallinta ja siirry hallinnoimaan verkkosovelluksia
- jos verkkosovellusta ei laajenneta toiselle vyöhykkeelle ja käytä kaksoishyväksyntää, valitse verkkosovellus ja napsauta authentication providers nauhasta. Muu, laajentaa web-sovellus, sitten laajennetulla alueella asettaa FBA.
asettaa FBA: n suorittamaan seuraavat:
- Siirry WWW-sovellusten hallintaan
- valitse Web-sovellus, jossa haluat määrittää Lomakepohjaisen todennuksen
- klikkaa todennuksen tarjoajia
- Valitse alue, jonka haluat määrittää, tässä esimerkissä asetamme kaksinkertaisen todennuksen (Windows Integrated ja FBA)
kun vyöhykkeen määritysnäyttö avautuu,
- vieritä alas FBA: han liittyvään osioon ja lisää nimet, joita käytit jäsenyyden tarjoaja ja roolin tarjoaja-osioissa .asetustiedosto muuttuu. Jos et muokannut jäsenyyden ja roolin tarjoajien nimiä koodiosioissa, joissa luki <add name=”FBAMembershipProvider” … ja <add name=”FBARoleProvider….. sitten voit käyttää näitä nimiä, muuten käyttää mitä tahansa muutit ne liian.
- valitset ruudun Enable Forms Based Authentication (FBA) ja syötät käyttämäsi nimet
- napsauta Tallenna tallentaaksesi muutokset
nyt jos yrität avata web-sovelluksen tai sivustokokoelman, saat oletusmerkin FBA: lle, sen avulla voit valita Windows Integrated-tai Forms Based Authentication
et silti voi käyttää FBA: ta, vaikka valitsisit sen ja yrittäisit käyttää sitä, koska aspnetdb: ssä ei ole tällä hetkellä FBA-käyttäjiä. FBA Pack avulla voit lisätä käyttäjiä tietokantaan. Chris Coulsonin vuoden 2013 SharePoint-blogin 2013 postaus selittää toisen menetelmän.
FBA Pack Solution
FBA Pack-ratkaisun avulla voit lisätä ja hallita käyttäjiä
ladata ratkaisun ja ottaa sen käyttöön SharePoint-palvelimellesi. Sen mukana tulee todella mahtava käyttöönotto script, jonka avulla voit kohdistaa yhden web-sovelluksen tai koko maatilan.
kun olet tallentanut liuoksen,:\Ota käyttöön esimerkiksi, avaa hallinnollisen SharePoint management shell-komentotulkin ja suorita se alla esitetyllä tavalla, jos haluat sen käyttöön koko tilalla
jos haluat sen käyttöön tiettyyn verkkosovellukseen, Kirjoita .\deploy.ps1: n sijasta. \deploy. ps1 http://urlToThatSpecificWebApplication.Domain.com missä domain.com on verkkotunnuksesi ja ylätason verkkotunnuksen pääte (esim.sharepoint.paikallinen, springfield.paikallinen, bdbsa.org, ssa.gov tai spt.local, tai whatevs)