Poświadczenia i połączenia dla źródeł danych raportu

Serwer raportów używa poświadczeń do łączenia się z zewnętrznymi źródłami danych, które udostępniają zawartość raportom lub informacjom adresata w ramach subskrypcji opartej na danych. Możesz określić poświadczenia, które używają uwierzytelniania Windows, uwierzytelniania bazy danych, uwierzytelniania bez uwierzytelniania lub uwierzytelniania niestandardowego. Gdy serwer raportów wysyła przez sieć żądanie nawiązania połączenia, podszywa się pod konto użytkownika albo konto wykonywania bez nadzoru. Aby uzyskać więcej informacji na temat kontekstu zabezpieczeń, w którym jest wykonywane żądanie połączenia, zobacz Konfiguracja źródła danych i połączenia sieciowe w tym artykule.

Uwaga / Notatka

Poświadczenia są również używane do uwierzytelniania użytkowników, którzy uzyskują dostęp do serwera raportów. Aby uzyskać więcej informacji na temat uwierzytelniania użytkowników na serwerze raportów, zobacz Uwierzytelnianie na serwerze raportów.

Połączenie z zewnętrznym źródłem danych jest definiowane podczas tworzenia raportu. Można zarządzać nim oddzielnie po opublikowaniu raportu. Możesz określić statyczny parametr połączenia lub wyrażenie, które umożliwia użytkownikom wybranie źródła danych z dynamicznej listy. Aby uzyskać więcej informacji na temat określania typu źródła danych i parametry połączenia, zobacz Tworzenie parametrów połączenia danych w Report Builder.

Poświadczenia używane w Report Builder

W Report Builder poświadczenia są często używane podczas nawiązywania połączenia z serwerem raportów. Są one również używane do zadań związanych z danymi, takich jak tworzenie osadzonego źródła danych, uruchamianie zapytania zestawu danych lub wyświetlanie podglądu raportu. Poświadczenia nie są przechowywane w raporcie. Są one zarządzane oddzielnie na serwerze raportów lub na kliencie lokalnym. Na poniższej liście opisano rodzaje poświadczeń, których podanie może być konieczne, miejsca ich przechowywania oraz sposób ich użycia:

  • Wprowadź poświadczenia serwera raportów w oknie dialogowym logowania do usługi Reporting Services.

    Podczas pierwszego zapisywania, publikowania lub przechodzenia do serwera raportów lub witryny SharePoint może być konieczne wprowadzenie poświadczeń. Wprowadzone poświadczenia są używane do zakończenia sesji Report Builder. Jeśli zdecydujesz się zapisać poświadczenia, zostaną one bezpiecznie zapisane przy użyciu ustawień użytkownika na komputerze. Podczas kolejnych sesji programu Report Builder zapisane poświadczenia są używane do łączenia się z tym samym serwerem raportów lub witryną programu SharePoint. Administrator serwera raportów lub administrator usługi SharePoint określa typ poświadczeń do użycia.

  • Poświadczenia źródła danych, które wprowadzasz w oknie dialogowym Właściwości źródła danych dla osadzonego źródła danych.

    Te poświadczenia są używane przez serwer raportów do nawiązywania połączenia danych z zewnętrznym źródłem danych. W przypadku niektórych typów źródeł danych poświadczenia mogą być bezpiecznie przechowywane na serwerze raportów. Te poświadczenia umożliwiają innym użytkownikom uruchamianie raportu bez podawania poświadczeń dla bazowego połączenia danych.

  • Poświadczenia źródła danych wprowadzone w oknie dialogowym Wprowadzanie poświadczeń źródła danych podczas uruchamiania zapytania zestawu danych, odświeżania pól zestawu danych lub podglądu raportu.

    Te poświadczenia służą do nawiązania połączenia z danymi z programu Report Builder do zewnętrznego źródła danych lub do wyświetlenia podglądu raportu skonfigurowanego tak, aby wyświetlał monit o poświadczenia. Poświadczenia wprowadzone w tym oknie dialogowym nie są przechowywane na serwerze raportów i nie są dostępne do użycia przez innych użytkowników. Report Builder buforuje poświadczenia podczas sesji edytowania raportu, aby nie trzeba było wprowadzać ich za każdym razem, gdy uruchamiasz zapytanie lub wyświetlasz podgląd raportu.

    W przypadku udostępnionych źródeł danych użyj opcji Zapisz moje hasło , aby zapisać poświadczenia lokalnie przy użyciu ustawień użytkownika na komputerze. Report Builder używa zapisanych poświadczeń za każdym razem, gdy zostanie nawiązane połączenie z odpowiednim zewnętrznym źródłem danych.

