Udostępnij za pośrednictwem


Rozwiązywanie problemów z uwierzytelnianiem i autoryzacją opartą na tożsamościach usługi Azure Files (SMB)

W tym artykule wymieniono typowe problemy podczas korzystania z udziałów plików platformy Azure SMB z uwierzytelnianiem opartym na tożsamościach. Zapewnia również możliwe przyczyny i rozwiązania tych problemów. Uwierzytelnianie oparte na tożsamościach nie jest obecnie obsługiwane w przypadku udziałów plików platformy Azure systemu plików NFS.

Informacje zawarte w tym artykule dotyczą

Typ udziału plików SMB NFS
Standardowe udziały plików (GPv2), LRS/ZRS
Standardowe udziały plików (GPv2), GRS/GZRS
Udziały plików Premium (FileStorage), LRS/ZRS

Błąd podczas uruchamiania modułu AzFilesHybrid

Podczas próby uruchomienia modułu AzFilesHybrid może wystąpić następujący błąd:

Klient nie posiada wymaganego uprawnienia.

Przyczyna: Uprawnienia usługi AD są niewystarczające

Ten problem występuje, ponieważ nie masz wymaganych uprawnień usługi Active Directory (AD) do uruchamiania modułu.

Rozwiązanie

Zapoznaj się z uprawnieniami usługi AD lub skontaktuj się z administratorem usługi AD, aby zapewnić wymagane uprawnienia.

Błąd 5 podczas instalowania udziału plików platformy Azure

Podczas próby zainstalowania udziału plików może wystąpić następujący błąd:

Wystąpił błąd systemu 5. Odmowa dostępu.

Przyczyna: Uprawnienia na poziomie udziału są nieprawidłowe

Jeśli użytkownicy końcowi uzyskują dostęp do udziału plików platformy Azure przy użyciu usług Active Directory Domain Services (AD DS) lub uwierzytelniania usług Microsoft Entra Domain Services, dostęp do udziału plików kończy się niepowodzeniem z powodu błędu "Odmowa dostępu", jeśli uprawnienia na poziomie udziału są nieprawidłowe.

Uwaga

Ten błąd może być spowodowany przez problemy inne niż nieprawidłowe uprawnienia na poziomie udziału. Aby uzyskać informacje na temat innych możliwych przyczyn i rozwiązań, zobacz Rozwiązywanie problemów z łącznością i dostępem do usługi Azure Files.

Rozwiązanie

Sprawdź, czy uprawnienia są poprawnie skonfigurowane:

  • Active Directory Domain Services (AD DS) zobacz Przypisywanie uprawnień na poziomie udziału.

    Przypisania uprawnień na poziomie udziału są obsługiwane w przypadku grup i użytkowników, które zostały zsynchronizowane z usług AD DS z identyfikatorem Entra firmy Microsoft przy użyciu programu Microsoft Entra Connect Sync lub synchronizacji w chmurze programu Microsoft Entra Connect. Upewnij się, że grupy i użytkownicy, do których przypisano uprawnienia na poziomie udziału, nie są nieobsługiwanymi grupami "tylko w chmurze".

  • Usługi Domenowe Microsoft Entra zobacz Przypisywanie uprawnień na poziomie udziału.

Błąd AadDsTenantNotFound podczas włączania uwierzytelniania usług Domenowych Microsoft Entra dla usługi Azure Files "Nie można zlokalizować aktywnych dzierżaw z identyfikatorem dzierżawy Microsoft Entra tenant-id"

Przyczyna

Błąd AadDsTenantNotFound występuje podczas próby włączenia uwierzytelniania usług Microsoft Entra Domain Services dla usługi Azure Files na koncie magazynu, na którym usługi Microsoft Entra Domain Services nie są tworzone w dzierżawie usługi Microsoft Entra skojarzonej subskrypcji.

Rozwiązanie

