Udostępnij przez


Ustawianie uprawnień w katalogach wirtualnych

Ze względów bezpieczeństwa usługa inteligentnego transferu w tle (BITS) nie przekazuje plików do katalogu wirtualnego z włączonymi uprawnieniami skryptów i wykonywania. Jeśli przekażesz plik do katalogu wirtualnego z włączonymi uprawnieniami, zadanie zakończy się niepowodzeniem z kodem błędu BG_E_SERVER_EXECUTE_ENABLED.

Usługa BITS nie wymaga włączenia zapisu katalogu wirtualnego, dlatego zaleca się wyłączenie dostępu do zapisu w katalogu wirtualnym.

Uwierzytelniony użytkownik (lub użytkownik anonimowy usług IIS do uwierzytelniania anonimowego) musi mieć uprawnienia Zmiany w katalogu fizycznym, do którego jest mapowany katalog wirtualny; przyznanie uprawnień do zapisu nie jest wystarczające.

Określanie uprawnień dla powiadomień

Schemat uwierzytelniania określony dla katalogu wirtualnego i adresu URL powiadomienia (zobacz właściwość BITSServerNotificationURL) musi być zgodna. Usługa BITS używa schematu uwierzytelniania określonego dla katalogu wirtualnego w celu uzyskania dostępu do adresu URL powiadomienia. Zadanie przekazywania kończy się niepowodzeniem, jeśli usługa BITS nie może uzyskać dostępu do adresu URL powiadomienia z powodu niepowodzenia uwierzytelniania.

Jeśli typ powiadomienia (zobacz właściwość BITSServerNotificationType) jest przez odwołanie, aplikacja musi upewnić się, że użytkownik ma dostęp do pliku referencyjnego (zobacz nagłówek BITS-Request-DataFile-Name). Usługa BITS ustawia listy ACL na pliku zgodnie z listami ACL katalogu fizycznego, do którego jest mapowany katalog wirtualny.

Notatka

Powiadomiona aplikacja musi mieć możliwość mapowania i uzyskiwania dostępu do pliku zdalnego, nawet jeśli adres URL powiadomienia jest obsługiwany przez serwer internetowy, który znajduje się na innym komputerze niż fizyczny katalog przesyłania. Nagłówek BITS-Request-DataFile-Name zawsze zawiera specyfikację ścieżki, która jest względna do komputera hostingującego składnik rozszerzeń BITS. Aplikacja uruchomiona na innym komputerze może wymagać przekonwertowania ścieżki na ścieżkę UNC przed uzyskaniem do niej dostępu.

 

Usługa BITS obsługuje wiele kombinacji schematów uwierzytelniania. Należy jednak użyć następującego schematu uwierzytelniania dla katalogu wirtualnego i pasującego adresu URL powiadomienia.

  • Aby obsługiwać powiadomienia referencyjne, katalog wirtualny powinien być skonfigurowany do używania uwierzytelniania NTLM (negocjuj), jeśli fizyczny katalog przekazywania (katalog, do którego wskazuje katalog wirtualny) używa schematu uwierzytelniania innego niż anonimowy. Jeśli katalog przekazywania fizycznego zezwala na żądania anonimowe (bez uwierzytelniania), katalog wirtualny powinien zezwolić na żądania anonimowe (bez uwierzytelniania).

    Listy ACL w fizycznym katalogu przesyłania muszą być ustawione tak, aby uwierzytelniony użytkownik mógł odczytywać pliki w katalogu, do którego wskazuje adres URL powiadomienia. Usługa BITS używa list ACL fizycznego katalogu przesyłania, aby ustawić listy ACL dla tymczasowego pliku przesyłania (nagłówek BITS-Request-DataFile-Name zawiera ścieżkę do pliku tymczasowego).

  • Ponieważ powiadomienia z powodu wartości nie wymagają, by aplikacja miała dostęp do pliku tymczasowego zawierającego zawartość przesyłania, schemat uwierzytelniania może być anonimowy lub negocjowany (NTLM). Jedynym wymaganiem jest to, że uwierzytelniony użytkownik katalogu wirtualnego musi mieć również uprawnienia dostępu do adresu URL powiadomienia.

Określanie uprawnień dla udziałów zdalnych

Katalog wirtualny może wskazywać zamapowany dysk na innej maszynie lub w udziale sieciowym. Jeśli wskazuje mapowany dysk sieciowy, poświadczenia używane do mapowania dysku powinny mieć pełną kontrolę nad udziałem zdalnym.

Jeśli katalog wirtualny wskazuje na udział sieciowy, usługa BITS używa poświadczeń użytkownika Connect As katalogu wirtualnego do uzyskania dostępu do udziału zdalnego. Aby uzyskać dostęp do udziału zdalnego, konto Connect As musi mieć uprawnienia zgodnie z opisem w dokumentacji funkcji LogonUser. Usługa BITS loguje się przy użyciu typów logowania LOGON32_LOGON_BATCH lub LOGON32_LOGON_INTERACTIVE. Konto użytkownika Connect As wymaga Full-Access uprawnień do udziału zdalnego; przyznanie uprawnień do zapisu nie jest wystarczające.

Gdy fizyczny katalog przekazywania jest mapowany na udział sieciowy, tożsamość obiektu wywołującego żądającego adresu URL powiadomienia jest użytkownikiem Connect As lub uwierzytelniony użytkownik katalogu przekazywania fizycznego (dostępny tylko w usługach IIS 6.0 i nowszych, gdy pole wyboru Zawsze używaj poświadczeń uwierzytelnionego użytkownika podczas sprawdzania poprawności dostępu do zasobu sieciowego jest zaznaczone w oknie dialogowym Połącz jako).