Aby uzyskać więcej informacji, zobacz Podgląd raportów w Report Builder.

Zdalne źródła danych

Jeśli raport pobiera dane z zdalnego serwera bazy danych, musisz sprawdzić:

  • Poświadczenia podane na serwerze bazy danych są prawidłowe. Jeśli używasz Windows poświadczeń użytkownika, upewnij się, że użytkownik ma uprawnienia do serwera i bazy danych.

  • Porty używane przez serwer bazy danych są otwarte. Jeśli uzyskujesz dostęp do SQL Server relacyjnych baz danych na komputerach zewnętrznych, musisz otworzyć port 1433 i 1434 na komputerze zewnętrznym. Należy również otworzyć te porty, jeśli baza danych serwera raportów znajduje się na zewnętrznej instancji programu SQL Server. Pamiętaj, aby ponownie uruchomić serwer po otwarciu portów. Aby uzyskać więcej informacji, zobacz Konfigurowanie zapory Windows na potrzeby dostępu Database Engine.

  • Połączenia zdalne muszą być włączone. Jeśli uzyskujesz dostęp do SQL Server relacyjnych baz danych na komputerach zewnętrznych, możesz użyć narzędzia SQL Server Configuration Manager, aby sprawdzić, czy połączenia zdalne za pośrednictwem protokołu Transmission Control Protocol (TCP) są włączone.

Określanie poświadczeń na potrzeby nawiązywania połączenia ze zdalnymi źródłami danych

Źródła danych, które udostępniają zawartość raportom, są hostowane na serwerach zdalnych. Aby pobrać dane na potrzeby raportu, serwer raportów musi połączyć się z serwerem, używając poświadczeń podanych wcześniej lub uzyskanych w czasie wykonywania. Podczas konfigurowania źródła danych można określić poświadczenia w następujący sposób:

  • Poproś użytkownika o podanie poświadczeń.
  • Przechowuj poświadczenia.
  • Użyj zintegrowanych zabezpieczeń systemu Windows.
  • Nie używaj poświadczeń.

Środowisko sieciowe określa rodzaje połączeń, które można obsługiwać. Jeśli na przykład protokół Kerberos w wersji 5 jest włączony, może być możliwe użycie funkcji delegowania i personifikacji dostępnych w usłudze Windows Authentication w celu obsługi połączeń między wieloma serwerami. Jeśli sieć nie obsługuje tych funkcji zabezpieczeń, musisz obejść ograniczenia połączeń. Jeśli delegowanie i personifikowanie nie są włączone, poświadczenia systemu Windows można przekazać przez jedno połączenie komputerowe przed ich wygaśnięciem. Połączenie użytkownika z komputera klienckiego do komputera serwera raportów jest liczone jako pierwsze połączenie. Jeśli użytkownik otworzy raport, który pobiera dane z serwera zdalnego, to logowanie będzie liczone jako drugie połączenie. Połączenie zakończy się niepowodzeniem, jeśli określono je do używania zintegrowanych zabezpieczeń z wyłączonym delegowaniem.

Jeśli do ukończenia rundy z komputera klienckiego do zewnętrznego źródła danych raportu wymagane jest wiele połączeń, wybierz jedną z następujących strategii, aby połączenia zakończyły się pomyślnie.

  • Włącz funkcje personifikacji i delegowania w domenie, aby poświadczenia mogły być delegowane do innych komputerów bez ograniczeń.

  • Użyj przechowywanych poświadczeń lub monitowanych poświadczeń, aby wysyłać zapytania do zewnętrznych źródeł danych dla danych raportu. Poświadczenia mogą być kontem domeny Windows lub logowaniem do bazy danych.

Monitowane poświadczenia

Podczas konfigurowania połączenia ze źródłem danych raportu w celu używania poświadczeń z monitami każdy użytkownik, który uzyskuje dostęp do raportu, musi wprowadzić nazwę użytkownika i hasło, aby pobrać dane. To podejście jest zalecane w przypadku raportów zawierających poufne dane. Monitowane poświadczenia mogą być używane tylko w raportach uruchamianych na żądanie. Monitowane poświadczenia mogą być kontem Windows lub logowaniem do bazy danych. Aby użyć uwierzytelniania systemu Windows, musisz zaznaczyć opcję Użyj jako poświadczeń systemu Windows. W przeciwnym razie serwer raportów przekazuje poświadczenia do serwera bazy danych na potrzeby uwierzytelniania użytkownika. Jeśli serwer bazy danych nie może uwierzytelnić poświadczeń, które podajesz, połączenie zakończy się niepowodzeniem.

