Udostępnij za pośrednictwem


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

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

Dotyczy

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

Błąd podczas uruchamiania modułu AzFilesHybrid

Podczas próby uruchomienia modułu AzFilesHybrid może zostać wyświetlony następujący błąd:

Wymagane uprawnienia nie są przechowywane przez klienta.

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

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

Rozwiązanie

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

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

Podczas próby zainstalowania udziału plików może zostać wyświetlony następujący błąd:

Wystąpił błąd systemowy 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 domena usługi Active Directory 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 problemami innymi 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:

  • domena usługi Active Directory 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órzy zostali zsynchronizowani z usług AD DS do usługi Microsoft Entra ID przy użyciu programu Microsoft Entra Connect Sync lub synchronizacji z chmurą microsoft Entra Connect. Upewnij się, że grupy i użytkownicy przypisani uprawnienia na poziomie udziału nie są nieobsługiwane "tylko w chmurze".

  • Microsoft Entra Domain Services zobacz Przypisywanie uprawnień na poziomie udziału.

Błąd AadDsTenantNotFound podczas włączania uwierzytelniania usług Microsoft Entra Domain Services 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 microsoft Entra skojarzonej subskrypcji.

Rozwiązanie

Włącz usługi Microsoft Entra Domain Services w dzierżawie usługi Microsoft Entra subskrypcji wdrożonej na koncie magazynu. Aby utworzyć domenę zarządzaną, musisz mieć uprawnienia administratora dzierżawy usługi Microsoft Entra. Jeśli nie jesteś administratorem dzierżawy 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 wykonano kroki umożliwiające włączenie uwierzytelniania usługi Azure Files DS.

Następnie spróbuj zainstalować udział 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 działającego środowiska klienta. Narzędzie AzFileDiagnostics może wykrywać niezgodne konfiguracje klienta, które mogą powodować niepowodzenie dostępu do usługi Azure Files, udzielać wskazówek dotyczących samodzielnej poprawki i zbierać ślady diagnostyczne.