Włącz usługi Microsoft Entra Domain Services w dzierżawie usługi Microsoft Entra subskrypcji, w ramach których wdrożono twoje konto magazynu. Do utworzenia domeny zarządzanej potrzebne są uprawnienia administratora dzierżawy usługi Microsoft Entra. Jeśli nie jesteś administratorem dzierżawy usługi Microsoft Entra, skontaktuj się z administratorem i postępuj zgodnie ze wskazówkami krok po kroku, aby utworzyć i skonfigurować domenę zarządzaną usług Microsoft Entra Domain Services.

Nie można zainstalować udziałów plików platformy Azure przy użyciu poświadczeń usługi AD

Kroki samodzielnej diagnostyki

Najpierw upewnij się, że wykonaliśmy kroki włączania uwierzytelniania usług Azure Files AD DS.

Po drugie, spróbuj zamiast instalowania udziału plików platformy Azure przy użyciu klucza konta magazynu. Jeśli instalacja udziału nie powiedzie się, pobierz narzędzie AzFileDiagnostics , aby ułatwić zweryfikowanie środowiska uruchamiania klienta. AzFileDiagnostics może wykrywać niezgodne konfiguracje klientów, które mogą powodować niepowodzenie dostępu do usługi Azure Files, udzielać nakazowych wskazówek dotyczących samodzielnego naprawiania i zbierać ślady diagnostyczne.

Po trzecie, możesz uruchomić Debug-AzStorageAccountAuth polecenie cmdlet, aby przeprowadzić zestaw podstawowych testów konfiguracji usługi AD z zalogowanym użytkownikiem usługi AD. To polecenie cmdlet jest obsługiwane w wersji AzFilesHybrid w wersji 0.1.2 lub nowszej. Należy uruchomić to polecenie cmdlet z użytkownikiem usługi AD, który ma uprawnienia właściciela na docelowym koncie magazynu.

$ResourceGroupName = "<resource-group-name-here>"
$StorageAccountName = "<storage-account-name-here>"

