Uvod
Veliko podjetij se v zadnjem času odloča, da bi želeli svoj interni SharePoint strežnik odpreti tudi navzven bodisi mobilnim uporabnikom bodisi za eksterno kolaboracijo s partnerji. Ker v takih primerih, zaradi varnosti in drugih razlogov, ne bi želeli SharePoint strežnika izpostaviti direktno na internet, lahko za namene avtentikacije uporabimo ADFS strežnik. ADFS strežnik se v takih primerih lahko uporablja tudi za namene multifaktorske avtentikacije in pa v povezavi z drugimi t.i. »identity management« sistemi.
Shema okolja in proces avtentikacije
Za potrebe avtentikacije prek strežnika ADFS je shema okolja malo bolj kompleksna, kot če uporabljamo samo Active directory avtentikacijo s SharePoint strežnika.
V testnem okolju imamo na voljo klasični SharePoint strežnik z SQL strežnikom za baze in en ADFS strežnik ter domenski strežnik za avtentikacijo uporabnika. Kar je na tem mestu potrebno poudariti je, da mora SharePoint spletna aplikacija uporabljati SSL protokol za dostopanje do spletnih strani.
Proces avtentikacije je v tem primeru sledeč:
- Uporabnik želi v brskalniku odpreti https://adfslogin.kompas-xnet.si.
- SharePoint prejme zahtevo za odpiranje strani in v primeru, da imamo na voljo več avtentikacijskih modelov, si uporabnik lahko izbere primernega. V našem primeru je to ADFS in pri izbiri le-tega, SharePoint preusmeri uporabnika na ADFS strežnik.
- ADFS strežnik prejme zahtevo za avtentikacijo, kjer je v URL naslovu tudi »Realm« in pa URL web aplikacije za identifikacijo zahtevka.
- ADFS avtenticira uporabnika na domenskem strežniku.
- ADFS strežnik ustvari žeton.
- ADFS strežnik pošlje žeton s podatki uporabniku.
- Uporabnik pošlje žeton SharePoint strežniku, ki nato uporabnika avtorizira.
Certifikati
ADFS strežnik za svoje delovanje potrebuje več različnih certifikatov. Odvisno od tega kako ADFS nastavimo, je potem odvisno tudi katere certifikate morate izvoziti in jih uvoziti na SharePoint strežnik, saj zaupanje med SharePoint in ADFS strežnikom vzpostavite prav s pomočjo certifikatov. Lahko so to domenski certifikati, izdani z vašim lokalnim CA-jem, lahko pa certifikate kupite od različnih ponudnikov. V primeru, da želite omogočiti prijavo na vaš SharePoint tudi uporabnikom, ki ne uporabljajo domenskih računalnikov, morate certifikat kupiti.
V našem primeru, bomo uporabili javno overjeni certifikat, kupljen pri StartSSL www.startssl.com.
Na sliki lahko vidimo, da se za »token signing« certifikat uporablja certifikat izdan s »common name« sts.kompas-xnet.si in ta certifikat je tudi potrebno izvoziti in ga prenesti na SharePoint strežnik. Pri izvozu certifikata morate biti previdni, da je le-ta izvožen v pravilni obliki in da ne vsebuje tudi privatnega ključa.
Končni rezultat izvoza je datoteka s končnico ».cer«.
V naslednjem članku bom predstavil nastavitve, ki jih je potrebno narediti na strani ADFS strežnika in nato še kako se pravilno nastavi SharePoint strežnik.
Opisal bom tudi kaj pomeni ADFS avtentikacija z uporabniškega stališča, na katere stvari moramo paziti in kako jih lahko zaobidemo.