Delen via


Externe gebruikers onboarden voor Line-Of-Business-toepassingen met Behulp van Microsoft Entra B2B

Toepassingsontwikkelaars kunnen Microsoft Entra B2B gebruiken om onboarding uit te voeren en samen te werken met externe gebruikers in LOB-toepassingen (Line-Of-Business). Net als bij de knop Delen in veel Office 365-toepassingen kunnen ontwikkelaars van toepassingen met één klik een uitnodigingservaring maken in LOB-toepassingen die zijn geïntegreerd met Microsoft Entra ID.

Voordelen zijn onder meer:

  • Onboarding van gebruikers en toegang tot de LOB-toepassingen. Gebruikers hebben toegang met een paar stappen
  • Externe gebruikers brengen hun identiteit en voeren eenmalige aanmelding (SSO) uit
  • Externe identiteitsinrichting voor Microsoft Entra-id
  • Beleid voor voorwaardelijke toegang van Microsoft Entra en beleid voor meerdere tenants voor het afdwingen van autorisatiebeleid, zoals meervoudige verificatie

Integratiestroom

Als u LOB-toepassingen wilt integreren met Microsoft Entra B2B, volgt u dit patroon:

Schermopname van de integratie van LOB-toepassingen.

  1. De eindgebruiker activeert de uitnodiging in de LOB-toepassing en verstrekt het e-mailadres van de externe gebruiker. De toepassing controleert of de gebruiker al bestaat en als dat niet het geval is, gaat u verder met het maken en verzenden van de uitnodiging|
  2. De toepassing verzendt namens de gebruiker een POST naar de Microsoft Graph API. Het biedt de omleidings-URL en de e-mail van de externe gebruiker die is gedefinieerd in Bevestigen dat de externe gebruiker zich in de map bevindt.
  3. Microsoft Graph API richt de gastgebruiker in microsoft Entra-id in.
  4. Microsoft Graph API retourneert de succes ir-foutstatus van de API-aanroep. Als dit lukt, bevat het antwoord de object-id van de Microsoft Entra-gebruiker en de uitnodigingskoppeling die naar de e-mail van de uitgenodigde gebruiker is verzonden. U kunt de e-mail van Microsoft onderdrukken en uw eigen aangepaste e-mail verzenden.
  5. (Optioneel) Als u meer kenmerken wilt schrijven voor de uitgenodigde gebruiker of de uitgenodigde gebruiker wilt toevoegen aan een groep. De toepassing maakt een extra API-aanroep naar de Microsoft Graph API.
  6. (Optioneel) Microsoft Graph API voert de updates voor Microsoft Entra-id uit.
  7. (Optioneel) Microsoft Graph API retourneert de geslaagde of mislukte status van de toepassing.
  8. De toepassing richt de gebruiker in op de database of back-endgebruikersmap met behulp van het kenmerk gebruikersobject-id als onveranderbare id.
  9. De toepassing geeft de geslaagde of mislukte status weer voor de eindgebruiker.

Als toewijzing is vereist voor toegang tot de LOB-toepassing, wordt de uitgenodigde gastgebruiker toegewezen aan de toepassing met een toepassingsrol. Schakel deze actie in als een andere API-aanroep die de uitgenodigde gast toevoegt aan een groep of automatiseer lidmaatschap met dynamische Microsoft Entra-lidmaatschapsgroepen. Voor dynamische lidmaatschapsgroepen is geen andere API-aanroep van de toepassing vereist; Ze worden echter zo snel bijgewerkt als het toevoegen van een gebruiker aan een groep via een gebruikersuitnodiging.

Controleer of de externe gebruiker zich in de map bevindt

Het is mogelijk dat de externe gebruiker is uitgenodigd en onboarded. De LOB-toepassing controleert of de gebruiker zich in de map bevindt. Maak een API-aanroep naar de Microsoft Graph API en presenteer de overeenkomsten aan de uitnodigende gebruiker om deze te selecteren.

Voorbeeld:

Application Permission: User.read.all

GET https://graph.microsoft.com/v1.0/users?$filter=othermails/any(id:id eq 'userEmail@contoso.com')  