Debug-AzStorageAccountAuth `
    -StorageAccountName $StorageAccountName `
    -ResourceGroupName $ResourceGroupName `
    -Verbose

Polecenie cmdlet wykonuje te kontrole w sekwencji i zawiera wskazówki dotyczące błędów:

  1. CheckADObjectPasswordIsCorrect: Upewnij się, że hasło skonfigurowane w tożsamości usługi AD reprezentujące konto magazynu jest zgodne z hasłem kerb1 lub kerb2 konta magazynu. Jeśli hasło jest nieprawidłowe, możesz uruchomić polecenie Update-AzStorageAccountADObjectPassword , aby zresetować hasło.
  2. CheckADObject: Upewnij się, że w usłudze Active Directory istnieje obiekt reprezentujący konto magazynu i ma poprawną nazwę SPN (główną nazwę usługi). Jeśli nazwa SPN nie jest poprawnie skonfigurowana, uruchom Set-AD polecenie cmdlet zwrócone w poleceniu cmdlet debugowania, aby skonfigurować nazwę SPN.
  3. CheckDomainJoined: Sprawdź, czy maszyna kliencka jest przyłączona do domeny w usłudze AD. Jeśli maszyna nie jest przyłączona do domeny w usłudze AD, zapoznaj się z instrukcjami dotyczącymi dołączania komputera do domeny .
  4. CheckPort445Connectivity: Sprawdź, czy port 445 jest otwarty dla połączenia SMB. Jeśli port 445 nie jest otwarty, zapoznaj się z narzędziem do rozwiązywania problemów AzFileDiagnostics , aby uzyskać informacje o problemach z łącznością z usługą Azure Files.
  5. CheckSidHasAadUser: Sprawdź, czy zalogowany użytkownik usługi AD jest zsynchronizowany z identyfikatorem Microsoft Entra. Jeśli chcesz sprawdzić, czy określony użytkownik usługi AD jest zsynchronizowany z identyfikatorem Microsoft Entra, możesz określić -UserName parametry i -Domain w parametrach wejściowych. W przypadku danego identyfikatora SID sprawdza, czy jest skojarzony użytkownik usługi Microsoft Entra.
  6. CheckAadUserHasSid: Sprawdź, czy zalogowany użytkownik usługi AD jest zsynchronizowany z identyfikatorem Microsoft Entra. Jeśli chcesz sprawdzić, czy określony użytkownik usługi AD jest zsynchronizowany z identyfikatorem Microsoft Entra, możesz określić -UserName parametry i -Domain w parametrach wejściowych. Dla danego użytkownika usługi Microsoft Entra sprawdza swój identyfikator SID. Aby uruchomić tę kontrolę, należy podać -ObjectId parametr wraz z identyfikatorem obiektu użytkownika Microsoft Entra.
  7. CheckGetKerberosTicket: Spróbuj pobrać bilet protokołu Kerberos w celu nawiązania połączenia z kontem magazynu. Jeśli nie ma prawidłowego tokenu Protokołu Kerberos, uruchom klist get cifs/storage-account-name.file.core.windows.net polecenie cmdlet i sprawdź kod błędu, aby ustalić przyczynę błędu pobierania biletu.
  8. CheckStorageAccountDomainJoined: Sprawdź, czy uwierzytelnianie usługi AD zostało włączone, a właściwości usługi AD konta są wypełniane. Jeśli nie, włącz uwierzytelnianie usług AD DS w usłudze Azure Files.
  9. CheckUserRbacAssignment: Sprawdź, czy tożsamość usługi AD ma odpowiednie przypisanie roli RBAC, aby zapewnić uprawnienia na poziomie udziału do uzyskiwania dostępu do usługi Azure Files. Jeśli nie, skonfiguruj uprawnienie na poziomie udziału. (Obsługiwane w wersji AzFilesHybrid w wersji 0.2.3 lub nowszej)
  10. CheckUserFileAccess: Sprawdź, czy tożsamość usługi AD ma odpowiednie uprawnienie do katalogów/plików (listy ACL systemu Windows), aby uzyskać dostęp do usługi Azure Files. Jeśli nie, skonfiguruj uprawnienie na poziomie katalogu/pliku. Aby uruchomić to sprawdzanie, należy podać -FilePath parametr wraz ze ścieżką zainstalowanego pliku, do których chcesz debugować dostęp. (Obsługiwane w wersji AzFilesHybrid w wersji 0.2.3 lub nowszej)
  11. CheckAadKerberosRegistryKeyIsOff: Sprawdź, czy klucz rejestru Microsoft Entra Kerberos jest wyłączony. Jeśli klucz jest włączony, uruchom polecenie reg add HKLM\SYSTEM\CurrentControlSet\Control\Lsa\Kerberos\Parameters /v CloudKerberosTicketRetrievalEnabled /t REG_DWORD /d 0 z podwyższonym poziomem uprawnień, aby go wyłączyć, a następnie uruchom ponownie maszynę. (Obsługiwane w wersji AzFilesHybrid w wersji 0.2.9 lub nowszej)

Jeśli chcesz po prostu uruchomić podwybory poprzednich testów, możesz użyć parametru -Filter wraz z rozdzielaną przecinkami listą testów do uruchomienia. Aby na przykład uruchomić wszystkie testy związane z uprawnieniami na poziomie udziału (RBAC), użyj następujących poleceń cmdlet programu PowerShell:

$ResourceGroupName = "<resource-group-name-here>"
$StorageAccountName = "<storage-account-name-here>"

Debug-AzStorageAccountAuth `
    -Filter CheckSidHasAadUser,CheckUserRbacAssignment `
    -StorageAccountName $StorageAccountName `
    -ResourceGroupName $ResourceGroupName `
    -Verbose

Jeśli udział plików jest zainstalowany w programie X:i chcesz uruchomić tylko sprawdzanie związane z uprawnieniami na poziomie pliku (listy ACL systemu Windows), możesz uruchomić następujące polecenia cmdlet programu PowerShell:

$ResourceGroupName = "<resource-group-name-here>"
$StorageAccountName = "<storage-account-name-here>"
$FilePath = "X:\example.txt"

Debug-AzStorageAccountAuth `
    -Filter CheckUserFileAccess `
    -StorageAccountName $StorageAccountName `
    -ResourceGroupName $ResourceGroupName `
    -FilePath $FilePath `
    -Verbose

