18 lutego, 2022

Konfigurowanie uwierzytelniania opartego na formularzach (FBA) z SharePoint 2010

zaczerpnięte z http://blogs.technet.com/b/mahesm/

SharePoint 2010 obsługuje FBA, takie jak WSS 3.0 lub MOSS 2007. Jest to funkcja ASP. net, której używamy z SharePoint. SharePoint 2010 można tworzyć aplikacje internetowe przy użyciu uwierzytelniania klasycznego lub uwierzytelniania opartego na oświadczeniach. Jednak FBA może być skonfigurowany tylko z aplikacjami internetowymi utworzonymi przy użyciu uwierzytelniania opartego na oświadczeniach.

jakie są różnice między uwierzytelnianiem w trybie klasycznym a uwierzytelnianiem opartym na oświadczeniach?

uwierzytelnianie w trybie klasycznym: odnosi się do zintegrowanego uwierzytelniania systemu windows. Nie można skonfigurować uwierzytelniania opartego na formularzach, jeśli aplikacja internetowa korzysta z uwierzytelniania w trybie klasycznym. Można przekonwertować aplikację internetową z uwierzytelniania w trybie klasycznym na uwierzytelnianie oparte na oświadczeniach. Jednak można to zrobić tylko za pomocą poleceń PowerShell i jest to nieodwracalny proces. Mam szczegółowe kroki, aby przekonwertować aplikację internetową z uwierzytelniania w trybie klasycznym do uwierzytelniania opartego na oświadczeniach.

uwierzytelnianie oparte na oświadczeniach: SharePoint 2010 jest oparty na Windows Identity Foundation. Umożliwia uwierzytelnianie zarówno z systemów windows, jak i innych niż windows. Zapewnia to również możliwość wielokrotnego uwierzytelniania w jednym adresie URL.

Konfiguracja FBA z SharePoint 2010 obejmuje 4 główne kroki. Kroki konfiguracji FBA z dostawcą członkostwa SQL są poniżej:

I> twórz lub Konwertuj istniejące aplikacje internetowe na uwierzytelnianie oparte na oświadczeniach

II> twórz identyfikatory użytkowników w bazie danych SQL

III> Modyfikuj sieć.plik konfiguracyjny

IV > nadawanie uprawnień użytkownikom obecnym w bazie danych SQL

Uwaga: Jeśli chcesz skonfigurować FBA z dostawcą członkostwa LDAP, możesz zapoznać się z artykułem TechNet.

poniżej znajdziesz szczegółowe kroki:

I> twórz lub Konwertuj istniejące aplikacje internetowe, aby korzystać z uwierzytelniania opartego na oświadczeniach

Uwaga: – Aplikacja webowa musi być utworzona z centralnej konsoli administracyjnej lub PowerShell, jednak powinna być oparta na uwierzytelnianiu.

A. Tworzenie aplikacji WWW z wykorzystaniem administracji centralnej

      • Otwórz centralną Konsolę administracyjną.
      • Kliknij Zarządzaj aplikacją internetową w obszarze Zarządzanie aplikacjami.
      • kliknij na nowy na Wstążce.
      • u góry strony wybrano uwierzytelnianie oparte na oświadczeniach.
      • Wybierz port no dla aplikacji internetowej.
      • Kliknij Włącz uwierzytelnianie oparte na formularzach (FBA) w sekcji typy uwierzytelniania oświadczeń. Uwierzytelnianie systemu Windows jest domyślnie włączone, a jeśli nie potrzebujesz uwierzytelniania systemu windows, musisz usunąć to pole wyboru.
      • Dodaj dostawcę członkostwa & Nazwa Menedżera ról
      • po utworzeniu aplikacji internetowej sprawdź ustawienia dostawcy uwierzytelniania dla aplikacji internetowej. Mam zrzut ekranu poniżej:

Uwaga:- Jeśli chcesz używać uwierzytelniania systemu Windows i uwierzytelniania opartego na formularzach w jednym adresie URL, musisz wybrać Włącz uwierzytelnianie systemu Windows i Włącz uwierzytelnianie oparte na formularzach.

image

uwaga: – dla zrozumienia używam dostawcy członkostwa jako ” SQL-MembershipProvider „i menedżera ról jako”SQL-RoleManager”. Możesz używać różnych nazw, jednak musisz je zapamiętać,aby móc je odwoływać w sieci.pliki konfiguracyjne. W tych nazwach rozróżniana jest wielkość liter.