Als u gebruikersgegevens in het antwoord ontvangt, bevindt de gebruiker zich in de map. Presenteer de gebruikers die zijn geretourneerd aan de uitnodigende gebruiker. Gebruikers toestaan om de externe gebruiker te selecteren die toegang krijgt. Als u gebruikers toegang wilt verlenen tot de toepassing, voert u API-aanroepen uit of activeert u andere processen.

De uitnodiging maken en verzenden

Als de externe gebruiker zich niet in de directory bevindt, gebruikt u Microsoft Entra B2B om de gebruiker uit te nodigen en onboarding uit te voeren voor uw Microsoft Entra-tenant. Bepaal wat u wilt opnemen in de uitnodigingsaanvraag voor Microsoft Graph API.

Gebruik de volgende elementen:

  • De eindgebruiker vragen het e-mailadres van de externe gebruiker op te geven
  • Bepaal de uitnodigings-URL waarmee uitgenodigde gebruikers worden omgeleid nadat ze de B2B-uitnodiging hebben geverifieerd en ingewisseld
    • De URL kan een algemene landingspagina zijn of dynamisch worden bepaald door de LOB-toepassing op basis van waar de eindgebruiker de uitnodiging heeft geactiveerd

Meer vlaggen en kenmerken voor de uitnodigingsaanvraag:

  • Weergavenaam van uitgenodigde gebruiker
  • Standaarduitnodigings-e-mail van Microsoft of de standaard-e-mail onderdrukken om uw eigen e-mail te maken

Nadat de toepassing de vereiste gegevens heeft verzameld, moet de toepassing de aanvraag posten bij de Microsoft Graph API-uitnodigingsbeheerder. Zorg ervoor dat de registratie van de toepassing machtigingen heeft in Microsoft Entra-id.

Bijvoorbeeld:

Delegated Permission: User.Invite.All

POST https://graph.microsoft.com/v1.0/invitations  
Content-type: application/json

{ 
"invitedUserDisplayName": "John Doe",  
"invitedUserEmailAddress": "john.doe@contoso.com",  
"sendInvitationMessage": true,  
"inviteRedirectUrl": "https://customapp.contoso.com"  
} 

Notitie

Zie het resourcetype uitnodiging in Microsoft Graph v1.0 voor opties voor de JSON-hoofdtekst van de uitnodiging.

Toepassingsontwikkelaars kunnen externe gebruikers onboarden met behulp van selfserviceregistratie of rechtenbeheertoegangspakketten van Microsoft Entra. Maak een uitnodigingsknop in uw LOB-toepassing waarmee een aangepast e-mailbericht wordt geactiveerd met selfserviceregistratie-URL of een URL voor het toegangspakket. De uitgenodigde gebruiker onboardt en opent de toepassing.

(Optioneel) Andere kenmerken schrijven naar Microsoft Entra-id

Belangrijk

Het verlenen van een toepassingsmachtiging voor het bijwerken van gebruikers in uw directory is een actie met hoge bevoegdheden. Als u de toepassing deze machtigingen met hoge bevoegdheden verleent, beveiligt en bewaakt u uw LOB-app.

Uw organisatie of de LOB-toepassing vereist mogelijk gegevens die zijn opgeslagen voor toekomstig gebruik, zoals claimuitzending in tokens of gedetailleerd autorisatiebeleid. Wanneer externe gebruikers worden uitgenodigd of gemaakt in Microsoft Entra ID, kan een toepassing een andere API-aanroep uitvoeren om ze bij te werken. De toepassing moet extra API-machtigingen hebben en een extra aanroep naar de Microsoft Graph API.

Als u de gebruiker wilt bijwerken, gebruikt u de object-id van de gemaakte gastgebruiker uit de uitnodigings-API-aanroep, de id-waarde in het API-antwoord van de aanwezigheidscontrole of uitnodiging. U kunt schrijven naar elk standaardkenmerk of aangepaste extensiekenmerken.

Voorbeeld:

Application Permission: User.ReadWrite.All

PATCH https://graph.microsoft.com/v1.0/users/<user's object ID> 
Content-type: application/json

{ 
"businessPhones": [ 
        "+1 234 567 8900" 
    ], 
"givenName": "John" 
"surname": "Doe", 
"extension_cf4ff515cbf947218d468c96f9dc9021_appRole": "external" 
} 

