Skonfiguruj uwierzytelnianie niestandardowe lub uwierzytelnianie oparte na formularzach na serwerze raportów

Reporting Services oferuje rozszerzalną architekturę, która pozwala na podłączanie niestandardowych lub formularzowych modułów uwierzytelniania. Możesz rozważyć wdrożenie niestandardowego rozszerzenia uwierzytelniania, jeśli wymagania wdrożenia nie obejmują zintegrowanego zabezpieczenia z Windows lub uwierzytelniania Basic. Najczęstszym scenariuszem używania niestandardowej autoryzacji jest wsparcie dostępu do Internetu lub poza siecią do aplikacji webowej. Zastąpienie domyślnego rozszerzenia Windows Authentication niestandardowym rozszerzeniem autentyfikacji daje większą kontrolę nad tym, jak użytkownicy zewnętrzni otrzymują dostęp do serwera raportów.

W praktyce wdrożenie niestandardowego rozszerzenia uwierzytelniania wymaga wielu kroków, w tym kopiowania asemblów i plików aplikacji, modyfikowania plików konfiguracyjnych oraz testowania. Ten artykuł skupia się wyłącznie na ustawieniach uwierzytelniania, które podajesz w plikach konfiguracyjnych.

Note

Stworzenie niestandardowego rozszerzenia uwierzytelniania wymaga niestandardowego kodu i wiedzy z zakresu bezpieczeństwa ASP.NET. Jeśli nie chcesz tworzyć niestandardowego rozszerzenia uwierzytelniania, możesz użyć grup i kont Microsoft Entry ID, ale powinieneś znacznie ograniczyć zakres wdrożenia serwera raportów. Więcej informacji o niestandardowej autoryzacji można znaleźć w artykule Implementuj rozszerzenie bezpieczeństwa.

Dodatkowo możesz korzystać z uwierzytelniania Forms lub niestandardowego rozszerzenia uwierzytelniania w środowisku SQL Server Reporting Services zintegrowanym z produktem SharePoint. Aby to zrobić, musisz skonfigurować stronę SharePoint tak, aby używała wybranej przez Ciebie metody uwierzytelniania. Więcej informacji na temat konfiguracji uwierzytelniania w SharePoint można znaleźć w przykładach uwierzytelniania w Microsoft Developer Network (MSDN).

Konfiguruj serwer raportów do używania niestandardowej autoryzacji

  1. Otwórz rsreportserver.config w edytorze tekstu.

  2. Znajdź sekcję <Authentication> .

  3. Skopiuj następującą strukturę XML:

    <Authentication>
          <AuthenticationTypes>
                 <Custom />
          </AuthenticationTypes>
          <EnableAuthPersistence>true</EnableAuthPersistence>
    </Authentication>
    
  4. Wklej go w miejsce istniejących wpisów w sekcji <Authentication>.

    Nie możesz używać Custom z innymi typami uwierzytelniania.

  5. Zapisz plik.

  6. Otwórz plik Web.config dla serwera raportów. Domyślnie plik znajduje się w tym samym folderze co plik rsreportserver.config (zobacz: plik konfiguracyjny RsReportServer.config).

  7. Znajdź authentication mode i ustaw na Forms.

    <authentication mode = "Forms" />
    
  8. Znajdź identity impersonate i ustaw na False.

    <identity impersonate = "false" />  
    
  9. Dodaj strukturę PassThroughCookies elementów do pliku konfiguracyjnego. Więcej informacji można znaleźć w artykule Konfiguruj portal internetowy do przekazywania niestandardowych ciasteczek uwierzytelniających

  10. Zapisz plik.

  11. Jeśli skonfigurowałeś wdrożenie typu scale-out, powtórz wszystkie poprzednie kroki dla innych serwerów raportów w tym wdrożeniu.

  12. Zrestartuj serwer raportów, aby wyczyścić sesje, które są obecnie otwarte.