Nie można zainstalować udziałów plików platformy Azure przy użyciu protokołu Microsoft Entra Kerberos

Kroki samodzielnej diagnostyki

Najpierw upewnij się, że wykonaliśmy kroki , aby włączyć uwierzytelnianie protokołu Kerberos w usłudze Microsoft Entra.

Po drugie, możesz uruchomić Debug-AzStorageAccountAuth polecenie cmdlet, aby wykonać zestaw podstawowych testów. To polecenie cmdlet jest obsługiwane w przypadku kont magazynu skonfigurowanych na potrzeby uwierzytelniania Protokołu Kerberos w usłudze Microsoft Entra w wersji AzFilesHybrid w wersji 0.3.0 lub nowszej.

$ResourceGroupName = "<resource-group-name-here>"
$StorageAccountName = "<storage-account-name-here>"

Debug-AzStorageAccountAuth -StorageAccountName $StorageAccountName -ResourceGroupName $ResourceGroupName -Verbose

Polecenie cmdlet wykonuje te kontrole w sekwencji i zawiera wskazówki dotyczące błędów:

  1. CheckPort445Connectivity: Sprawdź, czy port 445 jest otwarty dla połączenia SMB. Jeśli port 445 nie jest otwarty, użyj narzędzia do rozwiązywania problemów AzFileDiagnostics w przypadku problemów z łącznością z usługą Azure Files.
  2. CheckAADConnectivity: Sprawdź łączność entra. Instalowanie protokołu SMB przy użyciu uwierzytelniania Kerberos może zakończyć się niepowodzeniem, jeśli klient nie może skontaktować się z firmą Entra. Jeśli to sprawdzanie zakończy się niepowodzeniem, oznacza to, że wystąpił błąd sieciowy (być może problem z zaporą lub siecią VPN).
  3. CheckEntraObject: Upewnij się, że w usłudze Entra znajduje się obiekt, który reprezentuje konto magazynu i ma poprawną główną nazwę usługi (SPN). Jeśli nazwa SPN nie jest poprawnie skonfigurowana, wyłącz i ponownie włącz uwierzytelnianie Entra Kerberos na koncie magazynu.
  4. CheckRegKey: Sprawdź, CloudKerberosTicketRetrieval czy klucz rejestru jest włączony. Ten klucz rejestru jest wymagany do uwierzytelniania Entra Kerberos.
  5. CheckRealmMap: Sprawdź, czy użytkownik skonfigurował mapowania obszarów , które dołączą konto do innego obszaru Kerberos niż KERBEROS.MICROSOFTONLINE.COM.
  6. CheckAdminConsent: Sprawdź, czy jednostce usługi Entra udzielono zgody administratora na uprawnienia programu Microsoft Graph wymagane do uzyskania biletu Protokołu Kerberos.

Jeśli chcesz po prostu uruchomić podwybory poprzednich testów, możesz użyć parametru -Filter wraz z rozdzielaną przecinkami listą testów do uruchomienia.

Nie można skonfigurować uprawnień na poziomie katalogu/pliku (listy ACL systemu Windows) za pomocą Eksploratora plików systemu Windows

Objaw

Podczas próby skonfigurowania list ACL systemu Windows za pomocą Eksploratora plików w zainstalowanym udziale plików może wystąpić jeden z objawów opisanych poniżej:

  • Po kliknięciu pozycji Edytuj uprawnienie na karcie Zabezpieczenia kreator uprawnień nie zostanie załadowany.
  • Podczas próby wybrania nowego użytkownika lub grupy lokalizacja domeny nie wyświetla odpowiedniej domeny usług AD DS.
  • Używasz wielu lasów usługi AD i otrzymujesz następujący komunikat o błędzie: "Kontrolery domeny usługi Active Directory wymagane do znalezienia wybranych obiektów w następujących domenach nie są dostępne. Upewnij się, że kontrolery domeny usługi Active Directory są dostępne, i spróbuj ponownie wybrać obiekty.

Rozwiązanie

Zalecamy skonfigurowanie uprawnień na poziomie katalogu/pliku przy użyciu icacls zamiast Eksploratora plików systemu Windows.