Zie Gebruiker bijwerken in Microsoft Graph v1.0 voor meer informatie.

(Optioneel) De uitgenodigde gebruiker toewijzen aan een groep

Notitie

Als gebruikerstoewijzing niet vereist is voor toegang tot de toepassing, kunt u deze stap overslaan.

Als gebruikerstoewijzing is vereist in Microsoft Entra ID voor toepassingstoegang of roltoewijzing, wordt de gebruiker toegewezen aan de toepassing. Anders kan de gebruiker geen toegang krijgen, ongeacht de verificatie. Als u de uitgenodigde externe gebruiker aan een groep wilt toevoegen, voert u een andere API-aanroep uit. De groep wordt toegewezen aan de toepassing en toegewezen aan een toepassingsrol.

Een voorbeeld van machtigingen: Wijs de rol Groepupdater of een aangepaste rol toe aan de bedrijfstoepassing. Beperk de roltoewijzing aan de groepen die deze toepassing bijwerkt. Of wijs de group.readwrite.all machtiging toe in Microsoft Graph API.

POST https://graph.microsoft.com/v1.0/groups/<insert group id>/members/$ref 
Content-type: application/json

{ 
"@odata.id": "https://graph.microsoft.com/v1.0/directoryObjects/<insert user id>" 
} 

Zie Leden toevoegen in Microsoft Graph v1.0 voor meer informatie.

U kunt ook dynamische Microsoft Entra-lidmaatschapsgroepen gebruiken waarmee gebruikers automatisch worden toegewezen op basis van specifieke kenmerken, zoals userType, e-mail of een aangepast kenmerk. Als gebruikerstoegang echter tijdgevoelig is, wordt deze methode niet aanbevolen omdat het maximaal 24 uur kan duren voordat dynamische lidmaatschapsgroepen zijn ingevuld.

Als u dynamische lidmaatschapsgroepen gebruikt, voegt u de gebruikers niet toe aan een groep met een andere API-aanroep. Maak in plaats daarvan een groep die de gebruiker als groepslid toevoegt, op basis van kenmerken zoals userType, e-mail of een aangepast kenmerk. Zie Een dynamische groep maken of bewerken en status ophalen voor meer informatie.

De uitgenodigde gebruiker inrichten voor de toepassing

Nadat de uitgenodigde externe gebruiker is ingericht in Microsoft Entra ID, retourneert de Microsoft Graph API een antwoord met gebruikersgegevens, zoals object-id en e-mail. De LOB-toepassing richt de gebruiker in op de map of database. De inrichting varieert, afhankelijk van de toepassing en het interne directorytype dat de toepassing gebruikt.

Als de externe gebruiker is ingericht in Microsoft Entra ID en de toepassing, meldt de LOB-toepassing de initiërende gebruiker dat het proces is geslaagd. De uitgenodigde gebruiker krijgt eenmalige aanmelding met zijn identiteit zonder de uitnodigende onboarding van de organisatie en het uitgeven van extra referenties. Microsoft Entra ID dwingt autorisatiebeleid af met voorwaardelijke toegang, Meervoudige verificatie van Microsoft Entra en Microsoft Entra ID Protection.

Andere overwegingen

Zorg ervoor dat foutafhandeling wordt uitgevoerd in de LOB-toepassing. De toepassing valideert elke API-aanroep. Als dit niet lukt, zijn extra pogingen of foutberichten nuttig.

Voor LOB-toepassingen die uitgenodigde externe gebruikers kunnen bijwerken, verleent u een aangepaste rol waarmee de toepassing gebruikers kan bijwerken en het bereik kan toewijzen aan een dynamische beheereenheid. Maak bijvoorbeeld een dynamische beheereenheid met gebruikers waarbij usertype = guest. Wanneer externe gebruikers onboarding uitvoeren voor Microsoft Entra ID, worden ze toegevoegd aan de beheereenheid. De LOB-toepassing moet proberen de gebruiker bij te werken en het kan meer dan één poging duren als er vertragingen zijn. Ondanks vertragingen kan de LOB-toepassing externe gebruikers bijwerken zonder deze toestemming te geven om een gebruiker in de directory bij te werken.