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:

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:

  1. Zaloguj się do centrum administracyjnego firmy Microsoft Entra jako co najmniej Administracja istrator aplikacji.

  2. Przejdź do aplikacji dla przedsiębiorstw usługi Identity>Applications>.

  3. Zostanie wyświetlona lista wszystkich skonfigurowanych aplikacji, w tym aplikacji dodanych z galerii.

  4. Wybierz dowolną aplikację, aby załadować okienko zarządzania aplikacjami, w którym można wyświetlać raporty i zarządzać ustawieniami aplikacji.

  5. Wybierz pozycję Aprowizowanie , aby zarządzać ustawieniami aprowizacji kont użytkowników dla wybranej aplikacji.

  6. 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.

    Wyświetlanie i edytowanie atrybutów użytkownika za pomocą mapowań

  7. 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.

    Używanie mapowania atrybutów do konfigurowania mapowań atrybutów dla aplikacji

    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.

  8. 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ą.

    Edytowanie atrybutu w celu edytowania atrybutów użytkownika

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.

Przykład przedstawia usługę ServiceNow z aprowizowaną grupą i obiektami użytkownika

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:

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:

  1. Zaloguj się do centrum administracyjnego firmy Microsoft Entra jako co najmniej Administracja istrator aplikacji.
  2. Przejdź do aplikacji dla przedsiębiorstw usługi Identity>Applications>.
  3. Wybierz aplikację, a następnie wybierz pozycję Aprowizowanie.
  4. W obszarze Mapowania wybierz obiekt (użytkownika lub grupę), dla którego chcesz dodać atrybut niestandardowy.
  5. W dolnej części strony wybierz pozycję Pokaż opcje zaawansowane.
  6. Wybierz pozycję Edytuj listę atrybutów dla pozycji AppName.
  7. 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/2819c223-7f76-453a-919d-413861904646"
  }
}

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.

Dodawanie elementu SingleAppRoleAssignment

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 na Sync 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:

Dodawanie ról

Następnie użyj wyrażenia AppRoleAssignmentsComplex, aby zamapować na atrybut roli niestandardowej, jak pokazano na obrazie:

Dodawanie elementu AppRoleAssignmentsComplex

Kwestie do rozważenia

  • Wszystkie role są aprowizowane jako podstawowe = false.
  • Atrybut id nie jest wymagany w rolach SCIM. Zamiast tego użyj atrybutu value . Jeśli na przykład value 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:

Dodawanie ról

Następnie użyj wyrażenia AssertiveAppRoleAssignmentsComplex, aby zamapować na atrybut roli niestandardowej, jak pokazano na ilustracji:

Dodawanie elementu AssertiveAppRoleAssignmentsComplex

Kwestie do rozważenia

  • Wszystkie role są aprowizowane jako podstawowe = false.
  • Atrybut id nie jest wymagany w rolach SCIM. Zamiast tego użyj atrybutu value . Jeśli na przykład value 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 IDpodstawowy 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