Błędy podczas uruchamiania polecenia cmdlet Join-AzStorageAccountForAuth

Błąd: "Usługa katalogowa nie może przydzielić identyfikatora względnego"

Ten błąd może wystąpić, jeśli kontroler domeny z rolą rid master FSMO jest niedostępny lub został usunięty z domeny i przywrócony z kopii zapasowej. Upewnij się, że wszystkie kontrolery domeny są uruchomione i dostępne.

Błąd: "Nie można powiązać parametrów pozycyjnych, ponieważ nie podano żadnych nazw"

Ten błąd jest najprawdopodobniej wyzwalany przez błąd składni w poleceniu Join-AzStorageAccountforAuth . Sprawdź polecenie pod kątem błędów pisowni lub błędów składni i sprawdź, czy zainstalowano najnowszą wersję modułu AzFilesHybrid (https://github.com/Azure-Samples/azure-files-samples/releases).

Obsługa lokalnego uwierzytelniania usług AD DS w usłudze Azure Files dla szyfrowania Kerberos AES-256

Usługa Azure Files obsługuje szyfrowanie protokołu Kerberos AES-256 na potrzeby uwierzytelniania usług AD DS, począwszy od modułu AzFilesHybrid w wersji 0.2.2. AES-256 jest zalecaną metodą szyfrowania i jest to domyślna metoda szyfrowania rozpoczynająca się w module AzFilesHybrid w wersji 0.2.5. Jeśli włączono uwierzytelnianie usług AD DS z wersją modułu niższą niż wersja 0.2.2, musisz pobrać najnowszy moduł AzFilesHybrid i uruchomić program PowerShell poniżej. Jeśli na koncie magazynu nie włączono jeszcze uwierzytelniania usług AD DS, postępuj zgodnie z poniższymi wskazówkami.

Ważna

Jeśli wcześniej używasz szyfrowania RC4 i aktualizujesz konto magazynu w celu korzystania z usługi AES-256, uruchom polecenie klist purge na kliencie, a następnie ponownie zainstaluj udział plików, aby uzyskać nowe bilety Protokołu Kerberos z usługą AES-256.

$ResourceGroupName = "<resource-group-name-here>"
$StorageAccountName = "<storage-account-name-here>"

Update-AzStorageAccountAuthForAES256 -ResourceGroupName $ResourceGroupName -StorageAccountName $StorageAccountName

W ramach aktualizacji polecenie cmdlet będzie obracać klucze Kerberos, co jest niezbędne do przełączenia się na usługę AES-256. Nie ma potrzeby ponownej rotacji, chyba że chcesz ponownie wygenerować oba hasła.

Tożsamość użytkownika, która wcześniej miała przypisanie roli Właściciel lub Współautor, nadal ma dostęp do klucza konta magazynu

Role Właściciel i Współautor konta magazynu umożliwiają wyświetlanie listy kluczy konta magazynu. Klucz konta magazynu umożliwia pełny dostęp do danych konta magazynu, w tym udziałów plików, kontenerów obiektów blob, tabel i kolejek oraz ograniczonego dostępu do operacji zarządzania usługą Azure Files za pośrednictwem starszych interfejsów API zarządzania uwidocznianych za pośrednictwem interfejsu API FileREST. Jeśli zmieniasz przypisania ról, należy wziąć pod uwagę, że użytkownicy usunięci z ról Właściciel lub Współautor mogą nadal utrzymywać dostęp do konta magazynu za pomocą zapisanych kluczy konta magazynu.

Rozwiązanie 1

Ten problem można łatwo rozwiązać, obracając klucze konta magazynu. Zalecamy obracanie kluczy pojedynczo, przełączając dostęp z jednego na drugi podczas ich rotacji. Istnieją dwa typy kluczy udostępnionych udostępnianych przez konto magazynu: klucze konta magazynu, które zapewniają dostęp administratora do danych konta magazynu, oraz klucze Kerberos, które działają jako wspólny wpis tajny między kontem magazynu a kontrolerem domeny usługi Active Directory systemu Windows Server w scenariuszach usługi Active Directory systemu Windows Server.

Aby obrócić klucze Kerberos konta magazynu, zobacz Aktualizowanie hasła tożsamości konta magazynu w usługach AD DS.

Przejdź do żądanego konta magazynu w witrynie Azure Portal. W spisie treści dla żądanego konta magazynu wybierz pozycję Klucze dostępu w obszarze Zabezpieczenia i sieć nagłówek. W okienku Klucz dostępu wybierz pozycję Obróć klucz powyżej żądanego klucza.

Zrzut ekranu przedstawiający okienko

Ustawianie uprawnień interfejsu API dla nowo utworzonej aplikacji

Po włączeniu uwierzytelniania Protokołu Kerberos w usłudze Microsoft Entra musisz jawnie udzielić zgody administratora nowej aplikacji Microsoft Entra zarejestrowanej w dzierżawie usługi Microsoft Entra, aby ukończyć konfigurację. Uprawnienia interfejsu API można skonfigurować w witrynie Azure Portal , wykonując następujące kroki.

  1. Otwórz identyfikator Microsoft Entra.
  2. Wybierz pozycję Rejestracje aplikacji w okienku po lewej stronie.
  3. Wybierz pozycję Wszystkie aplikacje w okienku po prawej stronie.
  4. Wybierz aplikację o nazwie odpowiadającej [Konto magazynu] $storageAccountName.file.core.windows.net.
  5. Wybierz pozycję Uprawnienia interfejsu API w okienku po lewej stronie.
  6. Wybierz pozycję Dodaj uprawnienia w dolnej części strony.
  7. Wybierz pozycję Udziel zgody administratora dla pozycji "DirectoryName".

Potencjalne błędy podczas włączania uwierzytelniania Protokołu Kerberos w usłudze Microsoft Entra dla użytkowników hybrydowych

Podczas włączania uwierzytelniania Microsoft Entra Kerberos dla kont użytkowników hybrydowych mogą wystąpić następujące błędy.

W niektórych przypadkach administrator usługi Microsoft Entra może wyłączyć możliwość udzielania zgody administratora aplikacjom Microsoft Entra. Poniżej znajduje się zrzut ekranu przedstawiający, jak może to wyglądać w witrynie Azure Portal.

Zrzut ekranu przedstawiający blok

W takim przypadku poproś administratora usługi Microsoft Entra o udzielenie zgody administratora na nową aplikację Microsoft Entra. Aby znaleźć i wyświetlić administratorów, wybierz role i administratorów, a następnie wybierz pozycję Administrator aplikacji w chmurze.

Błąd — "Żądanie do usługi Azure AD Graph nie powiodło się z kodem BadRequest"

Przyczyna 1. Zasady zarządzania aplikacjami uniemożliwiają tworzenie poświadczeń

Podczas włączania uwierzytelniania Protokołu Kerberos w usłudze Microsoft Entra może wystąpić ten błąd, jeśli zostaną spełnione następujące warunki:

  1. Używasz funkcji beta/wersji zapoznawczej zasad zarządzania aplikacjami.
  2. Ty (lub administrator) ustawiłeś zasady dla całej dzierżawy , które:
    • Nie ma daty rozpoczęcia lub ma datę rozpoczęcia przed 1 stycznia 2019 r.
    • Ustawia ograniczenie dotyczące haseł jednostki usługi, które nie zezwalają na hasła niestandardowe lub ustawiają maksymalny okres istnienia hasła wynoszący mniej niż 365,5 dni.

Obecnie nie ma obejścia tego błędu.

Przyczyna 2. Aplikacja już istnieje dla konta magazynu

Ten błąd może również wystąpić, jeśli wcześniej włączono uwierzytelnianie protokołu Kerberos w usłudze Microsoft Entra za pomocą ręcznych, ograniczonych kroków w wersji zapoznawczej. Aby usunąć istniejącą aplikację, klient lub jego administrator IT może uruchomić następujący skrypt. Uruchomienie tego skryptu spowoduje usunięcie starej ręcznie utworzonej aplikacji i umożliwienie nowemu środowisku automatycznego tworzenia nowo utworzonej aplikacji i zarządzania nią. Po zainicjowaniu połączenia z programem Microsoft Graph zaloguj się do aplikacji Microsoft Graph Command Line Tools na urządzeniu i przyznaj uprawnienia aplikacji.

$storageAccount = "exampleStorageAccountName"
$tenantId = "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
Install-Module Microsoft.Graph
Import-Module Microsoft.Graph
Connect-MgGraph -TenantId $tenantId -Scopes "User.Read","Application.Read.All"

$application = Get-MgApplication -Filter "DisplayName eq '${storageAccount}'"
if ($null -ne $application) {
   Remove-MgApplication -ObjectId $application.ObjectId
}

Błąd — hasło jednostki usługi wygasło w identyfikatorze Microsoft Entra

Jeśli wcześniej włączono uwierzytelnianie protokołu Kerberos w usłudze Microsoft Entra za pomocą ręcznych, ograniczonych kroków w wersji zapoznawczej, hasło jednostki usługi konta magazynu będzie wygasać co sześć miesięcy. Po wygaśnięciu hasła użytkownicy nie będą mogli pobierać biletów Kerberos do udziału plików.

Aby rozwiązać ten problem, masz dwie opcje: obracanie hasła jednostki usługi w usłudze Microsoft Entra co sześć miesięcy lub wykonanie tych kroków w celu wyłączenia protokołu Kerberos w usłudze Microsoft Entra, usunięcia istniejącej aplikacji i ponownej konfiguracji protokołu Kerberos w usłudze Microsoft Entra.

Pamiętaj, aby zapisać właściwości domeny (domainName i domainGUID) przed wyłączeniem protokołu Kerberos entra firmy Microsoft, ponieważ będą one potrzebne podczas ponownej konfiguracji, jeśli chcesz skonfigurować uprawnienia na poziomie katalogu i pliku przy użyciu Eksploratora plików systemu Windows. Jeśli nie zapisano właściwości domeny, nadal można skonfigurować uprawnienia na poziomie katalogu/pliku przy użyciu icacls jako obejścia.

  1. Wyłączanie protokołu Kerberos w usłudze Microsoft Entra
  2. Usuwanie istniejącej aplikacji
  3. Ponowne konfigurowanie protokołu Kerberos w usłudze Microsoft Entra za pośrednictwem witryny Azure Portal

Po ponownym skonfigurowaniu protokołu Kerberos w usłudze Microsoft Entra nowe środowisko automatycznie utworzy nowo utworzoną aplikację i będzie nią zarządzać.

Jeśli nawiązujesz połączenie z kontem magazynu za pośrednictwem prywatnego punktu końcowego/łącza prywatnego przy użyciu uwierzytelniania Protokołu Kerberos w usłudze Microsoft Entra, podczas próby zainstalowania udziału plików za pośrednictwem net use lub innej metody klient zostanie poproszony o podanie poświadczeń. Użytkownik prawdopodobnie wpisze swoje poświadczenia, ale poświadczenia zostaną odrzucone.

Przyczyna

Dzieje się tak, ponieważ klient SMB próbował użyć protokołu Kerberos, ale nie powiodło się, dlatego wraca do korzystania z uwierzytelniania NTLM, a usługa Azure Files nie obsługuje uwierzytelniania NTLM dla poświadczeń domeny. Klient nie może uzyskać biletu Protokołu Kerberos do konta magazynu, ponieważ nazwa FQDN łącza prywatnego nie jest zarejestrowana w żadnej istniejącej aplikacji Microsoft Entra.

Rozwiązanie

Rozwiązaniem jest dodanie nazwy FQDN privateLink do aplikacji Microsoft Entra konta magazynu przed zainstalowaniem udziału plików. Aby dodać wymagane identyfikatory identifierUris do obiektu aplikacji, wykonaj następujące kroki w witrynie Azure Portal .

  1. Otwórz identyfikator Microsoft Entra.

  2. Wybierz pozycję Rejestracje aplikacji w okienku po lewej stronie.

  3. Wybierz pozycję Wszystkie aplikacje.

  4. Wybierz aplikację o nazwie odpowiadającej [Konto magazynu] $storageAccountName.file.core.windows.net.

  5. Wybierz pozycję Manifest w okienku po lewej stronie.

  6. Skopiuj i wklej istniejącą zawartość, aby mieć zduplikowaną kopię.

  7. Edytuj manifest JSON. Dla każdego <storageAccount>.file.core.windows.net wpisu dodaj odpowiedni <storageAccount>.privatelink.file.core.windows.net wpis. Jeśli na przykład manifest ma następującą wartość dla identifierUriselementu :

    "identifierUris": [
        "api://<tenantId>/HOST/<storageaccount>.file.core.windows.net",
        "api://<tenantId>/CIFS/<storageaccount>.file.core.windows.net",
        "api://<tenantId>/HTTP/<storageaccount>.file.core.windows.net",
        "HOST/<storageaccount>.file.core.windows.net",
        "CIFS/<storageaccount>.file.core.windows.net",
        "HTTP/<storageaccount>.file.core.windows.net"
    ],
    

    Następnie należy edytować identifierUris pole do następujących elementów:

    "identifierUris": [
        "api://<tenantId>/HOST/<storageaccount>.file.core.windows.net",
        "api://<tenantId>/CIFS/<storageaccount>.file.core.windows.net",
        "api://<tenantId>/HTTP/<storageaccount>.file.core.windows.net",
        "HOST/<storageaccount>.file.core.windows.net",
        "CIFS/<storageaccount>.file.core.windows.net",
        "HTTP/<storageaccount>.file.core.windows.net",
    
        "api://<tenantId>/HOST/<storageaccount>.privatelink.file.core.windows.net",
        "api://<tenantId>/CIFS/<storageaccount>.privatelink.file.core.windows.net",
        "api://<tenantId>/HTTP/<storageaccount>.privatelink.file.core.windows.net",
        "HOST/<storageaccount>.privatelink.file.core.windows.net",
        "CIFS/<storageaccount>.privatelink.file.core.windows.net",
        "HTTP/<storageaccount>.privatelink.file.core.windows.net"
    ],
    
  8. Przejrzyj zawartość i wybierz pozycję Zapisz , aby zaktualizować obiekt aplikacji przy użyciu nowego identyfikatoraUris.

  9. Zaktualizuj wszystkie wewnętrzne odwołania DNS, aby wskazywały łącze prywatne.

  10. Spróbuj ponownie przeprowadzić instalowanie udziału.

Błąd AADSTS50105

Żądanie zostało przerwane przez następujący błąd AADSTS50105:

Administrator skonfigurował aplikację "Nazwa aplikacji przedsiębiorstwa" tak, aby blokowała użytkowników, chyba że im przyznano (przypisano) dostęp do aplikacji. Zalogowany użytkownik "{EmailHidden}" jest zablokowany, ponieważ nie jest bezpośrednim członkiem grupy z dostępem ani nie miał dostępu bezpośrednio przypisanego przez administratora. Skontaktuj się z administratorem, aby przypisać dostęp do tej aplikacji.

Przyczyna

Jeśli skonfigurowano "przypisanie wymagane" dla odpowiedniej aplikacji dla przedsiębiorstw, nie będzie można uzyskać biletu Protokołu Kerberos, a dzienniki logowania w usłudze Microsoft Entra będą wyświetlać błąd, nawet jeśli użytkownicy lub grupy są przypisani do aplikacji.

Rozwiązanie

Nie wybieraj pozycji Przypisanie wymagane dla aplikacji Microsoft Entra dla konta magazynu, ponieważ nie wypełniamy uprawnień w bilecie Kerberos zwróconym żądaniu. Aby uzyskać więcej informacji, zobacz Błąd AADSTS50105 — zalogowany użytkownik nie jest przypisany do roli aplikacji.

Zobacz też

Skontaktuj się z nami, aby uzyskać pomoc

Jeśli masz pytania lub potrzebujesz pomocy, utwórz wniosek o pomoc techniczną lub zadaj pytanie w społeczności wsparcia dla platformy Azure. Możesz również przesłać opinię o produkcie do społeczności opinii platformy Azure.