Samouczek — dostosowywanie mapowań atrybutów aprowizacji użytkowników dla aplikacji SaaS w usłudze Microsoft Entra ID
Microsoft Entra ID zapewnia obsługę aprowizacji użytkowników w aplikacjach SaaS innych niż Microsoft, takich jak Salesforce, G Suite i inne. Jeśli włączysz aprowizację użytkowników dla aplikacji SaaS innej niż Microsoft, centrum administracyjne firmy Microsoft Entra kontroluje jego wartości atrybutów za pomocą mapowań atrybutów.
Przed rozpoczęciem upewnij się, że znasz pojęcia dotyczące zarządzania aplikacjami i logowania jednokrotnego . Zapoznaj się z następującymi linkami:
- Seria Szybki start dotycząca zarządzania aplikacjami w usłudze Microsoft Entra ID
- Co to jest logowanie jednokrotne?
Istnieje wstępnie skonfigurowany zestaw atrybutów i mapowań atrybutów między obiektami użytkownika firmy Microsoft Entra i obiektami użytkownika każdej aplikacji SaaS. Niektóre aplikacje zarządzają innymi typami obiektów wraz z użytkownikami, takimi jak grupy.
Domyślne mapowania atrybutów można dostosować zgodnie z potrzebami biznesowymi. Możesz więc zmienić lub usunąć istniejące mapowania atrybutów lub utworzyć nowe mapowania atrybutów.
Uwaga
Oprócz konfigurowania mapowań atrybutów za pomocą interfejsu firmy Microsoft Entra można przeglądać, pobierać i edytować reprezentację JSON schematu.
Edytowanie mapowań atrybutów użytkownika
Napiwek
Kroki opisane w tym artykule mogą się nieznacznie różnić w zależności od portalu, od którego zaczynasz.
Wykonaj następujące kroki, aby uzyskać dostęp do funkcji Mapowania aprowizacji użytkowników:
Zaloguj się do centrum administracyjnego firmy Microsoft Entra co najmniej jako administrator aplikacji.
Przejdź do aplikacji dla przedsiębiorstw usługi Identity>Applications>.
Zostanie wyświetlona lista wszystkich skonfigurowanych aplikacji, w tym aplikacji dodanych z galerii.
Wybierz dowolną aplikację, aby załadować okienko zarządzania aplikacjami, w którym można wyświetlać raporty i zarządzać ustawieniami aplikacji.
Wybierz pozycję Aprowizowanie , aby zarządzać ustawieniami aprowizacji kont użytkowników dla wybranej aplikacji.
Rozwiń węzeł Mapowania, aby wyświetlić i edytować atrybuty użytkownika, które przepływają między identyfikatorem Entra firmy Microsoft i aplikacją docelową. Jeśli aplikacja docelowa obsługuje tę aplikację, ta sekcja umożliwia opcjonalne skonfigurowanie aprowizacji grup i kont użytkowników.
Wybierz konfigurację mapowań, aby otworzyć powiązany ekran Mapowanie atrybutów. Aplikacje SaaS wymagają poprawnego działania niektórych mapowań atrybutów. W przypadku wymaganych atrybutów funkcja Usuń jest niedostępna.
Na tym zrzucie ekranu widać, że atrybut Username obiektu zarządzanego w usłudze Salesforce jest wypełniany wartością userPrincipalName połączonego obiektu Microsoft Entra.
Uwaga
Wyczyszczenie opcji Utwórz nie ma wpływu na istniejących użytkowników. Jeśli nie wybrano opcji Utwórz , nie możesz utworzyć nowych użytkowników.
Wybierz istniejące mapowanie atrybutów, aby otworzyć ekran Edytowanie atrybutu. W tym miejscu możesz edytować atrybuty użytkownika, które przepływają między identyfikatorem Entra firmy Microsoft i aplikacją docelową.
Opis typów mapowania atrybutów
Za pomocą mapowań atrybutów można kontrolować sposób wypełniania atrybutów w aplikacji SaaS firmy innej niż Microsoft. Obsługiwane są cztery różne typy mapowań:
- Direct — atrybut docelowy jest wypełniany wartością atrybutu połączonego obiektu w identyfikatorze Entra firmy Microsoft.
- Stała — atrybut docelowy jest wypełniany określonym ciągiem.
- Wyrażenie — atrybut docelowy jest wypełniany na podstawie wyniku wyrażenia przypominającego skrypt. Aby uzyskać więcej informacji na temat wyrażeń, zobacz Pisanie wyrażeń dla mapowań atrybutów w identyfikatorze Entra firmy Microsoft.
- Brak — atrybut docelowy pozostaje niezmodyfikowany. Jeśli jednak atrybut docelowy jest kiedykolwiek pusty, zostanie wypełniony wartością domyślną, którą określisz.
Wraz z tymi czterema podstawowymi typami niestandardowe mapowania atrybutów obsługują koncepcję opcjonalnego przypisania wartości domyślnej . Przypisanie wartości domyślnej gwarantuje, że atrybut docelowy zostanie wypełniony wartością, jeśli nie ma wartości w identyfikatorze Entra firmy Microsoft lub w obiekcie docelowym. Najczęstszą konfiguracją jest pozostawienie tego pustego. Aby uzyskać więcej informacji na temat atrybutów mapowania, zobacz Jak działa aprowizacja aplikacji w identyfikatorze Entra firmy Microsoft.
Opis właściwości mapowania atrybutów
W poprzedniej sekcji przedstawiono właściwość typu mapowania atrybutów. Oprócz tej właściwości mapowania atrybutów obsługują również atrybuty:
- Atrybut źródłowy — atrybut użytkownika z systemu źródłowego (na przykład: Microsoft Entra ID).
- Atrybut docelowy — atrybut użytkownika w systemie docelowym (na przykład ServiceNow).
- Wartość domyślna, jeśli wartość null (opcjonalnie) — wartość przekazywana do systemu docelowego, jeśli atrybut źródłowy ma wartość null. Ta wartość jest aprowizowana tylko po utworzeniu użytkownika. "Wartość domyślna, gdy wartość null" nie jest aprowizowana podczas aktualizowania istniejącego użytkownika. Na przykład dodaj wartość domyślną dla tytułu zadania podczas tworzenia użytkownika z wyrażeniem:
Switch(IsPresent([jobTitle]), "DefaultValue", "True", [jobTitle])
. Aby uzyskać więcej informacji na temat wyrażeń, zobacz Dokumentacja zapisywania wyrażeń mapowań atrybutów w identyfikatorze Entra firmy Microsoft. - Dopasuj obiekty przy użyciu tego atrybutu — czy to mapowanie powinno być używane do unikatowego identyfikowania użytkowników między systemami źródłowymi i docelowymi. Używany w
userPrincipalName
atrybucie lub e-mail w identyfikatorze Entra firmy Microsoft i mapowany na pole nazwy użytkownika w aplikacji docelowej. - Dopasowywanie pierwszeństwa — można ustawić wiele pasujących atrybutów. Jeśli istnieje wiele, są one oceniane w kolejności zdefiniowanej przez to pole. Po znalezieniu dopasowania nie są oceniane żadne dalsze pasujące atrybuty. Chociaż można ustawić dowolną liczbę pasujących atrybutów, należy rozważyć, czy atrybuty używane jako pasujące atrybuty są naprawdę unikatowe i muszą być zgodne atrybuty. Zazwyczaj klienci mają jeden lub dwa pasujące atrybuty w swojej konfiguracji.
- Zastosuj mapowanie.
- Zawsze — zastosuj to mapowanie zarówno w akcjach tworzenia użytkownika, jak i aktualizacji.
- Tylko podczas tworzenia — zastosuj to mapowanie tylko w przypadku akcji tworzenia użytkownika.
Dopasowywanie użytkowników w systemach źródłowych i docelowych
Usługę aprowizacji firmy Microsoft można wdrożyć w scenariuszach "zielonych pól" (gdzie użytkownicy nie istnieją w systemie docelowym) i scenariuszach "brownfield" (gdzie użytkownicy już istnieją w systemie docelowym). Aby obsłużyć oba scenariusze, usługa aprowizacji używa koncepcji pasujących atrybutów. Pasujące atrybuty umożliwiają określenie, jak jednoznacznie zidentyfikować użytkownika w źródle i dopasować go do użytkownika w obiekcie docelowym. W ramach planowania wdrożenia zidentyfikuj atrybut, który może służyć do unikatowego identyfikowania użytkownika w systemach źródłowych i docelowych. Kwestie do zanotowania:
- Pasujące atrybuty powinny być unikatowe: klienci często używają atrybutów, takich jak userPrincipalName, mail lub object ID jako pasujący atrybut.
- Można użyć wielu atrybutów jako pasujących atrybutów: można zdefiniować wiele atrybutów, które mają być oceniane podczas dopasowywania użytkowników i kolejności ich oceniania (zdefiniowanej jako pasujący pierwszeństwo w interfejsie użytkownika). Jeśli na przykład zdefiniujesz trzy atrybuty jako pasujące atrybuty, a użytkownik jest jednoznacznie dopasowany po ocenie pierwszych dwóch atrybutów, usługa nie oceni trzeciego atrybutu. Usługa ocenia pasujące atrybuty w określonej kolejności i zatrzymuje ocenę po znalezieniu dopasowania.
- Wartość w źródle i obiekcie docelowym nie musi być dokładnie zgodna: wartość w obiekcie docelowym może być funkcją wartości w źródle. Dlatego można mieć atrybut emailAddress w źródle i userPrincipalName w elemencie docelowym, a następnie dopasować przez funkcję atrybutu emailAddress, który zastępuje niektóre znaki pewną stałą wartością.
- Dopasowywanie na podstawie kombinacji atrybutów nie jest obsługiwane: większość aplikacji nie obsługuje wykonywania zapytań na podstawie dwóch właściwości. W związku z tym nie jest możliwe dopasowanie na podstawie kombinacji atrybutów. Można ocenić pojedyncze właściwości po innym.
- Wszyscy użytkownicy muszą mieć wartość co najmniej jednego zgodnego atrybutu: jeśli zdefiniujesz jeden zgodny atrybut, wszyscy użytkownicy muszą mieć wartość tego atrybutu w systemie źródłowym. Jeśli na przykład zdefiniujesz atrybut userPrincipalName jako pasujący atrybut, wszyscy użytkownicy muszą mieć wartość userPrincipalName. Jeśli zdefiniujesz wiele pasujących atrybutów (na przykład rozszerzenieAttribute1 i poczta), nie wszyscy użytkownicy muszą mieć ten sam pasujący atrybut. Jeden użytkownik może mieć rozszerzenieAttribute1, ale nie poczta, podczas gdy inny użytkownik może mieć pocztę, ale nie rozszerzenieAttribute1.
- Aplikacja docelowa musi obsługiwać filtrowanie zgodnego atrybutu: deweloperzy aplikacji zezwalają na filtrowanie podzestawu atrybutów w interfejsie API użytkownika lub grupy. W przypadku aplikacji w galerii upewnij się, że domyślne mapowanie atrybutów dotyczy atrybutu obsługiwanego przez interfejs API aplikacji docelowej. Podczas zmiany domyślnego atrybutu dopasowania dla aplikacji docelowej sprawdź dokumentację interfejsu API firmy innej niż Microsoft, aby upewnić się, że atrybut można filtrować.
Edytowanie mapowań atrybutów grupy
Wybrana liczba aplikacji, takich jak ServiceNow, Box i G Suite, obsługuje możliwość aprowizowania obiektów grup i użytkowników. Obiekty grupy mogą zawierać właściwości grupy, takie jak nazwy wyświetlane i aliasy wiadomości e-mail, wraz z członkami grupy.
Aprowizacja grup może być opcjonalnie włączona lub wyłączona, wybierając mapowanie grup w obszarze Mapowania i ustawiając ustawienie Włączone na odpowiednią opcję na ekranie Mapowanie atrybutów.
Atrybuty aprowizowane w ramach obiektów grupy można dostosować w taki sam sposób, jak obiekty użytkownika, opisane wcześniej.
Napiwek
Aprowizowanie obiektów grupy (właściwości i członków) jest odrębnym pojęciem od przypisywania grup do aplikacji. Istnieje możliwość przypisania grupy do aplikacji, ale aprowizuj tylko obiekty użytkownika zawarte w grupie. Aprowizowanie pełnych obiektów grup nie jest wymagane do używania grup w przypisaniach.
Edytowanie listy obsługiwanych atrybutów
Atrybuty użytkownika obsługiwane dla danej aplikacji są wstępnie skonfigurowane. Większość interfejsów API zarządzania użytkownikami aplikacji nie obsługuje odnajdywania schematów. Dlatego usługa aprowizacji Firmy Microsoft nie może dynamicznie generować listy obsługiwanych atrybutów, wykonując wywołania do aplikacji.
Jednak niektóre aplikacje obsługują atrybuty niestandardowe, a usługa aprowizacji firmy Microsoft może odczytywać i zapisywać w atrybutach niestandardowych. Aby wprowadzić definicje w centrum administracyjnym firmy Microsoft Entra, zaznacz pole wyboru Pokaż opcje zaawansowane w dolnej części ekranu Mapowanie atrybutów, a następnie wybierz pozycję Edytuj listę atrybutów dla aplikacji.
Aplikacje i systemy obsługujące dostosowywanie listy atrybutów to:
- Salesforce
- ServiceNow
- Workday to Active Directory /Workday to Microsoft Entra ID
- SuccessFactors do usługi Active Directory/ SuccessFactors do identyfikatora Entra firmy Microsoft
- Microsoft Entra ID (obsługiwane są atrybuty domyślne interfejsu API programu Graph microsoft Entra ID i niestandardowe rozszerzenia katalogu). Aby uzyskać więcej informacji na temat tworzenia rozszerzeń, zobacz Synchronizowanie atrybutów rozszerzenia dla usługi Microsoft Entra Application Provisioning i Znane problemy z aprowizowaniem w usłudze Microsoft Entra ID
- Aplikacje, które obsługują system dla tożsamości między domenami (SCIM) 2.0
- Identyfikator Entra firmy Microsoft obsługuje zapisywanie zwrotne w usłudze Workday lub SuccessFactors dla metadanych XPATH i JSONPath. Identyfikator Entra firmy Microsoft nie obsługuje nowych atrybutów produktu Workday ani SuccessFactors, które nie są uwzględnione w domyślnym schemacie
Uwaga
Edytowanie listy obsługiwanych atrybutów jest zalecane tylko dla administratorów, którzy dostosowali schemat swoich aplikacji i systemów, i mają wiedzę z pierwszej ręki na temat sposobu definiowania atrybutów niestandardowych lub jeśli atrybut źródłowy nie jest automatycznie wyświetlany w interfejsie użytkownika centrum administracyjnego firmy Microsoft Entra. Czasami wymaga to znajomości interfejsów API i narzędzi deweloperskich udostępnianych przez aplikację lub system. Możliwość edytowania listy obsługiwanych atrybutów jest domyślnie zablokowana, ale klienci mogą włączyć tę funkcję, przechodząc do następującego adresu URL: https://portal.azure.com/?Microsoft_AAD_Connect_Provisioning_forceSchemaEditorEnabled=true . Następnie możesz przejść do aplikacji, aby wyświetlić listę atrybutów.
Uwaga
Jeśli atrybut rozszerzenia katalogu w identyfikatorze Entra firmy Microsoft nie jest automatycznie wyświetlany na liście rozwijanej mapowania atrybutów, możesz ręcznie dodać go do listy atrybutów "Microsoft Entra". Podczas ręcznego dodawania atrybutów rozszerzenia katalogu Entra firmy Microsoft do aplikacji aprowizacji należy pamiętać, że nazwy atrybutów rozszerzenia katalogu są uwzględniane w wielkości liter. Na przykład: jeśli masz atrybut rozszerzenia katalogu o nazwie extension_53c9e2c0exxxxxxxxxxxxxxxx_acmeCostCenter
, upewnij się, że wprowadzono go w tym samym formacie, co zdefiniowane w katalogu. Aprowizowanie atrybutów rozszerzenia katalogu wielowartego nie jest obsługiwane.
Podczas edytowania listy obsługiwanych atrybutów są udostępniane następujące właściwości:
- Name — nazwa systemowa atrybutu, zgodnie z definicją w schemacie obiektu docelowego.
- Typ — typ danych przechowywanych atrybutów zgodnie z definicją w schemacie obiektu docelowego, który może być jednym z następujących typów.
- Binary — atrybut zawiera dane binarne.
- Wartość logiczna — atrybut zawiera wartość True lub False.
- DateTime — atrybut zawiera ciąg daty.
- Liczba całkowita — atrybut zawiera liczbę całkowitą.
- Odwołanie — atrybut zawiera identyfikator, który odwołuje się do wartości przechowywanej w innej tabeli w aplikacji docelowej.
- String — atrybut zawiera ciąg tekstowy.
- Klucz podstawowy? — Określa, czy atrybut jest zdefiniowany jako pole klucza podstawowego w schemacie obiektu docelowego.
- Wymagane? — określa, czy atrybut jest wymagany do wypełnienia w aplikacji docelowej, czy w systemie.
- Wiele wartości? - Czy atrybut obsługuje wiele wartości.
- Dokładny przypadek? — Określa, czy wartości atrybutów są oceniane w sposób uwzględniający wielkość liter.
- Wyrażenie interfejsu API — nie używaj go, chyba że zostanie to poinstruowane przez dokumentację dla określonego łącznika aprowizacji (takiego jak Workday).
- Atrybut obiektu, do którego odwołuje się odwołanie — jeśli jest to atrybut Typu odwołania, to to menu umożliwia wybranie tabeli i atrybutu w aplikacji docelowej zawierającej wartość skojarzona z atrybutem. Jeśli na przykład masz atrybut o nazwie "Dział", którego przechowywana wartość odwołuje się do obiektu w oddzielnej tabeli "Działy", wybierz opcję
Departments.Name
. Tabele referencyjne i pola identyfikatora podstawowego obsługiwane dla danej aplikacji są wstępnie skonfigurowane i nie można ich edytować przy użyciu centrum administracyjnego firmy Microsoft Entra. Można je jednak edytować przy użyciu interfejsu API programu Microsoft Graph.
Aprowizowanie niestandardowego atrybutu rozszerzenia do aplikacji zgodnej ze standardem SCIM
Żądanie SCIM dla komentarzy (RFC) definiuje podstawowy schemat użytkownika i grupy, a jednocześnie umożliwia rozszerzenia schematu spełniające potrzeby aplikacji. Aby dodać atrybut niestandardowy do aplikacji SCIM:
- Zaloguj się do centrum administracyjnego firmy Microsoft Entra co najmniej jako administrator aplikacji.
- Przejdź do aplikacji dla przedsiębiorstw usługi Identity>Applications>.
- Wybierz aplikację, a następnie wybierz pozycję Aprowizowanie.
- W obszarze Mapowania wybierz obiekt (użytkownika lub grupę), dla którego chcesz dodać atrybut niestandardowy.
- W dolnej części strony wybierz pozycję Pokaż opcje zaawansowane.
- Wybierz pozycję Edytuj listę atrybutów dla pozycji AppName.
- W dolnej części listy atrybutów wprowadź informacje o atrybucie niestandardowym w podanych polach. Następnie wybierz pozycję Dodaj atrybut.
W przypadku aplikacji SCIM nazwa atrybutu musi być zgodna ze wzorcem pokazanym w przykładzie. Parametry "CustomExtensionName" i "CustomAttribute" można dostosować zgodnie z wymaganiami aplikacji, na przykład: urn:ietf:params:scim:schemas:extension:CustomExtensionName:2.0:User:CustomAttribute
Te instrukcje dotyczą tylko aplikacji obsługujących protokół SCIM. Aplikacje, takie jak ServiceNow i Salesforce, nie są zintegrowane z identyfikatorem Microsoft Entra ID przy użyciu protokołu SCIM, dlatego nie wymagają tej konkretnej przestrzeni nazw podczas dodawania atrybutu niestandardowego.
Atrybuty niestandardowe nie mogą być atrybutami odwołania, atrybutami wielowartności lub atrybutami złożonymi. Niestandardowe atrybuty rozszerzeń wielowartych i złożonych są obecnie obsługiwane tylko dla aplikacji w galerii. Nagłówek schematu rozszerzenia niestandardowego jest pomijany w przykładzie, ponieważ nie jest wysyłany w żądaniach od klienta Microsoft Entra SCIM.
Przykładowa reprezentacja użytkownika z atrybutem rozszerzenia:
{
"schemas":[
"urn:ietf:params:scim:schemas:core:2.0:User",
"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"
],
"userName":"bjensen",
"id": "48af03ac28ad4fb88478",
"externalId":"bjensen",
"name":{
"formatted":"Ms. Barbara J Jensen III",
"familyName":"Jensen",
"givenName":"Barbara"
},
"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
"employeeNumber": "701984",
"costCenter": "4130",
"organization": "Universal Studios",
"division": "Theme Park",
"department": "Tour Operations",
"manager": {
"value": "26118915-6090-4610-87e4-49d8ca9f808d",
"$ref": "../Users/26118915-6090-4610-87e4-49d8ca9f808d",
"displayName": "John Smith"
}
},
"urn:ietf:params:scim:schemas:extension:CustomExtensionName:2.0:User": {
"CustomAttribute": "701984",
},
"meta": {
"resourceType": "User",
"created": "2010-01-23T04:56:22Z",
"lastModified": "2011-05-13T04:42:34Z",
"version": "W\/\"3694e05e9dff591\"",
"location": "https://example.com/v2/Users/00aa00aa-bb11-cc22-dd33-44ee44ee44ee"
}
}
Aprowizowanie roli w aplikacji SCIM
Wykonaj kroki opisane w przykładzie, aby aprowizować role aplikacji dla użytkownika w aplikacji. Opis jest specyficzny dla niestandardowych aplikacji SCIM. W przypadku aplikacji galerii, takich jak Salesforce i ServiceNow, użyj wstępnie zdefiniowanych mapowań ról. W punktorach opisano sposób przekształcania atrybutu AppRoleAssignments w oczekiwany format aplikacji.
- Mapowanie atrybutu appRoleAssignment w usłudze Microsoft Entra ID na rolę w aplikacji wymaga przekształcenia atrybutu przy użyciu wyrażenia. Atrybut appRoleAssignment nie powinien być mapowany bezpośrednio na atrybut roli bez użycia wyrażenia w celu przeanalizowania szczegółów roli.
Uwaga
Podczas aprowizacji ról z aplikacji dla przedsiębiorstw standard SCIM definiuje atrybuty roli użytkownika przedsiębiorstwa inaczej. Aby uzyskać więcej informacji, zobacz Develop and plan provisioning for a SCIM endpoint in Microsoft Entra ID (Opracowywanie i planowanie aprowizacji punktu końcowego SCIM w usłudze Microsoft Entra ID).
SingleAppRoleAssignment
Kiedy należy użyć: użyj wyrażenia SingleAppRoleAssignment, aby aprowizować jedną rolę dla użytkownika i określić rolę podstawową.
Jak skonfigurować: wykonaj opisane kroki, aby przejść do strony mapowania atrybutów i użyć wyrażenia SingleAppRoleAssignment do mapowania na atrybut role. Istnieją trzy atrybuty roli do wyboru (roles[primary eq "True"].display
, roles[primary eq "True"].type
, i roles[primary eq "True"].value
). Możesz uwzględnić dowolne lub wszystkie atrybuty roli w mapowaniach. Jeśli chcesz dołączyć więcej niż jeden, wystarczy dodać nowe mapowanie i dołączyć je jako atrybut docelowy.
Kwestie do rozważenia
- Upewnij się, że wiele ról nie jest przypisanych do użytkownika. Nie ma gwarancji, która rola jest aprowizowana.
SingleAppRoleAssignments
Sprawdź atrybut . Atrybut nie jest zgodny z ustawieniem zakresu naSync All users and groups
.
Przykładowe żądanie (POST)
{
"schemas": [
"urn:ietf:params:scim:schemas:core:2.0:User"
],
"externalId": "alias",
"userName": "alias@contoso.OnMicrosoft.com",
"active": true,
"displayName": "First Name Last Name",
"meta": {
"resourceType": "User"
},
"roles": [{
"primary": true,
"type": "WindowsAzureActiveDirectoryRole",
"value": "Admin"
}
]}
Przykładowe dane wyjściowe (PATCH)
"Operations": [
{
"op": "Add",
"path": "roles",
"value": [{
"value": "{\"id\":\"06b07648-ecfe-589f-9d2f-6325724a46ee\",\"value\":\"25\",\"displayName\":\"Role1234\"}"
}
]
}]
Formaty żądań w patch i POST różnią się. Aby upewnić się, że post i PATCH są wysyłane w tym samym formacie, możesz użyć flagi funkcji opisanej tutaj.
AppRoleAssignmentsComplex
Kiedy należy używać: użyj wyrażenia AppRoleAssignmentsComplex, aby aprowizować wiele ról dla użytkownika. Jak skonfigurować: Edytuj listę obsługiwanych atrybutów zgodnie z opisem, aby uwzględnić nowy atrybut dla ról:
Następnie użyj wyrażenia AppRoleAssignmentsComplex, aby zamapować na atrybut roli niestandardowej, jak pokazano na obrazie:
Kwestie do rozważenia
- Wszystkie role są aprowizowane jako podstawowe = false.
- Atrybut
id
nie jest wymagany w rolach SCIM. Zamiast tego użyj atrybutuvalue
. Jeśli na przykładvalue
atrybut zawiera nazwę lub identyfikator roli, użyj go do aprowizacji roli. Możesz użyć flagi funkcji tutaj , aby rozwiązać problem z atrybutem id. Jednak poleganie wyłącznie na atrybucie value nie zawsze jest wystarczające; na przykład jeśli istnieje wiele ról o tej samej nazwie lub identyfikatorze. W niektórych przypadkach należy użyć atrybutu id, aby prawidłowo aprowizować rolę
Ograniczenia
- Element AppRoleAssignmentsComplex nie jest zgodny z ustawieniem zakresu na "Synchronizuj wszystkich użytkowników i grupy".
Przykładowe żądanie (POST)
{
"schemas": [
"urn:ietf:params:scim:schemas:core:2.0:User"
],
"externalId": "alias",
"userName": "alias@contoso.OnMicrosoft.com",
"active": true,
"displayName": "First Name Last Name",
"meta": {
"resourceType": "User"
},
"roles": [
{
"primary": false,
"type": "WindowsAzureActiveDirectoryRole",
"displayName": "Admin",
"value": "Admin"
},
{
"primary": false,
"type": "WindowsAzureActiveDirectoryRole",
"displayName": "User",
"value": "User"
}
]
}
Przykładowe dane wyjściowe (PATCH)
"Operations": [
{
"op": "Add",
"path": "roles",
"value": [
{
"value": "{"id":"06b07648-ecfe-589f-9d2f-6325724a46ee","value":"Admin","displayName":"Admin"}
},
{
"value": "{"id":"06b07648-ecfe-599f-9d2f-6325724a46ee","value":"User","displayName":"User"}
}
]
}
]
AssertiveAppRoleAssignmentsComplex (zalecane w przypadku ról złożonych)
Kiedy należy użyć: użyj elementu AssertiveAppRoleAssignmentsComplex, aby włączyć funkcję PATCH Replace. W przypadku aplikacji SCIM, które obsługują wiele ról, gwarantuje to, że role usunięte w identyfikatorze Entra firmy Microsoft również zostaną usunięte w aplikacji docelowej. Funkcja zamiany spowoduje również usunięcie wszelkich dodatkowych ról, które użytkownik ma, które nie są odzwierciedlone w identyfikatorze Entra
Różnica między elementami AppRoleAssignmentsComplex i AssertiveAppRoleAssignmentsComplex jest trybem wywołania poprawki i wpływem na docelowy systen. Poprzednia funkcja PATCH dodaje tylko i dlatego nie usuwa żadnych istniejących ról w obiekcie docelowym. Ta ostatnia funkcja zastępuje poprawkę, która usuwa role w systemie docelowym, jeśli nie zostały przypisane do użytkownika w identyfikatorze Entra.
Jak skonfigurować: Edytuj listę obsługiwanych atrybutów zgodnie z opisem, aby uwzględnić nowy atrybut dla ról:
Następnie użyj wyrażenia AssertiveAppRoleAssignmentsComplex, aby zamapować na atrybut roli niestandardowej, jak pokazano na ilustracji:
Kwestie do rozważenia
- Wszystkie role są aprowizowane jako podstawowe = false.
- Atrybut
id
nie jest wymagany w rolach SCIM. Zamiast tego użyj atrybutuvalue
. Jeśli na przykładvalue
atrybut zawiera nazwę lub identyfikator roli, użyj go do aprowizacji roli. Możesz użyć flagi funkcji tutaj , aby rozwiązać problem z atrybutem id. Jednak poleganie wyłącznie na atrybucie value nie zawsze jest wystarczające; na przykład jeśli istnieje wiele ról o tej samej nazwie lub identyfikatorze. W niektórych przypadkach należy użyć atrybutu id, aby prawidłowo aprowizować rolę
Ograniczenia
- AssertiveAppRoleAssignmentsComplex nie jest zgodne z ustawieniem zakresu "Synchronizuj wszystkich użytkowników i grupy".
Przykładowe żądanie (POST)
{"schemas":["urn:ietf:params:scim:schemas:core:2.0:User"],
"externalId":"contoso",
"userName":"contoso@alias.onmicrosoft.com",
"active":true,
"roles":[{
"primary":false,
"type":"WindowsAzureActiveDirectoryRole",
"display":"User",
"value":"User"},
{"primary":false,
"type":"WindowsAzureActiveDirectoryRole",
"display":"Test",
"value":"Test"}],
}
Przykładowe dane wyjściowe (PATCH)
{"schemas":["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
"Operations":[{
"op":"replace",
"path":"roles",
"value":[{
"primary":false,
"type":"WindowsAzureActiveDirectoryRole",
"display":"User",
"value":"User"},
{"primary":false,
"type":"WindowsAzureActiveDirectoryRole",
"display":"Test",
"value":"Test"}
]
}
]
}
Aprowizowanie atrybutu z wieloma wartościami
Niektóre atrybuty, takie jak phoneNumbers i e-mail, to atrybuty wielowartościowe, w których należy określić różne typy numerów telefonów lub wiadomości e-mail. Użyj wyrażenia dla atrybutów wielowartych. Umożliwia określenie typu atrybutu i mapowanie go na odpowiedni atrybut użytkownika Microsoft Entra dla wartości.
phoneNumbers[type eq "work"].value
phoneNumbers[type eq "mobile"]
.wartośćphoneNumbers[type eq "fax"].value
"phoneNumbers": [ { "value": "555-555-5555", "type": "work" }, { "value": "555-555-5555", "type": "mobile" }, { "value": "555-555-5555", "type": "fax" } ]
Przywracanie atrybutów domyślnych i mapowań atrybutów
Jeśli musisz zacząć od nowa i zresetować istniejące mapowania z powrotem do stanu domyślnego, możesz zaznaczyć pole wyboru Przywróć domyślne mapowania i zapisać konfigurację. Spowoduje to ustawienie wszystkich mapowań i filtrów określania zakresu tak, jakby aplikacja została dodana do dzierżawy firmy Microsoft Entra z galerii aplikacji.
Wybranie tej opcji wymusza ponowną synchronizację wszystkich użytkowników podczas działania usługi aprowizacji.
Ważne
Przed wywołaniem tej opcji zdecydowanie zalecamy ustawienie Stan aprowizacji na Wył .
Co należy wiedzieć
- Microsoft Entra ID zapewnia wydajną implementację procesu synchronizacji. W zainicjowanym środowisku tylko obiekty wymagające aktualizacji są przetwarzane podczas cyklu synchronizacji.
- Aktualizowanie mapowań atrybutów wpływa na wydajność cyklu synchronizacji. Aktualizacja konfiguracji mapowania atrybutów wymaga ponownego oceny wszystkich zarządzanych obiektów.
- Zalecanym najlepszym rozwiązaniem jest zachowanie co najmniej liczby kolejnych zmian w mapowaniach atrybutów.
- Dodanie atrybutu zdjęcia do aprowizacji w aplikacji nie jest obecnie obsługiwane, ponieważ nie można określić formatu synchronizowania zdjęcia. Możesz zażądać funkcji w funkcji User Voice.
IsSoftDeleted
Atrybut jest często częścią domyślnych mapowań dla aplikacji.IsSoftdeleted
wartość może być prawdziwa w jednym z czterech scenariuszy: 1) Użytkownik jest poza zakresem z powodu nieprzypisanego z aplikacji. 2) Użytkownik jest poza zakresem, ponieważ nie spełnia wymagań filtru określania zakresu. 3) Użytkownik jest usuwany nietrwale w identyfikatorze Microsoft Entra ID. 4) WłaściwośćAccountEnabled
jest ustawiona na wartość false dla użytkownika. Spróbuj zachowaćIsSoftDeleted
atrybut w mapowaniach atrybutów.- Usługa aprowizacji firmy Microsoft nie obsługuje aprowizacji wartości null.
- Zazwyczaj klucz
ID
podstawowy nie powinien być dołączany jako atrybut docelowy w mapowaniach atrybutów. - Atrybut roli zazwyczaj musi być mapowany przy użyciu wyrażenia, a nie bezpośredniego mapowania. Aby uzyskać więcej informacji na temat mapowania ról, zobacz Aprowizowanie roli w aplikacji SCIM.
- Chociaż można wyłączyć grupy z mapowań, wyłączenie użytkowników nie jest obsługiwane.
Następne kroki
- Automatyzowanie aprowizacji użytkowników/anulowania aprowizacji w aplikacjach SaaS
- Pisanie wyrażeń dla mapowań atrybutów
- Filtry określania zakresu na potrzeby aprowizacji użytkowników
- Używanie programu SCIM do włączania automatycznej aprowizacji użytkowników i grup z identyfikatora Entra firmy Microsoft do aplikacji
- Lista samouczków dotyczących sposobu integrowania aplikacji SaaS