Windows zintegrowane zabezpieczenia

Jeśli używasz opcji Windows Zintegrowane zabezpieczenia, serwer raportów przekazuje token zabezpieczający użytkownika, który uzyskuje dostęp do raportu na serwerze hostujący zewnętrzne źródło danych. W takim przypadku użytkownik nie jest monitowany o wprowadzenie nazwy użytkownika ani hasła. To podejście jest zalecane w przypadku włączenia funkcji personifikacji i delegowania. Jeśli te funkcje nie są włączone, należy użyć tej metody tylko wtedy, gdy wszystkie serwery, do których chcesz uzyskać dostęp, znajdują się na tym samym komputerze.

Przechowywane poświadczenia

Poświadczenia używane do uzyskiwania dostępu do zewnętrznego źródła danych można przechowywać. Poświadczenia są przechowywane w odwracalnym szyfrowaniu w bazie danych serwera raportów. Można określić jeden zestaw przechowywanych poświadczeń dla każdego źródła danych używanego w raporcie. Podane poświadczenia umożliwiają pobranie tych samych danych dla każdego użytkownika, który uruchamia raport.

Uwaga / Notatka

Gdy używasz zapisanych danych uwierzytelniających, każdy użytkownik, który uruchamia raport, pobiera dane pod tą samą tożsamością, więc raport nie może wymuszać dostępu do danych dla użytkownika. Aby ograniczyć dane, które każdy użytkownik może zobaczyć, użyj zintegrowanego zabezpieczenia Windows i skonfiguruj zabezpieczenia na samym źródle danych. Raport nie jest granicą bezpieczeństwa – zobacz Bezpieczne raporty i zasoby.

Przechowywane poświadczenia są zalecane w ramach strategii uzyskiwania dostępu do zdalnych serwerów baz danych. Przechowywane poświadczenia są wymagane, jeśli chcesz obsługiwać subskrypcje lub zaplanować generowanie historii raportów lub odświeżanie migawek raportu. Gdy raport jest uruchamiany jako proces w tle, serwer raportów jest agentem, który wykonuje raport. Ponieważ nie ma kontekstu użytkownika, serwer raportów musi uzyskać informacje o poświadczeniach z bazy danych serwera raportów, aby nawiązać połączenie ze źródłem danych.

Nazwa użytkownika i hasło, które określisz, mogą być poświadczeniami systemu Windows lub danymi logowania do bazy danych. Jeśli określisz poświadczenia systemu Windows, serwer raportów przekazuje te poświadczenia do systemu Windows w celu kolejnego uwierzytelnienia. W przeciwnym razie poświadczenia są przekazywane do serwera bazy danych na potrzeby uwierzytelniania.

Udzielanie uprawnień "Zezwalaj na logowanie lokalne" do kont użytkowników domeny

Jeśli używasz przechowywanych poświadczeń do nawiązywania połączenia z zewnętrznym źródłem danych, konto użytkownika domeny Windows musi mieć uprawnienia do logowania lokalnego. To uprawnienie umożliwia serwerowi raportów personifikację użytkownika na serwerze raportów i wysłanie żądania do zewnętrznego źródła danych jako personifikowanego użytkownika.

Aby przyznać to uprawnienie na serwerze raportów, przejdź do Narzędzi administracyjnych i dodaj konto systemu Windows, które ma być używane do logowania interakcyjnego, w Zasadach zabezpieczeń lokalnych>Ustawieniach zabezpieczeń>Zasadach lokalnych>Przypisywaniu praw użytkownika. Upewnij się, że wybrane konto nie ma uprawnień odmowy.

Aby uzyskać więcej informacji, zobacz Konfigurowanie ustawień zasad zabezpieczeń i Zezwalaj na logowanie lokalne — ustawienie zasad zabezpieczeń.

Personifikacja przy użyciu przechowywanych poświadczeń

Możesz również użyć poświadczeń, aby personifikować tożsamość innego użytkownika. W przypadku baz danych SQL Server opcje personifikowania ustawiają funkcję SETUSER.

Ważna