Po trzecie, możesz uruchomić Debug-AzStorageAccountAuth polecenie cmdlet, aby przeprowadzić zestaw podstawowych kontroli konfiguracji usługi AD przy użyciu zalogowanego użytkownika usługi AD. To polecenie cmdlet jest obsługiwane w wersji AzFilesHybrid 0.1.2+. Należy uruchomić to polecenie cmdlet z użytkownikiem usługi AD, który ma uprawnienia właściciela do docelowego konta 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 kluczem 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 znajduje się obiekt reprezentujący konto magazynu i ma prawidłową nazwę SPN (nazwę główną usługi). Jeśli nazwa SPN nie jest poprawnie skonfigurowana, uruchom polecenie cmdlet Set-AD zwrócone w poleceniu cmdlet debugowania, aby skonfigurować nazwę SPN.
  3. CheckDomainJoined: Sprawdź, czy maszyna kliencka jest przyłączona do usługi AD. Jeśli maszyna nie jest przyłączona do usługi AD, zapoznaj się z tematem Przyłącz komputer do domeny, aby uzyskać instrukcje dotyczące przyłączania 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 w przypadku problemów z łącznością z usługą Azure Files.
  5. CheckSidHasAadUser: Sprawdź, czy zalogowany użytkownik usługi AD jest synchronizowany z identyfikatorem Entra firmy Microsoft. Jeśli chcesz sprawdzić, czy określony użytkownik usługi AD jest synchronizowany z identyfikatorem Microsoft Entra ID, możesz określić -UserName parametry wejściowe i -Domain . W przypadku danego identyfikatora SID sprawdza, czy istnieje skojarzony użytkownik firmy Microsoft Entra.
  6. CheckAadUserHasSid: Sprawdź, czy zalogowany użytkownik usługi AD jest synchronizowany z identyfikatorem Entra firmy Microsoft. Jeśli chcesz sprawdzić, czy określony użytkownik usługi AD jest synchronizowany z identyfikatorem Microsoft Entra ID, możesz określić -UserName parametry wejściowe i -Domain . Dla danego użytkownika 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: Próba uzyskania biletu 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 określić przyczynę niepowodzenia 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 w celu uzyskania dostępu do usługi Azure Files. Jeśli nie, skonfiguruj uprawnienie na poziomie udziału. (Obsługiwane w wersji AzFilesHybrid 0.2.3+)
  10. CheckUserFileAccess: Sprawdź, czy tożsamość usługi AD ma odpowiednie uprawnienie do katalogu/pliku (listy ACL systemu Windows), aby uzyskać dostęp do usługi Azure Files. Jeśli nie, skonfiguruj uprawnienie na poziomie katalogu/pliku. Aby uruchomić tę kontrolę, należy podać -FilePath parametr wraz ze ścieżką zainstalowanego pliku, do którego chcesz debugować dostęp. (Obsługiwane w wersji AzFilesHybrid 0.2.3+)
  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 wiersza polecenia 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 tylko uruchomić podwybór poprzednich testów, możesz użyć parametru -Filter wraz z rozdzielaną przecinkami listą testów do uruchomienia. Aby na przykład uruchomić wszystkie kontrole 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 jeśli chcesz uruchomić tylko sprawdzanie związane z uprawnieniami na poziomie pliku (list 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 w usłudze Microsoft Entra Kerberos

Kroki samodzielnej diagnostyki

Najpierw upewnij się, że wykonano kroki włączania uwierzytelniania Protokołu Kerberos firmy Microsoft.

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 do uwierzytelniania Protokołu Kerberos firmy Microsoft w programie 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 celu problemów z łącznością z usługą Azure Files.
  2. CheckAADConnectivity: Sprawdź łączność entra. Instalacja protokołu SMB z uwierzytelnianiem Kerberos może zakończyć się niepowodzeniem, jeśli klient nie może nawiązać połączenia z usługą Entra. Jeśli to sprawdzenie nie powiedzie się, oznacza to, że występuje błąd sieci (na przykład problem z zaporą lub siecią VPN).
  3. CheckEntraObject: Upewnij się, że w entra znajduje się obiekt reprezentujący konto magazynu i ma poprawną nazwę główną 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ź, czy CloudKerberosTicketRetrieval klucz rejestru jest włączony. Ten klucz rejestru jest wymagany do uwierzytelniania Protokołu Kerberos w usłudze Entra.
  5. CheckRealmMap: Sprawdź, czy użytkownik skonfigurował mapowania obszaru, które mogłyby dołączyć konto do innego obszaru Protokołu Kerberos niż KERBEROS.MICROSOFTONLINE.COM.
  6. CheckAdminConsent: Sprawdź, czy jednostka usługi Entra została udzielona zgody administratora na uprawnienia programu Microsoft Graph, które są wymagane do uzyskania biletu protokołu Kerberos.
  7. CheckWinHttpAutoProxySvc: sprawdza, czy usługa automatycznego odnajdywania serwera proxy sieci Web WinHTTP (WinHttpAutoProxySvc) jest wymagana do uwierzytelniania protokołu Kerberos firmy Microsoft Entra. Jego stan powinien być ustawiony na Running.
  8. CheckIpHlpScv: sprawdza usługę pomocnika IP (iphlpsvc), która jest wymagana do uwierzytelniania protokołu Kerberos firmy Microsoft. Jego stan powinien być ustawiony na Running.

Jeśli chcesz tylko uruchomić podwybór 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 (list 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ć jedna z sytuacji 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 właściwej 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 są niedostępne. Upewnij się, czy 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 list icacl zamiast używania systemu Windows Eksplorator plików.

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, który posiada rolę FSMO głównego serwera RID, jest niedostępny lub został usunięty z domeny, a następnie 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 nazw”

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

Obsługa uwierzytelniania lokalnego usług AD DS w usłudze Azure Files na potrzeby szyfrowania Kerberos przy użyciu protokołu AES-256

Usługa Azure Files obsługuje szyfrowanie AES-256 Kerberos 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 v0.2.5. Jeśli włączono uwierzytelnianie usług AD DS w wersji starszej niż 0.2.2, musisz pobrać najnowszy moduł AzFilesHybrid i uruchomić poniższy program PowerShell. Jeśli nie włączono jeszcze uwierzytelniania usług AD DS na koncie magazynu, postępuj zgodnie z poniższymi wskazówkami.

Ważne

Jeśli wcześniej używano szyfrowania RC4 i zaktualizować konto magazynu do używania protokołu AES-256, należy uruchomić klist purge go na kliencie, a następnie ponownie zainstalować udział plików, aby uzyskać nowe bilety Protokołu Kerberos za pomocą protokołu AES-256.

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

Update-AzStorageAccountAuthForAES256 -ResourceGroupName $ResourceGroupName -StorageAccountName $StorageAccountName

W ramach aktualizacji polecenie cmdlet spowoduje rotację kluczy Kerberos, co jest niezbędne do przełączenia się na AES-256. Nie trzeba obracać z powrotem, chyba że chcesz ponownie wygenerować oba hasła.

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

Role właściciela i współautora 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ługi Azure Files za pośrednictwem starszych interfejsów API zarządzania udostępnianych za pośrednictwem interfejsu API FileREST. W przypadku zmiany przypisań 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łączanie dostępu z jednego na drugi podczas rotacji. Istnieją dwa typy kluczy udostępnionych udostępnianych przez konto magazynu: klucze konta magazynu, które zapewniają administratorowi dostęp do danych konta magazynu, oraz klucze Kerberos, które działają jako wspólny klucz tajny między kontem magazynu i kontrolerem domeny usługi Active Directory systemu Windows Server dla scenariuszy 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 nagłówku Zabezpieczenia i sieć. 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 Microsoft Entra Kerberos należy jawnie udzielić zgody administratora na nową aplikację Microsoft Entra zarejestrowaną w dzierżawie firmy 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 Microsoft Entra ID.
  2. Wybierz Rejestracje aplikacji w okienku po lewej stronie.
  3. Wybierz pozycję Wszystkie aplikacje w okienku po prawej stronie.
  4. Wybierz aplikację z nazwą zgodną z [ kontem 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 kerberos firmy Microsoft dla użytkowników hybrydowych

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

W niektórych przypadkach administrator firmy Microsoft Entra może wyłączyć możliwość udzielania zgody administratora na aplikacje Firmy 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

Jeśli tak jest, poproś administratora firmy Microsoft Entra o udzielenie zgody administratora na nową aplikację Firmy 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ą utworzenie poświadczeń

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

  1. Używasz funkcji beta/preview 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ę początkową przed 1 stycznia 2019 r.
    • Ustawia ograniczenie dotyczące haseł jednostki usługi, które nie zezwalają na niestandardowe hasła 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 Microsoft Entra Kerberos za pomocą ręcznych ograniczonych kroków w wersji zapoznawczej. Aby usunąć istniejącą aplikację, klient lub administrator IT mogą uruchomić następujący skrypt. Uruchomienie tego skryptu spowoduje usunięcie starej ręcznie utworzonej aplikacji i umożliwi automatyczne tworzenie nowo utworzonej aplikacji i zarządzanie nią. Po zainicjowaniu połączenia z programem Microsoft Graph zaloguj się do aplikacji Microsoft Graph Command Line Tools na urządzeniu i przyznaj aplikacji uprawnienia.

$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 Entra firmy Microsoft

Jeśli wcześniej włączono uwierzytelnianie Protokołu Kerberos firmy Microsoft za pomocą ręcznej ograniczonej wersji zapoznawczej, hasło jednostki usługi konta magazynu jest ustawiane na wygaśnięcie co sześć miesięcy. Po wygaśnięciu hasła użytkownicy nie będą mogli pobierać biletów Protokołu Kerberos do udziału plików.

Aby temu zapobiec, możesz skorzystać z dwóch opcji: rotacji hasła jednostki usługi w usłudze Microsoft Entra co sześć miesięcy lub wykonaj następujące kroki, aby wyłączyć usługę Microsoft Entra Kerberos, usunąć istniejącą aplikację i ponownie skonfigurować usługę Microsoft Entra Kerberos.

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

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

Po ponownym skonfigurowaniu aplikacji Microsoft Entra Kerberos nowe środowisko automatycznie utworzy nowo utworzoną aplikację i będzie nią zarządzać.

Jeśli łączysz się z kontem magazynu za pośrednictwem prywatnego punktu końcowego/łącza prywatnego przy użyciu uwierzytelniania Microsoft Entra Kerberos, podczas próby zainstalowania udziału plików za pośrednictwem net use lub innej metody klient jest monitowany o poświadczenia. Użytkownik prawdopodobnie wpisze swoje poświadczenia, ale poświadczenia zostaną odrzucone.

Przyczyna

Jest to spowodowane tym, że klient SMB próbował użyć protokołu Kerberos, ale zakończył się niepowodzeniem, więc 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 Firmy Microsoft Entra.

Rozwiązanie

Rozwiązaniem jest dodanie nazwy FQDN privateLink do aplikacji Microsoft Entra konta magazynu przed zainstalowaniem udziału plików. Wymagane identyfikatory IdentifierUris można dodać do obiektu aplikacji przy użyciu witryny Azure Portal , wykonując następujące kroki.

  1. Otwórz Microsoft Entra ID.

  2. Wybierz Rejestracje aplikacji w okienku po lewej stronie.

  3. Wybierz pozycję Wszystkie aplikacje.

  4. Wybierz aplikację z nazwą zgodną z [ kontem 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ść:identifierUris

    "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 w następujący sposób:

    "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 nowych identyfikatorówUris.

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

  10. Ponów próbę zainstalowania udziału.

Błąd AADSTS50105

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

Administrator skonfigurował aplikację "Nazwa aplikacji dla przedsiębiorstw", aby blokować użytkowników, chyba że mają oni specjalnie przyznany (przypisany) 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 przypisanego bezpośrednio przez administratora. Skontaktuj się z administratorem, aby przypisać dostęp do tej aplikacji.

Przyczyna

Jeśli skonfigurujesz "wymagane przypisanie" dla odpowiedniej aplikacji dla przedsiębiorstw, nie będzie można uzyskać biletu protokołu Kerberos, a dzienniki logowania firmy Microsoft Entra będą wyświetlać błąd, mimo że 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 protokołu Kerberos, który jest zwracany z powrotem do osoby żądającej. 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 pomoc techniczną społeczności platformy Azure. Możesz również przesłać opinię o produkcie do społeczności opinii na temat platformy Azure.