B. Co zrobić, jeśli masz już aplikację internetową utworzoną przy użyciu uwierzytelniania w trybie klasycznym lub jak przekonwertować aplikację internetową z uwierzytelniania w trybie klasycznym na uwierzytelnianie oparte na oświadczeniach?

nie musisz usuwać tej aplikacji internetowej. Możesz przekonwertować tę aplikację internetową z uwierzytelniania w trybie klasycznym na uwierzytelnianie oparte na oświadczeniach. Jednak można to zrobić tylko za pomocą PowerShell i jest to nieodwracalny proces. Wykonaj polecenia PowerShell, aby przekonwertować aplikację internetową z uwierzytelniania w trybie klasycznym na uwierzytelnianie oparte na oświadczeniach:

$App = get-spwebapplication „URL”

$app.useclaimsauthentication = „True”

$app.Update ()

przykład: –

$App = get-spwebapplication „http://sp1:8000”

$app.useclaimsauthentication = „True”

$app.Update()

gdy aplikacja internetowa korzysta z uwierzytelniania opartego na oświadczeniach, można utworzyć kolekcję witryn. Teraz, jeśli uzyskasz dostęp do aplikacji internetowej, możesz uzyskać dostęp do witryny wybierając uwierzytelnianie systemu Windows lub uwierzytelnianie oparte na formularzach, jak pokazano na poniższym obrazku.

clip_image004

Wybierz uwierzytelnianie systemu windows i zaloguj się do witryny. Podczas logowania używane będą aktualnie zalogowane dane uwierzytelniające. Upewnij się, że konto, na którym jesteś zalogowany, ma dostęp do witryny SharePoint; w przeciwnym razie otrzymasz błąd odmowy dostępu.

II> Skonfiguruj dostawcę Członkostwa i menedżera ról.

  • na serwerze SharePoint 2010 otwórz wiersz polecenia.
  • przejdź do C: WindowsMicrsooft .NetFramework64v2.0.50727
  • Uruchom ” aspnet_regsql.exe”. Spowoduje to otwarcie Kreatora konfiguracji ASP.net SQL Server. Na tym kliknij Dalej.

clip_image006

  • kliknij na „Configure SQL Server for Application Services”.
  • podaj nazwę bazy danych. Jeśli nie podasz nazwy bazy danych, utworzy ona wywołanie bazy danych aspnetdb.

clip_image008

  • użyj narzędzia membershipseeder do tworzenia użytkowników w bazie danych SQL. Możesz znaleźć narzędzie i informacje na ten temat z codeplex.

Uwaga: – podałem nazwę bazy danych jako „SQL-Auth”.

> plik konfiguracyjny dostawcy członkostwa i menedżera ról.

musimy zmodyfikować 3 różne strony.pliki konfiguracyjne dla FBA do pracy. Www.konfiguracja aplikacji webowej FBA, web.Konfiguracja strony administracji centralnej & www.config STS.

A. Modyfikuj www.konfiguracja aplikacji internetowej FBA.

  • Dodaj ciąg połączenia:

<connectionStrings>

<add name= „sqlconnectionstring” connectionString= ” data source=SQL; Integrated Security=SSPI;Initial Catalog=SQL-Auth” />

</connectionStrings>

Connection String musi być dodany po </SharePoint>i przed < systemem.www>

  • Dodaj dostawcę członkostwa i menedżera ról:

<roleManager defaultProvider= „c” enabled= „true” cacheRolesInCookie= „false”>

<dostawcy>

<add name=”C” type= ” Microsoft.SharePoint.Administracja.Roszczenia.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.Roszczenia.Spclaimsauthm Membershipprovider, Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c” />

<add connectionStringName=” SQLConnectionString „passwordAttemptWindow=” 5 „enablePasswordRetrieval= „false”enablePasswordReset=” false”requestionandanswer=” true” applicationName=”/”requiresUniqueEmail=” true”passwordFormat=” Hashed”description=” przechowuje i pobiera dane Członkostwa z serwera SQL”name=” SQL-MembershipProvider”type=” System.Www.Ochrona.SqlMembershipProvider, System.Web, Version=2.0.3600.0, Culture = neutral, PublicKeyToken=b03f5f7f11d50a3a” />

</dostawcy>

</członkostwo>

</system.web>

B. Modyfikuj web.konfiguracja aplikacji webowej administracji centralnej.

  • Dodaj ciąg połączenia:

<connectionStrings>

<add name= „sqlconnectionstring” connectionString= ” data source=SQL; Integrated Security=SSPI;Initial Catalog=SQL-Auth” />

</connectionStrings>

Connection String musi być dodany po </SharePoint>i przed < systemem.www>

  • Dodaj dostawcę członkostwa i menedżera ról:

<roleManager defaultProvider= „AspNetWindowsTokenRoleProvider” enabled= „true” cacheRolesInCookie= „false”>

<dostawcy>

<add connectionStringName= „sqlconnectionstring” applicationName= ” / ” description=” przechowuje i pobiera role z serwera SQL”name=” SQL-RoleManager”type =” System.Www.Ochrona.SqlRoleProvider, System.Web, Version=2.0.3600.0, Culture = neutral, PublicKeyToken=b03f5f7f11d50a3a” />

</dostawcy>

</roleManager>

<membership defaultProvider= „SQL-MembershipProvider”>

<dostawcy>

<dodaj connectionStringName=” SQLConnectionString „passwordAttemptWindow=” 5 „enablePasswordRetrieval=” false „enablePasswordReset=” false ” requiresQuestionAndAnswer=” true ” applicationName=” / „requiresUniqueEmail =” true „passwordFormat =” Hashed „description=” przechowuje i pobiera dane Członkostwa z serwera SQL” name=” SQL-MembershipProvider „type =” System.Www.Ochrona.SqlMembershipProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a” />

</dostawcy>

</członkostwo>

C. Modyfikuj www.config STS. Możesz zlokalizować sieć STS.config from %programfiles%common filesMicrosoft Sharedeweb Server extensions14webservicesecuritytoken

<connectionStrings>

<add name= „sqlconnectionstring” connectionString= ” data source=SQL; Integrated Security=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.Roszczenia.Spclaimsauthm Membershipprovider, Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c” />

<add connectionStringName=” SQLConnectionString „passwordAttemptWindow=” 5 „enablePasswordRetrieval= „false”enablePasswordReset=” false”requestionandanswer=” true” applicationName=”/”requiresUniqueEmail=” true”passwordFormat=” Hashed”description=” przechowuje i pobiera dane Członkostwa z serwera SQL”name=” SQL-MembershipProvider”type=” System.Www.Ochrona.SqlMembershipProvider, System.Web, Version=2.0.3600.0, Culture = neutral, PublicKeyToken=b03f5f7f11d50a3a” />

</dostawcy>

</członkostwo>

</system.web>

powyżej należy dodać < / konfiguracja>

IV> nadawanie uprawnień użytkownikom w bazie danych SQL.

  • Uzyskaj dostęp do centralnej konsoli administracyjnej i kliknij Zarządzaj aplikacjami internetowymi w obszarze Zarządzanie aplikacjami.
  • Wybierz aplikację internetową i kliknij zasady użytkownika na wstążce.
  • kliknij Dodaj użytkownika i wybierz strefę domyślną.
  • Teraz wpisz nazwę użytkownika, Dodaj użytkownika do aplikacji webowej, definiując odpowiednie uprawnienia.

typowe problemy:

jeśli używasz wielu kont usług zgodnie z artykułem TechNet konta administracyjne i usługi wymagane do wstępnego wdrożenia (SharePoint Server 2010), możesz nie być w stanie rozwiązać nazw użytkowników lub dodać użytkowników do aplikacji internetowej. Jeśli używasz 3 różnych kont (konto administratora farmy, konto puli aplikacji dla aplikacji internetowej i konto aplikacji usługi), musisz upewnić się, że masz dostęp do bazy danych członkostwa SQL (SQL-Auth).

ważne:

co się dzieje z FBA po aktualizacji WSS 3.0 / MOSS 2007 do SharePoint 2010?

przed uaktualnieniem do SharePoint 2010 należy usunąć zmiany wprowadzone w sieci.plik konfiguracyjny. Po zakończeniu procesu aktualizacji wszystkie aplikacje internetowe zostaną zaktualizowane; będą one jednak używać uwierzytelniania w trybie klasycznym. Możesz przekonwertować te aplikacje internetowe z uwierzytelniania w trybie klasycznym na uwierzytelnianie oparte na oświadczeniach.

narzędzia innych firm: FBA Manager SP2010 (uwierzytelnianie oparte na formularzach) Dev-IT

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.