Nie używaj personifikacji w przypadku raportów obsługujących subskrypcje lub korzystających z harmonogramów w celu wygenerowania historii raportu albo odświeżenia migawki wykonania raportu.

Brak poświadczeń

Możesz skonfigurować połączenie ze źródłem danych, aby nie używać poświadczeń. Aby uzyskać dostęp do źródła danych, należy zawsze używać poświadczeń. Można jednak uruchomić raport bez poświadczeń w następujących przypadkach:

  • Zdalne źródło danych nie wymaga poświadczeń.
  • Dane uwierzytelniające są przekazywane w ciągu połączenia (zalecane tylko w bezpiecznych połączeniach).
  • Raport jest raportem podrzędnym, który korzysta z poświadczeń raportu nadrzędnego.

W tych warunkach serwer raportów łączy się ze zdalnym źródłem danych przy użyciu nienadzorowanego konta wykonywania, które należy zdefiniować z wyprzedzeniem. Ponieważ serwer raportów nie łączy się z serwerem zdalnym przy użyciu poświadczeń usługi, należy określić konto, za pomocą którego serwer raportów może nawiązać połączenie. Aby uzyskać więcej informacji na temat tworzenia tego konta, zobacz Konfigurowanie konta wykonywania bez nadzoru (Menedżer konfiguracji serwera raportów).

Nazwa użytkownika i logowanie przy użyciu hasła

Po wybraniu opcji Użyj tej nazwy użytkownika i hasła należy podać nazwę użytkownika i hasło, aby uzyskać dostęp do źródła danych. W przypadku bazy danych SQL Server poświadczenia mogą dotyczyć logowania do bazy danych. Poświadczenia są przekazywane do źródła danych na potrzeby uwierzytelniania.

Konfiguracja źródła danych i połączenia sieciowe

W poniższej tabeli przedstawiono sposób nawiązywania połączeń dla określonych kombinacji typów poświadczeń i rozszerzeń przetwarzania danych. Jeśli używasz niestandardowego rozszerzenia przetwarzania danych, zobacz Określanie połączeń dla niestandardowych rozszerzeń przetwarzania danych.

Type Kontekst połączenia sieciowego Typy źródeł danych

(SQL Server, Oracle, ODBC, OLE DB, Analysis Services, XML, SAP NetWeaver BI, Hyperion Essbase)
Zintegrowane zabezpieczenia Podszywaj się pod bieżącego użytkownika. W przypadku wszystkich typów źródeł danych połącz się przy użyciu bieżącego konta użytkownika.
Poświadczenia systemu Windows Podszywaj się pod wskazanego użytkownika. W przypadku SQL Server, Oracle, Open Database Connectivity (ODBC) i Object Linking and Embedding, Database (OLE DB): połącz się za pomocą konta personifikowanego użytkownika.
Poświadczenia bazy danych Personifikuj nienadzorowane konto wykonywania lub konto usługi.

(Reporting Services usuwa uprawnienia administratora podczas wysyłania żądania połączenia przy użyciu tożsamości usługi).
W przypadku SQL Server, Oracle, ODBC i OLE DB:

Dołącz nazwę użytkownika i hasło do ciągu połączenia.

W przypadku usług Analysis Services:

Połączenie powiedzie się, jeśli używasz protokołu TCP/IP, w przeciwnym razie zakończy się niepowodzeniem.

W przypadku formatu XML:

Nie można nawiązać połączenia na serwerze raportów, jeśli są używane poświadczenia bazy danych.
None Personifikuj nienadzorowane konto wykonywania. W przypadku SQL Server, Oracle, ODBC i OLE DB:

Użyj poświadczeń zdefiniowanych w parametry połączenia. Nawiązanie połączenia z serwerem raportów kończy się niepowodzeniem, jeśli konto wykonywania bez nadzoru nie jest zdefiniowane.

W przypadku usług Analysis Services:

Zawsze nie można nawiązać połączenia, jeśli nie określono poświadczeń, nawet jeśli zdefiniowano nienadzorowane konto wykonywania.

W przypadku formatu XML:

Połącz się jako użytkownik anonimowy, jeśli zdefiniowano konto wykonywania bez nadzoru; w przeciwnym razie połączenie zakończy się niepowodzeniem.

Programowe ustawianie poświadczeń

Możesz ustawić poświadczenia w kodzie, aby kontrolować dostęp do raportów i serwera raportów. Aby uzyskać więcej informacji, zobacz Źródła danych i metody połączenia.