Zarządzanie istniejącymi użytkownikami aplikacji — Microsoft PowerShell
Istnieją trzy typowe scenariusze, w których konieczne jest wypełnienie identyfikatora Entra firmy Microsoft istniejącymi użytkownikami aplikacji przed użyciem aplikacji z funkcją Zarządzanie tożsamością Microsoft Entra, taką jak przeglądy dostępu.
Wymagania dotyczące licencji
Korzystanie z tej funkcji wymaga licencji Microsoft Entra ID Governance lub Microsoft Entra Suite. Aby znaleźć odpowiednią licencję dla wymagań, zobacz Zarządzanie tożsamością Microsoft Entra podstawy licencjonowania.
Aplikacja została przeniesiona do Microsoft Entra ID po użyciu własnego dostawcy tożsamości.
W pierwszym scenariuszu aplikacja już istnieje w środowisku. Wcześniej aplikacja korzystała z własnego dostawcy tożsamości lub magazynu danych w celu śledzenia użytkowników, którzy mieli dostęp.
Gdy zmienisz aplikację tak, aby polegała na identyfikatorze Entra firmy Microsoft, tylko użytkownicy, którzy znajdują się w identyfikatorze Entra firmy Microsoft i zezwolili na dostęp do tej aplikacji, mogą uzyskać do niej dostęp. W ramach tej zmiany konfiguracji możesz przenieść istniejących użytkowników z magazynu danych tej aplikacji do identyfikatora Entra firmy Microsoft. Ci użytkownicy nadal mają dostęp za pośrednictwem identyfikatora Entra firmy Microsoft.
Posiadanie użytkowników skojarzonych z aplikacją reprezentowaną w usłudze Microsoft Entra ID umożliwi usłudze Microsoft Entra ID śledzenie użytkowników, którzy mają dostęp do aplikacji, mimo że ich relacje z aplikacją pochodzą z innego miejsca. Na przykład relacja mogła pochodzić z bazy danych lub katalogu aplikacji.
Gdy identyfikator Entra firmy Microsoft jest świadomy przypisania użytkownika, może wysyłać aktualizacje do magazynu danych aplikacji. Aktualizacje obejmują zmianę atrybutów tego użytkownika lub wyjście użytkownika z zakresu aplikacji.
Aplikacja, która nie używa identyfikatora Entra firmy Microsoft jako jedynego dostawcy tożsamości
W drugim scenariuszu aplikacja nie korzysta wyłącznie z identyfikatora Entra firmy Microsoft jako dostawcy tożsamości.
W niektórych przypadkach aplikacja może polegać na grupach usługi AD (Active Directory). W tym scenariuszu opisano wzorzec B w Przygotowywaniu do przeglądu dostępu użytkowników do aplikacji. Nie musisz konfigurować udostępniania dla tej aplikacji, zgodnie z opisem w tym artykule. Zamiast tego, postępuj według instrukcji dla wzorca B w tym artykule, aby dowiedzieć się, jak przeglądać członkostwo w grupach Active Directory (AD).
W innych przypadkach aplikacja może obsługiwać wielu dostawców tożsamości lub mieć własny wbudowany magazyn poświadczeń. W tym scenariuszu opisano Pattern C w Przygotowanie do przeglądu dostępu użytkowników do aplikacji.
Usunięcie innych dostawców tożsamości lub lokalnego uwierzytelniania poświadczeń z aplikacji może nie być możliwe. Jeśli w takim przypadku chcesz użyć identyfikatora Entra firmy Microsoft, aby sprawdzić, kto ma dostęp do tej aplikacji, lub usunąć dostęp innej osoby z tej aplikacji, musisz utworzyć przypisania w identyfikatorze Entra firmy Microsoft, które reprezentują użytkowników aplikacji, którzy nie korzystają z identyfikatora Entra firmy Microsoft na potrzeby uwierzytelniania.
Posiadanie tych zadań jest konieczne, jeśli planujesz przejrzeć wszystkich użytkowników z dostępem do aplikacji jako część przeglądu dostępu.
Załóżmy na przykład, że użytkownik znajduje się w magazynie danych aplikacji. Identyfikator Entra firmy Microsoft jest skonfigurowany do wymagania przypisań ról do aplikacji. Jednak użytkownik nie ma przypisania roli aplikacji w identyfikatorze Entra firmy Microsoft.
Jeśli użytkownik zostanie zaktualizowany w identyfikatorze Entra firmy Microsoft, żadne zmiany nie zostaną wysłane do aplikacji. A jeśli przypisania ról aplikacji zostaną przejrzyone, użytkownik nie zostanie uwzględniony w przeglądzie. Aby wszyscy użytkownicy byli uwzględnieni w przeglądzie, konieczne jest, aby wszyscy mieli przypisane role w aplikacji.
Aplikacja nie używa identyfikatora Entra firmy Microsoft jako dostawcy tożsamości ani nie obsługuje aprowizacji
W przypadku niektórych starszych aplikacji może nie być możliwe usunięcie innych dostawców tożsamości lub lokalnego uwierzytelniania poświadczeń z aplikacji lub włączenie obsługi protokołów aprowizacji dla tych aplikacji.
Ten scenariusz aplikacji, która nie obsługuje protokołów aprowizacji, jest omówiony w osobnym artykule Zarządzanie istniejącymi użytkownikami aplikacji, która nie obsługuje aprowizacji.
Terminologia
W tym artykule przedstawiono proces zarządzania przypisaniami ról aplikacji przy użyciu poleceń cmdlet PowerShell programu Microsoft Graph. Używa on następującej terminologii programu Microsoft Graph.
W identyfikatorze Entra firmy Microsoft jednostka usługi (ServicePrincipal
) reprezentuje aplikację w katalogu określonej organizacji.
ServicePrincipal
ma właściwość o nazwie AppRoles
, która wyświetla listę ról, które obsługuje aplikacja, takich jak Marketing specialist
.
AppRoleAssignment
łączy użytkownika z jednostką usługi i określa, która rola użytkownika ma w tej aplikacji. Aplikacja może mieć więcej niż jedną jednostkę usługi, jeśli logowanie jednokrotne do aplikacji i aprowizowanie aplikacji jest obsługiwane oddzielnie.
Możesz również używać pakietów dostępu do zarządzania upoważnieniami firmy Microsoft w celu udzielenia użytkownikom ograniczonego czasowo dostępu do aplikacji. W zarządzaniu upoważnieniami AccessPackage
zawiera co najmniej jedną rolę zasobu, potencjalnie z wielu jednostek usługi.
AccessPackage
ma również przypisania (Assignment
) dla użytkowników pakietu dostępu.
Podczas tworzenia przypisania użytkownika do pakietu dostępu, zarządzanie uprawnieniami Microsoft Entra automatycznie tworzy niezbędne wystąpienia AppRoleAssignment
dla każdej jednostki usługi aplikacji w pakiecie dostępu. Aby uzyskać więcej informacji, zobacz samouczek Zarządzanie dostępem do zasobów w usłudze Microsoft Entra entitlement management dotyczący tworzenia pakietów dostępu za pomocą programu PowerShell.
Zanim rozpoczniesz
Musisz mieć jedną z następujących licencji w dzierżawie:
- Microsoft Entra ID P2 lub Microsoft Entra ID Governance
- Licencja enterprise Mobility + Security E5
Musisz mieć odpowiednią rolę administracyjną. Jeśli po raz pierwszy wykonujesz te kroki, musisz mieć rolę administratora globalnego, aby autoryzować korzystanie z Microsoft Graph PowerShell w Twojej dzierżawie.
Aplikacja wymaga co najmniej jednej jednostki usługi w dzierżawie:
- Jeśli aplikacja używa katalogu LDAP, postępuj zgodnie z przewodnikiem konfigurowania Microsoft Entra ID w celu wdrażania użytkowników do katalogów LDAP, aby pobrać, zainstalować i skonfigurować pakiet Microsoft Entra Connect Provisioning Agent.
- Jeśli aplikacja korzysta z bazy danych SQL, postępuj zgodnie z przewodnikiem konfigurowania identyfikatora Entra firmy Microsoft, aby aprowizować użytkowników w aplikacjach opartych na języku SQL za pośrednictwem sekcji pobierania, instalowania i konfigurowania pakietu microsoft Entra Connect Provisioning Agent.
- Jeśli aplikacja korzysta z usług SAP Cloud Identity Services lub jest aplikacją w chmurze, która obsługuje protokół SCIM, a aplikacja nie jest jeszcze skonfigurowana w dzierżawie, w dalszej części tego przewodnika zarejestrujesz aplikację z galerii aplikacji.
- Jeśli aplikacja jest lokalna i obsługuje protokół SCIM, postępuj zgodnie z przewodnikiem konfigurowania identyfikatora Entra firmy Microsoft, aby aprowizować użytkowników w lokalnych aplikacjach opartych na protokole SCIM.
Zbieranie istniejących użytkowników z aplikacji
Pierwszym krokiem w kierunku upewnienia się, że wszyscy użytkownicy są zarejestrowani w usłudze Microsoft Entra ID, jest zebranie listy istniejących użytkowników, którzy mają dostęp do aplikacji.
Niektóre aplikacje mogą mieć wbudowane polecenie umożliwiające wyeksportowanie listy bieżących użytkowników z magazynu danych. W innych przypadkach aplikacja może polegać na zewnętrznym katalogu lub bazie danych.
W niektórych środowiskach aplikacja może znajdować się w segmencie sieci lub systemie, który nie jest odpowiedni do zarządzania dostępem do identyfikatora Entra firmy Microsoft. Dlatego może być konieczne wyodrębnienie listy użytkowników z tego katalogu lub bazy danych, a następnie przeniesienie go jako pliku do innego systemu, który może być używany na potrzeby interakcji firmy Microsoft Entra.
W tej sekcji opisano cztery podejścia do pobierania listy użytkowników w pliku wartości rozdzielanych przecinkami (CSV):
- Z katalogu LDAP
- Z bazy danych programu SQL Server
- Z innej bazy danych opartej na języku SQL
- Z usługi SAP Cloud Identity Services
Zbieranie istniejących użytkowników z aplikacji korzystającej z katalogu LDAP
Ta sekcja dotyczy aplikacji, które używają katalogu LDAP jako podstawowego magazynu danych dla użytkowników, którzy nie uwierzytelniają się w usłudze Microsoft Entra ID. Wiele katalogów LDAP, takich jak usługa Active Directory, zawiera polecenie, które generuje listę użytkowników.
Zidentyfikuj, którzy z użytkowników w tym katalogu są potencjalnymi użytkownikami aplikacji. Ten wybór będzie zależeć od konfiguracji aplikacji. W przypadku niektórych aplikacji każdy użytkownik, który istnieje w katalogu LDAP, jest prawidłowym użytkownikiem. Inne aplikacje mogą wymagać od użytkownika posiadania określonego atrybutu lub być członkiem grupy w tym katalogu.
Uruchom polecenie, które pobiera ten podzbiór użytkowników z katalogu. Upewnij się, że dane wyjściowe zawierają atrybuty użytkowników, które będą używane do dopasowywania do identyfikatora Entra firmy Microsoft. Przykłady tych atrybutów to identyfikator pracownika, nazwa konta i adres e-mail.
Na przykład to polecenie spowoduje utworzenie pliku CSV w bieżącym katalogu systemu plików z atrybutem
userPrincipalName
każdej osoby w katalogu LDAP:$out_filename = ".\users.csv" csvde -f $out_filename -l userPrincipalName,cn -r "(objectclass=person)"
W razie potrzeby przenieś plik CSV zawierający listę użytkowników do systemu przy użyciu zainstalowanych poleceń cmdlet programu PowerShell programu Microsoft Graph.
Kontynuuj czytanie w sekcji Potwierdzenie, że identyfikator Microsoft Entra ma użytkowników zgodnych z użytkownikami aplikacji w dalszej części tego artykułu.
Zbieranie istniejących użytkowników z tabeli bazy danych aplikacji przy użyciu kreatora programu SQL Server
Ta sekcja dotyczy aplikacji korzystających z programu SQL Server jako bazowego magazynu danych.
Najpierw pobierz listę użytkowników z tabel. Większość baz danych umożliwia eksportowanie zawartości tabel do standardowego formatu pliku, takiego jak plik CSV. Jeśli aplikacja używa bazy danych programu SQL Server, możesz użyć Kreatora importu i eksportu programu SQL Server do wyeksportowania części bazy danych. Jeśli nie masz narzędzia dla bazy danych, możesz użyć sterownika ODBC z programem PowerShell, zgodnie z opisem w następnej sekcji.
- Zaloguj się do systemu, w którym jest zainstalowany program SQL Server.
- Otwórz program SQL Server 2019 Import and Export (64 bit) lub odpowiednik bazy danych.
- Wybierz istniejącą bazę danych jako źródło.
- Wybierz Lokalizację docelową pliku prostego jako miejsce docelowe. Podaj nazwę pliku i zmień wartość strony kodowej na 65001 (UTF-8).
- Zakończ działanie kreatora i wybierz opcję natychmiastowego uruchomienia.
- Poczekaj na zakończenie wykonywania.
- W razie potrzeby przenieś plik CSV zawierający listę użytkowników do systemu przy użyciu zainstalowanych poleceń cmdlet programu PowerShell programu Microsoft Graph.
- Kontynuuj czytanie w sekcji Potwierdzanie, że identyfikator Microsoft Entra ma użytkowników zgodnych z użytkownikami z aplikacji w dalszej części tego artykułu.
Zbieranie istniejących użytkowników z tabeli bazy danych aplikacji przy użyciu programu PowerShell
Ta sekcja dotyczy aplikacji, które używają innej bazy danych SQL jako bazowego magazynu danych, w którym używasz hosta łącznika ECMA do aprowizowania użytkowników w tej aplikacji. Jeśli agent aprowizacji nie został jeszcze skonfigurowany, użyj tego przewodnika, aby utworzyć plik połączenia DSN, którego użyjesz w tej sekcji.
Zaloguj się do systemu, w którym znajduje się agent aprowizacji lub zostanie zainstalowany.
Otwórz program PowerShell.
Skonstruuj parametry połączenia na potrzeby nawiązywania połączenia z systemem bazy danych.
Elementy łańcucha połączenia zależą od wymagań bazy danych. Jeśli używasz programu SQL Server, zobacz listę słów kluczowych i atrybutów DSN oraz parametrów połączenia.
Jeśli używasz innej bazy danych, musisz uwzględnić obowiązkowe słowa kluczowe służące do nawiązywania połączenia z bazą danych. Jeśli na przykład baza danych używa w pełni kwalifikowanej nazwy ścieżki pliku DSN, identyfikatora użytkownika i hasła, skonstruuj parametry połączenia przy użyciu następujących poleceń:
$filedsn = "c:\users\administrator\documents\db.dsn" $db_cs = "filedsn=" + $filedsn + ";uid=p;pwd=secret"
Otwórz połączenie z bazą danych i podaj parametry połączenia przy użyciu następujących poleceń:
$db_conn = New-Object data.odbc.OdbcConnection $db_conn.ConnectionString = $db_cs $db_conn.Open()
Napisz zapytanie SQL, aby pobrać użytkowników z tabeli bazy danych. Pamiętaj, aby uwzględnić kolumny, które będą używane do dopasowania użytkowników do bazy danych aplikacji z tymi użytkownikami w identyfikatorze Entra firmy Microsoft. Kolumny mogą zawierać identyfikator pracownika, nazwę konta lub adres e-mail.
Jeśli na przykład użytkownicy znajdują się w tabeli bazy danych o nazwie
USERS
zawierającej kolumnyname
iemail
, wprowadź następujące polecenie:$db_query = "SELECT name,email from USERS"
Wyślij zapytanie do bazy danych za pośrednictwem połączenia:
$result = (new-object data.odbc.OdbcCommand($db_query,$db_conn)).ExecuteReader() $table = new-object System.Data.DataTable $table.Load($result)
Wynikiem jest lista wierszy reprezentujących użytkowników, którzy zostali pobrani z zapytania.
Zapisz wynik w pliku CSV:
$out_filename = ".\users.csv" $table.Rows | Export-Csv -Path $out_filename -NoTypeInformation -Encoding UTF8
Jeśli ten system nie ma zainstalowanych cmdletów programu Microsoft Graph PowerShell lub nie ma łączności z Microsoft Entra ID, przenieś plik CSV zawierający listę użytkowników do systemu z zainstalowanymi cmdletami programu Microsoft Graph PowerShell.
Zbieranie istniejących użytkowników z usług SAP Cloud Identity Services
Ta sekcja dotyczy aplikacji SAP korzystających z usług SAP Cloud Identity Services jako podstawowej usługi na potrzeby aprowizacji użytkowników.
- Zaloguj się do konsoli administracyjnej usług SAP Cloud Identity Services,
https://<tenantID>.accounts.ondemand.com/admin
lubhttps://<tenantID>.trial-accounts.ondemand.com/admin
, jeśli jest to wersja próbna. - Przejdź do pozycji Użytkownicy i autoryzacje > Eksportuj użytkowników.
- Wybierz wszystkie atrybuty wymagane do dopasowania użytkowników firmy Microsoft Entra z tymi w oprogramowaniu SAP. Obejmuje to
SCIM ID
,userName
,emails
oraz inne atrybuty, które mogą być używane w systemach SAP. - Wybierz pozycję Eksportuj i poczekaj na pobranie pliku CSV w przeglądarce.
- Jeśli ten system nie ma zainstalowanych cmdletów Microsoft Graph PowerShell lub nie ma łączności z Microsoft Entra ID, przenieś plik CSV zawierający listę użytkowników do systemu z zainstalowanymi cmdletami Microsoft Graph PowerShell.
Potwierdź, że identyfikator Entra firmy Microsoft ma użytkowników, którzy są zgodni z użytkownikami z aplikacji
Teraz, gdy masz listę wszystkich użytkowników uzyskanych z aplikacji, dopasujesz tych użytkowników z magazynu danych aplikacji z użytkownikami w usłudze Microsoft Entra ID.
Przed kontynuowaniem przejrzyj informacje dotyczące pasujących użytkowników w systemach źródłowych i docelowych. Następnie skonfigurujesz udostępnianie Microsoft Entra z użyciem równoważnych mapowań. Ten krok umożliwi aprowizację Microsoft Entra, aby wykonywać zapytania dotyczące magazynu danych aplikacji przy użyciu tych samych reguł dopasowania.
Pobierz identyfikatory użytkowników w Microsoft Entra ID
W tej sekcji przedstawiono, jak korzystać z Microsoft Entra ID za pomocą poleceń cmdlet programu Microsoft Graph PowerShell.
Po raz pierwszy, gdy twoja organizacja używa tych poleceń cmdlet w tym scenariuszu, musisz pełnić rolę administratora globalnego, aby zezwolić programowi Microsoft Graph PowerShell na używanie go w dzierżawie. Kolejne interakcje mogą używać roli o niższych uprawnieniach, na przykład:
- Administrator użytkowników, jeśli przewidujesz tworzenie nowych użytkowników.
- Administrator aplikacji lub Administrator zarządzania tożsamościami, jeśli zarządzasz przypisaniami ról aplikacji.
Otwórz program PowerShell.
Jeśli nie masz już zainstalowanych modułów programu PowerShell programu Microsoft Graph, zainstaluj
Microsoft.Graph.Users
moduł i inne za pomocą tego polecenia:Install-Module Microsoft.Graph
Jeśli masz już zainstalowane moduły, upewnij się, że używasz najnowszej wersji:
Update-Module microsoft.graph.users,microsoft.graph.identity.governance,microsoft.graph.applications
Połącz się z identyfikatorem Entra firmy Microsoft:
$msg = Connect-MgGraph -ContextScope Process -Scopes "User.ReadWrite.All,Application.ReadWrite.All,AppRoleAssignment.ReadWrite.All,EntitlementManagement.ReadWrite.All"
Jeśli używasz tego polecenia po raz pierwszy, może być konieczne wyrażenie zgody na zezwolenie narzędziom wiersza polecenia programu Microsoft Graph na te uprawnienia.
Przeczytaj listę użytkowników uzyskanych z magazynu danych aplikacji do sesji programu PowerShell. Jeśli lista użytkowników znajdowała się w pliku CSV, możesz użyć polecenia cmdlet
Import-Csv
programu PowerShell i podać nazwę pliku z poprzedniej sekcji jako argument.Jeśli na przykład plik uzyskany z usług SAP Cloud Identity Services nosi nazwę Users-exported-from-sap.csv i znajduje się w bieżącym katalogu, wprowadź to polecenie.
$filename = ".\Users-exported-from-sap.csv" $dbusers = Import-Csv -Path $filename -Encoding UTF8
W innym przykładzie, jeśli używasz bazy danych lub katalogu, jeśli plik ma nazwę users.csv i znajduje się w bieżącym katalogu, wprowadź następujące polecenie:
$filename = ".\users.csv" $dbusers = Import-Csv -Path $filename -Encoding UTF8
Wybierz kolumnę z pliku users.csv, która będzie zgodna z atrybutem użytkownika w usłudze Microsoft Entra ID.
Jeśli używasz usług SAP Cloud Identity Services, domyślne mapowanie to atrybut SAP SCIM
userName
z atrybutem Microsoft Entra IDuserPrincipalName
.$db_match_column_name = "userName" $azuread_match_attr_name = "userPrincipalName"
Dla innego przykładu, jeśli używasz bazy danych lub katalogu, możesz mieć użytkowników w bazie danych, gdzie wartość w kolumnie o nazwie
EMail
jest taka sama jak w atrybucie Microsoft EntrauserPrincipalName
.$db_match_column_name = "EMail" $azuread_match_attr_name = "userPrincipalName"
Pobierz identyfikatory tych użytkowników w identyfikatorze Entra firmy Microsoft.
Poniższy skrypt programu PowerShell używa wartości
$dbusers
,$db_match_column_name
i$azuread_match_attr_name
określonych wcześniej. Spowoduje to wysłanie zapytania do identyfikatora Entra firmy Microsoft w celu zlokalizowania użytkownika, który ma atrybut z pasującą wartością dla każdego rekordu w pliku źródłowym. Jeśli w pliku uzyskanym ze źródłowej usługi SAP Cloud Identity Services, bazy danych lub katalogu istnieje wiele użytkowników, ten skrypt może potrwać kilka minut. Jeśli nie masz atrybutu o określonej wartości w Microsoft Entra ID i musisz użyćcontains
lub innego wyrażenia filtru, musisz dostosować ten skrypt, a następnie ten w kroku 11 poniżej, aby użyć innego wyrażenia filtru.$dbu_not_queried_list = @() $dbu_not_matched_list = @() $dbu_match_ambiguous_list = @() $dbu_query_failed_list = @() $azuread_match_id_list = @() $azuread_not_enabled_list = @() $dbu_values = @() $dbu_duplicate_list = @() foreach ($dbu in $dbusers) { if ($null -ne $dbu.$db_match_column_name -and $dbu.$db_match_column_name.Length -gt 0) { $val = $dbu.$db_match_column_name $escval = $val -replace "'","''" if ($dbu_values -contains $escval) { $dbu_duplicate_list += $dbu; continue } else { $dbu_values += $escval } $filter = $azuread_match_attr_name + " eq '" + $escval + "'" try { $ul = @(Get-MgUser -Filter $filter -All -Property Id,accountEnabled -ErrorAction Stop) if ($ul.length -eq 0) { $dbu_not_matched_list += $dbu; } elseif ($ul.length -gt 1) {$dbu_match_ambiguous_list += $dbu } else { $id = $ul[0].id; $azuread_match_id_list += $id; if ($ul[0].accountEnabled -eq $false) {$azuread_not_enabled_list += $id } } } catch { $dbu_query_failed_list += $dbu } } else { $dbu_not_queried_list += $dbu } }
Wyświetl wyniki poprzednich zapytań. Sprawdź, czy którykolwiek z użytkowników w usługach SAP Cloud Identity Services, bazie danych lub katalogu nie może znajdować się w identyfikatorze Entra firmy Microsoft z powodu błędów lub brakujących dopasowań.
Poniższy skrypt programu PowerShell wyświetli liczbę rekordów, które nie zostały zlokalizowane:
$dbu_not_queried_count = $dbu_not_queried_list.Count if ($dbu_not_queried_count -ne 0) { Write-Error "Unable to query for $dbu_not_queried_count records as rows lacked values for $db_match_column_name." } $dbu_duplicate_count = $dbu_duplicate_list.Count if ($dbu_duplicate_count -ne 0) { Write-Error "Unable to locate Microsoft Entra ID users for $dbu_duplicate_count rows as multiple rows have the same value" } $dbu_not_matched_count = $dbu_not_matched_list.Count if ($dbu_not_matched_count -ne 0) { Write-Error "Unable to locate $dbu_not_matched_count records in Microsoft Entra ID by querying for $db_match_column_name values in $azuread_match_attr_name." } $dbu_match_ambiguous_count = $dbu_match_ambiguous_list.Count if ($dbu_match_ambiguous_count -ne 0) { Write-Error "Unable to locate $dbu_match_ambiguous_count records in Microsoft Entra ID as attribute match ambiguous." } $dbu_query_failed_count = $dbu_query_failed_list.Count if ($dbu_query_failed_count -ne 0) { Write-Error "Unable to locate $dbu_query_failed_count records in Microsoft Entra ID as queries returned errors." } $azuread_not_enabled_count = $azuread_not_enabled_list.Count if ($azuread_not_enabled_count -ne 0) { Write-Error "$azuread_not_enabled_count users in Microsoft Entra ID are blocked from sign-in." } if ($dbu_not_queried_count -ne 0 -or $dbu_duplicate_count -ne 0 -or $dbu_not_matched_count -ne 0 -or $dbu_match_ambiguous_count -ne 0 -or $dbu_query_failed_count -ne 0 -or $azuread_not_enabled_count) { Write-Output "You will need to resolve those issues before access of all existing users can be reviewed." } $azuread_match_count = $azuread_match_id_list.Count Write-Output "Users corresponding to $azuread_match_count records were located in Microsoft Entra ID."
Po zakończeniu działania skryptu będzie on wskazywać błąd, jeśli jakiekolwiek rekordy ze źródła danych nie znajdowały się w identyfikatorze Entra firmy Microsoft. Jeśli nie wszystkie rekordy użytkowników z magazynu danych aplikacji mogą znajdować się jako użytkownicy w usłudze Microsoft Entra ID, należy zbadać, które rekordy nie są zgodne i dlaczego.
Na przykład adres e-mail użytkownika oraz nazwa użytkownika mogły zostać zmienione w systemie Microsoft Entra ID bez aktualizacji odpowiednich
mail
właściwości w źródle danych aplikacji. Lub użytkownik mógł już opuścił organizację, ale nadal znajduje się w źródle danych aplikacji. Może też istnieć konto dostawcy lub administratora w źródle danych aplikacji, które nie odpowiada żadnej konkretnej osobie w identyfikatorze Entra firmy Microsoft.Jeśli są użytkownicy, których nie można zlokalizować w Microsoft Entra ID lub którzy nie są aktywni i nie mogą się zalogować, ale chcesz, aby ich dostęp został przejrzany lub atrybuty zaktualizowane w usługach SAP Cloud Identity Services, bazie danych lub katalogu, musisz zaktualizować aplikację, regułę dopasowania lub zaktualizować bądź utworzyć dla nich użytkowników w Microsoft Entra. Aby uzyskać więcej informacji na temat wprowadzania zmian, zobacz Zarządzanie mapowaniami i kontami użytkowników w aplikacjach, które nie są zgodne z użytkownikami w identyfikatorze Entra firmy Microsoft.
Jeśli wybierzesz opcję tworzenia użytkowników w usłudze Microsoft Entra ID, możesz utworzyć użytkowników zbiorczo przy użyciu jednego z następujących elementów:
- Plik CSV, zgodnie z opisem w artykule Zbiorcze tworzenie użytkowników w centrum administracyjnym firmy Microsoft Entra
- Polecenie cmdlet New-MgUser
Upewnij się, że ci nowi użytkownicy są wypełniani atrybutami wymaganymi przez identyfikator Entra firmy Microsoft, aby później dopasować je do istniejących użytkowników w aplikacji, oraz atrybuty wymagane przez identyfikator Entra firmy Microsoft, w tym
userPrincipalName
mailNickname
, idisplayName
. ElementuserPrincipalName
musi być unikatowy dla wszystkich użytkowników w katalogu.Możesz na przykład mieć użytkowników w bazie danych, w której wartość w kolumnie o nazwie
EMail
jest wartością, której chcesz użyć jako głównej nazwy użytkownika Microsoft Entra, wartość w kolumnieAlias
zawiera pseudonim poczty Microsoft Entra ID, a wartość w kolumnieFull name
zawiera nazwę wyświetlaną użytkownika:$db_display_name_column_name = "Full name" $db_user_principal_name_column_name = "Email" $db_mail_nickname_column_name = "Alias"
Następnie możesz użyć tego skryptu, aby utworzyć użytkowników usługi Microsoft Entra dla użytkowników w usługach SAP Cloud Identity Services, bazie danych lub katalogu, który nie był zgodny z użytkownikami w usłudze Microsoft Entra ID. Należy pamiętać, że może być konieczne zmodyfikowanie tego skryptu, aby dodać dodatkowe atrybuty Microsoft Entra potrzebne w Twojej organizacji, lub jeśli
$azuread_match_attr_name
nie jest animailNickname
, aniuserPrincipalName
, aby zapewnić ten atrybut Entra.$dbu_missing_columns_list = @() $dbu_creation_failed_list = @() foreach ($dbu in $dbu_not_matched_list) { if (($null -ne $dbu.$db_display_name_column_name -and $dbu.$db_display_name_column_name.Length -gt 0) -and ($null -ne $dbu.$db_user_principal_name_column_name -and $dbu.$db_user_principal_name_column_name.Length -gt 0) -and ($null -ne $dbu.$db_mail_nickname_column_name -and $dbu.$db_mail_nickname_column_name.Length -gt 0)) { $params = @{ accountEnabled = $false displayName = $dbu.$db_display_name_column_name mailNickname = $dbu.$db_mail_nickname_column_name userPrincipalName = $dbu.$db_user_principal_name_column_name passwordProfile = @{ Password = -join (((48..90) + (96..122)) * 16 | Get-Random -Count 16 | % {[char]$_}) } } try { New-MgUser -BodyParameter $params } catch { $dbu_creation_failed_list += $dbu; throw } } else { $dbu_missing_columns_list += $dbu } }
Po dodaniu wszystkich brakujących użytkowników do identyfikatora Entra firmy Microsoft ponownie uruchom skrypt z kroku 7. Następnie uruchom skrypt z kroku 8. Sprawdź, czy nie zgłoszono żadnych błędów.
$dbu_not_queried_list = @() $dbu_not_matched_list = @() $dbu_match_ambiguous_list = @() $dbu_query_failed_list = @() $azuread_match_id_list = @() $azuread_not_enabled_list = @() $dbu_values = @() $dbu_duplicate_list = @() foreach ($dbu in $dbusers) { if ($null -ne $dbu.$db_match_column_name -and $dbu.$db_match_column_name.Length -gt 0) { $val = $dbu.$db_match_column_name $escval = $val -replace "'","''" if ($dbu_values -contains $escval) { $dbu_duplicate_list += $dbu; continue } else { $dbu_values += $escval } $filter = $azuread_match_attr_name + " eq '" + $escval + "'" try { $ul = @(Get-MgUser -Filter $filter -All -Property Id,accountEnabled -ErrorAction Stop) if ($ul.length -eq 0) { $dbu_not_matched_list += $dbu; } elseif ($ul.length -gt 1) {$dbu_match_ambiguous_list += $dbu } else { $id = $ul[0].id; $azuread_match_id_list += $id; if ($ul[0].accountEnabled -eq $false) {$azuread_not_enabled_list += $id } } } catch { $dbu_query_failed_list += $dbu } } else { $dbu_not_queried_list += $dbu } } $dbu_not_queried_count = $dbu_not_queried_list.Count if ($dbu_not_queried_count -ne 0) { Write-Error "Unable to query for $dbu_not_queried_count records as rows lacked values for $db_match_column_name." } $dbu_duplicate_count = $dbu_duplicate_list.Count if ($dbu_duplicate_count -ne 0) { Write-Error "Unable to locate Microsoft Entra ID users for $dbu_duplicate_count rows as multiple rows have the same value" } $dbu_not_matched_count = $dbu_not_matched_list.Count if ($dbu_not_matched_count -ne 0) { Write-Error "Unable to locate $dbu_not_matched_count records in Microsoft Entra ID by querying for $db_match_column_name values in $azuread_match_attr_name." } $dbu_match_ambiguous_count = $dbu_match_ambiguous_list.Count if ($dbu_match_ambiguous_count -ne 0) { Write-Error "Unable to locate $dbu_match_ambiguous_count records in Microsoft Entra ID as attribute match ambiguous." } $dbu_query_failed_count = $dbu_query_failed_list.Count if ($dbu_query_failed_count -ne 0) { Write-Error "Unable to locate $dbu_query_failed_count records in Microsoft Entra ID as queries returned errors." } $azuread_not_enabled_count = $azuread_not_enabled_list.Count if ($azuread_not_enabled_count -ne 0) { Write-Warning "$azuread_not_enabled_count users in Microsoft Entra ID are blocked from sign-in." } if ($dbu_not_queried_count -ne 0 -or $dbu_duplicate_count -ne 0 -or $dbu_not_matched_count -ne 0 -or $dbu_match_ambiguous_count -ne 0 -or $dbu_query_failed_count -ne 0 -or $azuread_not_enabled_count -ne 0) { Write-Output "You will need to resolve those issues before access of all existing users can be reviewed." } $azuread_match_count = $azuread_match_id_list.Count Write-Output "Users corresponding to $azuread_match_count records were located in Microsoft Entra ID."
Rejestrowanie aplikacji
Jeśli aplikacja jest już zarejestrowana w identyfikatorze Entra firmy Microsoft, przejdź do następnego kroku.
- Jeśli aplikacja używa katalogu LDAP, postępuj zgodnie z przewodnikiem konfigurowania Microsoft Entra ID w celu aprowizacji użytkowników w katalogach LDAP, aby utworzyć nową rejestrację dla lokalnej aplikacji ECMA w Microsoft Entra ID.
- Jeśli aplikacja używa bazy danych SQL, postępuj zgodnie z przewodnikiem dotyczącym konfigurowania usługi Microsoft Entra ID w celu aprowizacji użytkowników do aplikacji opartych na SQL, aby utworzyć nową rejestrację dla lokalnej aplikacji ECMA w Microsoft Entra ID.
- Jeśli używasz usług SAP Cloud Identity Services, postępuj zgodnie z przewodnikiem konfigurowania identyfikatora Entra firmy Microsoft, aby aprowizować użytkowników w usługach SAP Cloud Identity Services.
- Jeśli jest to aplikacja w chmurze, która obsługuje protokół SCIM, możesz dodać aplikację z galerii aplikacji.
- Jeśli aplikacja jest lokalna i obsługuje protokół SCIM, postępuj zgodnie z przewodnikiem konfigurowania identyfikatora Entra firmy Microsoft, aby aprowizować użytkowników w lokalnych aplikacjach opartych na protokole SCIM.
Sprawdzanie użytkowników, którzy nie są jeszcze przypisani do aplikacji
Poprzednie kroki potwierdziły, że wszyscy użytkownicy w repozytorium danych aplikacji istnieją jako użytkownicy w Microsoft Entra ID. Jednak mogą one nie być obecnie przypisane do ról aplikacji w identyfikatorze Entra firmy Microsoft. Następnym krokiem jest sprawdzenie, którzy użytkownicy nie mają przypisanych ról w aplikacji.
Znajdź identyfikator główny usługi dla głównej jednostki usługi aplikacji. Jeśli niedawno utworzono jednostkę usługi dla aplikacji korzystającej z katalogu LDAP lub bazy danych SQL, użyj nazwy tej jednostki usługi.
Jeśli na przykład aplikacja dla przedsiębiorstw ma nazwę
CORPDB1
, wprowadź następujące polecenia:$azuread_app_name = "CORPDB1" $azuread_sp_filter = "displayName eq '" + ($azuread_app_name -replace "'","''") + "'" $azuread_sp = Get-MgServicePrincipal -Filter $azuread_sp_filter -All
Pobierz użytkowników, którzy mają obecnie przypisania do aplikacji w identyfikatorze Entra firmy Microsoft.
Opiera się to na zmiennej
$azuread_sp
ustawionej w poprzednim poleceniu.$azuread_existing_assignments = @(Get-MgServicePrincipalAppRoleAssignedTo -ServicePrincipalId $azuread_sp.Id -All)
Porównaj listę identyfikatorów użytkowników z poprzedniej sekcji z tymi użytkownikami aktualnie przypisanymi do aplikacji:
$azuread_not_in_role_list = @() foreach ($id in $azuread_match_id_list) { $found = $false foreach ($existing in $azuread_existing_assignments) { if ($existing.principalId -eq $id) { $found = $true; break; } } if ($found -eq $false) { $azuread_not_in_role_list += $id } } $azuread_not_in_role_count = $azuread_not_in_role_list.Count Write-Output "$azuread_not_in_role_count users in the application's data store are not assigned to the application roles."
Jeśli żadni użytkownicy nie są przypisani do ról aplikacji, to oznacza, że wszyscy użytkownicy są przypisani do ról aplikacji, nie musisz wprowadzać żadnych dalszych zmian przed przeprowadzeniem przeglądu dostępu.
Jeśli jednak co najmniej jeden użytkownik nie jest obecnie przypisany do ról aplikacji, musisz kontynuować procedurę i dodać je do jednej z ról aplikacji.
Wybierz rolę aplikacji, aby przypisać pozostałych użytkowników.
Aplikacja może mieć więcej niż jedną rolę, a jednostka usługi może mieć dodatkowe role. Użyj tego polecenia, aby wyświetlić listę dostępnych ról jednostki usługi:
$azuread_sp.AppRoles | where-object {$_.AllowedMemberTypes -contains "User"} | ft DisplayName,Id
Wybierz odpowiednią rolę z listy i uzyskaj jej identyfikator roli. Jeśli na przykład nazwa roli to
Admin
, podaj tę wartość w następujących poleceniach programu PowerShell:$azuread_app_role_name = "Admin" $azuread_app_role_id = ($azuread_sp.AppRoles | where-object {$_.AllowedMemberTypes -contains "User" -and $_.DisplayName -eq $azuread_app_role_name}).Id if ($null -eq $azuread_app_role_id) { write-error "role $azuread_app_role_name not located in application manifest"}
Konfigurowanie aprowizacji aplikacji
Jeśli aplikacja używa katalogu LDAP, bazy danych SQL, usług SAP Cloud Identity Services lub obsługuje program SCIM, przed utworzeniem nowych przypisań skonfiguruj aprowizowanie użytkowników usługi Microsoft Entra w aplikacji. Skonfigurowanie aprowizacji przed utworzeniem przypisań umożliwi usłudze Microsoft Entra ID dopasowanie użytkowników w usłudze Microsoft Entra ID do przypisań ról aplikacji dla użytkowników już znajdujących się w magazynie danych aplikacji. Jeśli Twoja aplikacja ma katalog lokalny lub bazę danych do aprowizacji, a także obsługuje federacyjne logowanie jednokrotne, może być konieczne posiadanie dwóch serwisów głównych, które będą reprezentować aplikację w Twoim katalogu: jednego do aprowizacji i jednego do logowania jednokrotnego. Jeśli aplikacja nie obsługuje prowizjonowania, kontynuuj czytanie w następnej sekcji.
Upewnij się, że aplikacja jest skonfigurowana tak, aby wymagać od użytkowników przypisania ról aplikacji, aby tylko wybrani użytkownicy zostali aprowizowani w aplikacji.
Jeśli aprowizacja nie została skonfigurowana dla aplikacji, skonfiguruj ją teraz (ale nie uruchamiaj aprowizacji):
- Jeśli aplikacja używa katalogu LDAP, postępuj zgodnie z przewodnikiem konfigurowania identyfikatora Entra firmy Microsoft, aby aprowizować użytkowników w katalogach LDAP.
- Jeśli aplikacja używa bazy danych SQL, postępuj zgodnie z przewodnikiem konfigurowania identyfikatora Entra firmy Microsoft w celu aprowizacji użytkowników w aplikacjach opartych na języku SQL.
- Jeśli aplikacja korzysta z usług SAP Cloud Identity Services, postępuj zgodnie z przewodnikiem konfigurowania identyfikatora Entra firmy Microsoft w celu aprowizacji użytkowników w usługach SAP Cloud Identity Services.
- W przypadku innych aplikacji wykonaj kroki 1–3, aby skonfigurować aprowizację za pośrednictwem interfejsów API programu Graph.
Sprawdź kartę Właściwości aplikacji. Sprawdź, czy opcja Wymagane przypisanie użytkownika? jest ustawiona na Wartość Tak. Jeśli jest ustawiona wartość Nie, wszyscy użytkownicy w katalogu, w tym tożsamości zewnętrzne, mogą uzyskiwać dostęp do aplikacji i nie możesz przeglądać dostępu do aplikacji.
Sprawdź mapowania atrybutów pod kątem aprowizacji w tej aplikacji. Upewnij się, że ustawiono dopasowanie obiektów przy użyciu tego atrybutu dla atrybutu Microsoft Entra i kolumny, której użyłeś w poprzednich sekcjach do dopasowania.
Jeśli te reguły nie korzystają z tych samych atrybutów, których użyto wcześniej, to po utworzeniu przypisań ról aplikacji Microsoft Entra ID może nie być w stanie zlokalizować istniejących użytkowników w magazynie danych aplikacji. Identyfikator Entra firmy Microsoft może następnie przypadkowo utworzyć zduplikowanych użytkowników.
Sprawdź, czy istnieje mapowanie atrybutów dla
isSoftDeleted
atrybutu aplikacji.Gdy użytkownik jest usunięty z aplikacji, tymczasowo usunięty w identyfikatorze Microsoft Entra ID lub zablokowany przed logowaniem, aprowizacja Microsoft Entra zaktualizuje atrybut zamapowany na
isSoftDeleted
. Jeśli żaden atrybut nie zostanie przypisany, użytkownicy, którzy później zostaną usunięci z roli aplikacji, będą nadal istnieć w magazynie danych aplikacji.Jeśli aprowizacja została już włączona dla aplikacji, sprawdź, czy aprowizacja aplikacji nie znajduje się w kwarantannie. Przed kontynuowaniem rozwiąż wszelkie problemy powodujące kwarantannę.
Tworzenie przypisań ról dla aplikacji w Microsoft Entra ID
Aby użytkownicy w aplikacji zostali dopasowani do użytkowników w Microsoft Entra ID, należy utworzyć przypisania ról aplikacji w Microsoft Entra ID. Każde przypisanie roli aplikacji kojarzy jednego użytkownika z jedną rolą aplikacji jednej jednostki usługi.
Po utworzeniu przypisania roli aplikacji w Microsoft Entra ID dla użytkownika do aplikacji i jeśli aplikacja obsługuje aprowizowanie, wówczas:
- Identyfikator Entra firmy Microsoft wysyła zapytanie do aplikacji za pośrednictwem narzędzia SCIM lub jego katalogu lub bazy danych, aby określić, czy użytkownik już istnieje.
- Po wprowadzeniu kolejnych aktualizacji do atrybutów użytkownika w Microsoft Entra ID, Microsoft Entra ID wyśle te aktualizacje do aplikacji.
- Użytkownik pozostanie w aplikacji na czas nieokreślony, chyba że zostanie zaktualizowany poza identyfikatorem Entra firmy Microsoft lub dopóki przypisanie w identyfikatorze Entra firmy Microsoft nie zostanie usunięte.
- Przy następnym przeglądzie przypisań ról tej aplikacji, użytkownik zostanie włączony do przeglądu dostępu.
- Jeśli użytkownik zostanie odrzucony w przeglądzie dostępu, przypisanie roli aplikacji zostanie usunięte. Identyfikator Entra firmy Microsoft powiadomi aplikację, że użytkownik nie może się zalogować.
Jeśli aplikacja nie obsługuje udostępniania zasobów, wówczas
- Użytkownik pozostanie w aplikacji na czas nieokreślony, chyba że zostanie zaktualizowany poza identyfikatorem Entra firmy Microsoft lub dopóki przypisanie w identyfikatorze Entra firmy Microsoft nie zostanie usunięte.
- Podczas następnego przeglądu przypisań do ról tej aplikacji użytkownik zostanie uwzględniony w przeglądzie.
- Jeśli użytkownik zostanie odrzucony w przeglądzie dostępu, przypisanie roli aplikacji zostanie usunięte. Użytkownik nie będzie już mógł zalogować się z identyfikatora Microsoft Entra ID do aplikacji.
Utwórz przypisania ról aplikacji dla użytkowników, którzy obecnie nie mają przypisań ról:
foreach ($u in $azuread_not_in_role_list) { $res = New-MgServicePrincipalAppRoleAssignedTo -ServicePrincipalId $azuread_sp.Id -AppRoleId $azuread_app_role_id -PrincipalId $u -ResourceId $azuread_sp.Id }
Poczekaj minutę, aby zmiany rozpropagowały się w Microsoft Entra ID.
Sprawdź, czy aprowizacja Microsoft Entra dopasowała istniejących użytkowników.
Zapytaj Microsoft Entra ID, aby uzyskać zaktualizowaną listę przypisań ról:
$azuread_existing_assignments = @(Get-MgServicePrincipalAppRoleAssignedTo -ServicePrincipalId $azuread_sp.Id -All)
Porównaj listę identyfikatorów użytkowników z poprzedniej sekcji z tymi użytkownikami przypisanymi teraz do aplikacji:
$azuread_still_not_in_role_list = @() foreach ($id in $azuread_match_id_list) { $found = $false foreach ($existing in $azuread_existing_assignments) { if ($existing.principalId -eq $id) { $found = $true; break; } } if ($found -eq $false) { $azuread_still_not_in_role_list += $id } } $azuread_still_not_in_role_count = $azuread_still_not_in_role_list.Count if ($azuread_still_not_in_role_count -gt 0) { Write-Output "$azuread_still_not_in_role_count users in the application's data store are not assigned to the application roles." }
Jeśli do ról aplikacji nie przypisano żadnych użytkowników, sprawdź dziennik inspekcji firmy Microsoft Entra pod kątem błędu z poprzedniego kroku.
Jeśli jednostka usługi aplikacji jest skonfigurowana do aprowizacji, a stan aprowizacji jednostki usługi to Wyłączone, włącz ją w pozycji Włączone. Możesz również rozpocząć aprowizację przy użyciu interfejsów API Graph.
Na podstawie wskazówek dotyczących przewidywanego czasu aprowizacji użytkowników, poczekaj, aż aprowizacja Microsoft Entra dopasuje istniejących użytkowników aplikacji do tych właśnie przypisanych użytkowników.
Monitoruj stan aprowizacji za pośrednictwem portalu lub interfejsów API programu Graph, aby upewnić się, że wszyscy użytkownicy zostali pomyślnie dopasowani.
Jeśli nie widzisz przydzielania użytkowników, sprawdź przewodnik rozwiązywania problemów dotyczący braku przydzielania użytkowników. Jeśli w stanie aprowizacji jest wyświetlany błąd i aprowizujesz aplikację lokalną, zapoznaj się z przewodnikiem rozwiązywania problemów dotyczącym aprowizacji aplikacji lokalnych.
Sprawdź dziennik aprowizacji za pośrednictwem centrum administracyjnego Microsoft Entra lub interfejsów API Graph. Przefiltruj dziennik do stanu Niepowodzenie. Jeśli występują błędy z kodem błędu DuplicateTargetEntries, oznacza to niejednoznaczność w regułach dopasowywania aprowizacji i należy zaktualizować użytkowników Microsoft Entra lub mapowania używane do dopasowywania, aby upewnić się, że każdy użytkownik Microsoft Entra jest zgodny z jednym użytkownikiem aplikacji. Następnie przefiltruj dziennik według akcji Utwórz oraz stanu Pominięto. Jeśli użytkownicy zostali pominięti przy użyciu kodu SkipReason notEffectivelyEntitled, może to wskazywać, że konta użytkowników w identyfikatorze Entra Firmy Microsoft nie były zgodne, ponieważ stan konta użytkownika był wyłączony.
Po tym jak usługa aprowizacji Microsoft Entra dopasuje użytkowników na podstawie utworzonych przez Ciebie przypisań ról aplikacji, wszelkie kolejne zmiany dotyczące tych użytkowników zostaną wysłane do aplikacji.
Wybieranie odpowiednich recenzentów
Podczas tworzenia każdego przeglądu dostępu administratorzy mogą wybrać co najmniej jednego recenzenta. Recenzenci mogą przeprowadzić przegląd, wybierając użytkowników w celu dalszego dostępu do zasobu lub usuwania ich.
Zazwyczaj właściciel zasobu jest odpowiedzialny za przeprowadzenie przeglądu. Jeśli tworzysz przegląd grupy jako część przeglądu dostępu do aplikacji zintegrowanej ze wzorcem B, możesz wybrać właścicieli grup jako recenzentów. Ponieważ aplikacje w identyfikatorze Entra firmy Microsoft nie muszą mieć właściciela, opcja wybierania właściciela aplikacji jako recenzenta nie jest możliwa. Zamiast tego podczas tworzenia przeglądu można podać nazwy właścicieli aplikacji jako recenzentów.
Możesz również wybrać podczas tworzenia przeglądu grupy lub aplikacji, aby mieć przegląd wieloetapowy. Na przykład można wybrać, aby menedżer każdego przypisanego użytkownika wykonał pierwszy etap przeglądu, a właściciel zasobu drugi etap. Dzięki temu właściciel zasobu może skupić się na użytkownikach, którzy zostali już zatwierdzeni przez menedżera.
Przed utworzeniem recenzji upewnij się, że w swojej dzierżawie masz wystarczającą liczbę miejsc licencyjnych Microsoft Entra ID P2 lub Microsoft Entra ID Governance SKU. Sprawdź również, czy wszyscy recenzenci są aktywnymi użytkownikami z adresami e-mail. Po rozpoczęciu przeglądów dostępu każdy z nich przegląda wiadomość e-mail z Microsoft Entra ID. Jeśli recenzent nie ma skrzynki pocztowej, nie otrzyma wiadomości e-mail po rozpoczęciu przeglądu lub przypomnieniu e-mail. Jeśli uniemożliwi się im zalogowanie do Microsoft Entra ID, nie będą mogli przeprowadzić przeglądu.
Konfigurowanie przeglądów dostępu lub zarządzania upoważnieniami
Gdy użytkownicy znajdują się w rolach aplikacji i masz zidentyfikowanych recenzentów, możesz zarządzać tymi użytkownikami i wszystkimi dodatkowymi użytkownikami, którzy będą potrzebować dostępu, korzystając z przeglądów dostępu lub zarządzania upoważnieniami.
- Jeśli aplikacja ma tylko jedną rolę aplikacji, aplikacja jest reprezentowana przez jeden główny obiekt usługi w katalogu i żaden dodatkowy użytkownik nie będzie potrzebować dostępu do aplikacji, a następnie przejdź do następnej sekcji, aby przejrzeć i usunąć istniejący dostęp przy użyciu audytu dostępów.
- W przeciwnym razie przejdź do sekcji tego artykułu, aby zarządzać dostępem przy użyciu zarządzania upoważnieniami.
Przeglądanie i usuwanie istniejącego dostępu poprzez przegląd przypisań ról aplikacji
Jeśli aplikacja ma wiele ról aplikacji, jest reprezentowana przez wiele jednostek usługi lub chcesz mieć proces, aby użytkownicy mogli żądać dostępu do aplikacji lub być do niej przypisani, to kontynuuj w poniższej sekcji tego artykułu, aby zarządzać dostępem przy użyciu zarządzania upoważnieniami.
Teraz, gdy istniejący użytkownicy mają przypisania do roli aplikacji, możesz skonfigurować Microsoft Entra ID, żeby rozpocząć przegląd tych przypisań.
W tym kroku musisz mieć rolę administratora globalnego lub administratora zarządzania tożsamością.
Postępuj zgodnie z instrukcjami w przewodniku dotyczącym tworzenia przeglądu dostępu grup lub aplikacji, aby utworzyć przegląd przypisań ról aplikacji. Skonfiguruj przegląd, aby zastosować wyniki po zakończeniu. Przegląd dostępu można utworzyć w programie PowerShell za
New-MgIdentityGovernanceAccessReviewDefinition
pomocą polecenia cmdlet programu Microsoft Graph PowerShell dla modułu Identity Governance . Aby uzyskać więcej informacji, zobacz przykłady.Uwaga
Jeśli włączysz pomocnika przeglądu dostępu, rekomendacje pomocnika decyzyjnego są oparte na 30-dniowym okresie interwału w zależności od tego, kiedy użytkownik ostatnio zalogował się do aplikacji przy użyciu identyfikatora Microsoft Entra.
Po rozpoczęciu przeglądu dostępu poproś recenzentów o przekazanie opinii. Domyślnie każda z nich otrzymuje wiadomość e-mail od firmy Microsoft Entra ID z linkiem do panelu dostępu, w którym przegląda dostęp do aplikacji.
Po rozpoczęciu przeglądów możesz monitorować ich postęp i aktualizować osoby zatwierdzające w razie potrzeby do momentu ukończenia przeglądu dostępu. Następnie możesz potwierdzić, że użytkownicy, których dostęp został odrzucony przez recenzentów, mają dostęp usunięty z aplikacji.
Jeśli automatyczne zastosowanie nie zostało wybrane podczas tworzenia recenzji, po zakończeniu przeglądu należy zastosować wyniki przeglądu.
Poczekaj, aż stan przeglądu zmieni się na Wynik zastosowany. Możesz spodziewać się, że w ciągu kilku minut użytkownicy, którym odmówiono, będą mieli usunięte przypisania ról aplikacji, jeśli tacy istnieją.
Po zastosowaniu wyników Microsoft Entra ID rozpocznie cofanie aprowizacji użytkowników, którym odmówiono dostępu do aplikacji. Na podstawie wskazówek dotyczących czasu, jaki zajmie aprowizacja użytkowników, poczekaj, aż firma Microsoft Entra rozpocznie deprowizację odmówionych użytkowników. Monitoruj stan wdrażania za pośrednictwem portalu lub interfejsów API Graph, aby upewnić się, że pomyślnie usunięto wszystkich odrzuconych użytkowników.
Jeśli nie widzisz, że użytkownicy są wyłączani z usług, zapoznaj się z przewodnikiem rozwiązywania problemów dotyczącym niewyłączanych użytkowników. Jeśli w stanie aprowizacji jest wyświetlany błąd i aprowizujesz aplikację lokalną, zapoznaj się z przewodnikiem rozwiązywania problemów dotyczącym aprowizacji aplikacji lokalnych.
Teraz, gdy masz plan bazowy zapewniający przegląd istniejącego dostępu, możesz kontynuować w następnej sekcji, aby skonfigurować zarządzanie upoważnieniami, aby włączyć nowe żądania dostępu.
Zarządzanie dostępem przy użyciu zarządzania upoważnieniami
W innych sytuacjach, takich jak chęć posiadania różnych recenzentów dla każdej roli w aplikacji, gdy aplikacja jest reprezentowana przez wiele głównych jednostek usługowych lub gdy chcesz, aby użytkownicy mogli zażądać dostępu do aplikacji lub zostać do niej przypisani, możesz skonfigurować Microsoft Entra ID, tworząc pakiet dostępu dla każdej roli aplikacji. Każdy pakiet dostępu może mieć politykę cyklicznego przeglądu przypisań do tego pakietu dostępu. Po utworzeniu pakietów dostępu i zasad można przypisać użytkowników, którzy mają istniejące przypisania ról aplikacji do pakietów dostępu, aby można było przejrzeć ich przypisania za pośrednictwem pakietu dostępu.
W tej sekcji skonfigurujesz zarządzanie uprawnieniami Microsoft Entra w celu skonfigurowania przeglądu przypisań pakietów dostępu zawierających przypisania ról aplikacji oraz dodatkowych zasad, aby użytkownicy mogli żądać dostępu do ról Twojej aplikacji.
- W tym kroku musisz być administratorem globalnym lub administratorem zarządzania tożsamościami, albo być upoważnionym jako twórca katalogu i właściciel aplikacji.
- Jeśli nie masz jeszcze katalogu dla scenariusza zarządzania aplikacjami, utwórz katalog w usłudze Microsoft Entra do zarządzania uprawnieniami. Możesz użyć skryptu programu PowerShell, aby utworzyć każdy katalog, jak pokazano w utworzyć wykaz przy użyciu programu PowerShell.
- Wypełnij wykaz niezbędnymi zasobami, dodając aplikację i wszystkie grupy firmy Microsoft Entra, na których opiera się aplikacja, jako zasoby w tym wykazie. Możesz użyć skryptu programu PowerShell, aby dodać każdy zasób do katalogu, jak pokazano w dodać aplikację jako zasób do katalogu.
- Dla każdej aplikacji i dla każdej z ich ról lub grup aplikacji utwórz pakiet dostępu zawierający rolę lub grupę jako zasób. Na tym etapie konfigurowania tych pakietów dostępu należy skonfigurować pierwsze zasady przypisywania w każdym pakiecie dostępu jako zasady dla bezpośredniego przypisania. Tylko administratorzy mogą w nich tworzyć przypisania. Należy również ustawić wymagania dotyczące przeglądu dostępu dla istniejących użytkowników, jeśli tacy są, aby nie zachowywali dostępu na czas nieokreślony. Jeśli masz wiele pakietów dostępu, możesz użyć skryptu programu PowerShell, aby utworzyć każdy pakiet dostępu w katalogu, jak pokazano w utworzyć pakiet dostępu dla aplikacji z jedną rolą.
- Dla każdego pakietu dostępu przypisz istniejących użytkowników aplikacji w odpowiedniej roli lub członków grupy do pakietu dostępu i jego polityki bezpośredniego przypisania. Możesz bezpośrednio przypisać użytkownika do pakietu dostępu za pomocą centrum administracyjnego Microsoft Entra lub zbiorczo za pomocą Graph lub PowerShell, jak pokazano w dodawanie przypisań istniejących użytkowników.
- Jeśli skonfigurowano przeglądy dostępu w zasadach przypisywania pakietów dostępu, po rozpoczęciu przeglądu dostępu poproś recenzentów o podanie danych wejściowych. Domyślnie każda z nich otrzymuje wiadomość e-mail od firmy Microsoft Entra ID z linkiem do panelu dostępu, w którym będą przeglądać przypisania pakietów dostępu. Po zakończeniu przeglądu należy spodziewać się, że użytkownikom, którym odmówiono, usunięto przypisania ról aplikacji w ciągu kilku minut. Następnie Microsoft Entra ID rozpocznie usuwanie odrzuconych użytkowników z aplikacji. Na podstawie wskazówek dotyczących jak długo potrwa aprowizacja użytkowników, poczekaj na rozpoczęcie dezaprowizacji użytkowników, którym odmówiono dostępu przez firmę Microsoft Entra. Monitoruj status przydzielania za pośrednictwem portalu lub interfejsów API Graph, aby upewnić się, że wszyscy odrzuceni użytkownicy zostali pomyślnie usunięci.
- Jeśli masz wymagania dotyczące rozdziału obowiązków, skonfiguruj pakiety dostępu o niezgodnych uprawnieniach lub grupy dla swojego pakietu dostępu. Jeśli twój scenariusz wymaga możliwości pominięcia kontroli dotyczącej rozdzielenia obowiązków, możesz również skonfigurować dodatkowe pakiety dostępu dla tych scenariuszy pominięcia.
- Jeśli chcesz zezwolić użytkownikom, którzy nie mają jeszcze dostępu, na złożenie wniosku o dostęp, to w każdym pakiecie dostępu utwórz dodatkowe zasady przypisywania pakietów dostępu, aby użytkownicy mogli składać wnioski o dostęp. Skonfiguruj wymagania dotyczące zatwierdzania i cyklicznego przeglądu dostępu w tych zasadach.