Zelfstudie: IDEMIA Mobile ID configureren met Azure Active Directory B2C
Voordat u begint
Azure Active Directory B2C (Azure AD B2C) heeft twee methoden om de interactie van gebruikers met toepassingen te definiëren: vooraf gedefinieerde gebruikersstromen of configureerbaar aangepast beleid. Zie Overzicht van gebruikersstromen en aangepaste beleidsregels
Azure AD B2C integreren met IDEMIA Mobile ID
IDEMIA biedt biometrische verificatieservices zoals gezichts-id en vingerafdruk, waardoor fraude en hergebruik van referenties worden verminderd. Met Mobile ID profiteren burgers van een vertrouwde, door de overheid uitgegeven digitale id, als aanvulling op hun fysieke id. Mobiele id controleert de identiteit met behulp van een zelf geselecteerde pincode, touch-id of face-id. Burgers beheren hun identiteit door informatie te delen die nodig is voor een transactie. Veel staatsafdelingen van motorvoertuigen (DMV's) gebruiken Mobile ID.
Ga voor meer informatie naar idemia.com: IDEMIA
Scenariobeschrijving
Mobile ID-integratie omvat de volgende onderdelen:
-
Azure AD B2C : autorisatieserver die gebruikersreferenties verifieert
- Het wordt ook wel de id-provider (IdP) genoemd
- IDEMIA Mobile ID - OIDC-provider (OpenID Connect) die is geconfigureerd als een Azure AD externe B2C-provider
-
IDEMIA Mobile ID-toepassing : een digitale versie van een rijbewijs of door de staat uitgegeven id in een app op uw telefoon
- Zie IDEMIA Mobile ID
Mobile ID is een gedigitaliseerd identificatiedocument, een draagbaar mobiel identiteitstoken dat DMV's gebruiken om afzonderlijke identiteiten te verifiëren. De ondertekende gedigitaliseerde id wordt op mobiele telefoons van gebruikers opgeslagen als een identiteit aan de rand. De ondertekende referenties vergemakkelijken de toegang tot identiteitsservices, zoals bewijs van leeftijd, financiële kennis van uw klant, accounttoegang, enzovoort.
In het volgende diagram ziet u de gebruikersstromen voor registratie en aanmelding met Mobile ID.
- De gebruiker bezoekt de Azure AD B2C-aanmeldingspagina (de beantwoordende partij) met hun apparaat en mobiele id om een transactie uit te voeren.
- Azure AD B2C voert een id-controle uit. De gebruiker wordt omgeleid naar de IDEMIA-router met een OIDC-autorisatiecodestroom.
- De router verzendt een biometrische uitdaging naar de mobiele app van de gebruiker met verificatie- en autorisatieaanvraagdetails.
- Afhankelijk van de beveiliging kan de gebruiker worden gevraagd meer details op te geven: voer een pincode in, maak een live selfie of beide.
- Het verificatieantwoord biedt bewijs van bezit, aanwezigheid en toestemming. Het antwoord keert terug naar de router.
- De router controleert gebruikersgegevens en antwoorden op Azure AD B2C met het resultaat.
- De gebruiker wordt toegang verleend of geweigerd.
Mobiele id inschakelen
Als u wilt beginnen, gaat u naar de pagina Idemia.com Contact opnemen om een demo aan te vragen. Geef in het tekstveld van het aanvraagformulier aan dat u geïnteresseerd bent in Azure AD B2C-integratie.
Mobile ID integreren met Azure AD B2C
Gebruik de volgende secties om integratieprocessen voor te bereiden en uit te voeren.
Vereisten
Om aan de slag te gaan, hebt u het volgende nodig:
Toegang tot gebruikers met een IDEMIA, door de Amerikaanse staat uitgegeven mobiele id-referentie (mID)
- Of tijdens de testfase de mID-demotoepassing van IDEMIA
Een Azure-abonnement
- Als u nog geen account hebt, kunt u een gratis Azure-account krijgen
Een Azure AD B2C-tenant die is gekoppeld aan het Azure-abonnement
Uw zakelijke webtoepassing die is geregistreerd in een Azure AD B2C-tenant
- Voor het testen configureert u https://jwt.mseen Microsoft-webtoepassing met gedecodeerde tokeninhoud
Notitie
De inhoud van het token verlaat uw browser niet.
Een Relying Party-toepassing indienen voor mID
Tijdens de integratie van Mobile ID wordt de volgende informatie verstrekt.
Eigenschap | Beschrijving |
---|---|
Naam van de toepassing | Azure AD B2C of een andere toepassingsnaam |
Client_ID | De unieke id van de id-provider (IdP) |
Clientgeheim | Wachtwoord dat de Relying Party-toepassing gebruikt om te verifiëren met de IDEMIA IdP |
Eindpunt voor metagegevens | Een URL die verwijst naar een configuratiedocument van een tokenverlener, ook wel bekend als een bekend OpenID-configuratie-eindpunt |
Omleidings-URI's | https://your-B2C-tenant-name.b2clogin.com/your-B2C-tenant-name.onmicrosoft.com/oauth2/authresp Bijvoorbeeld: https://fabrikam.b2clogin.com/fabrikam.onmicrosoft.com/oauth2/authresp Als u een aangepast domein gebruikt, voert u https://your-domain-name/your-tenant-name.onmicrosoft.com/oauth2/authresp in. |
Omleidings-URI's na afmelden | https://your-B2C-tenant-name.b2clogin.com/your-B2C-tenant-name.onmicrosoft.com/{policy}/oauth2/v2.0/logout Een afmeldingsaanvraag verzenden. |
Notitie
U hebt de client-id en het clientgeheim later nodig om de IdP in Azure AD B2C te configureren.
Een beleidssleutel maken
Sla het genoteerde IDEMIA-clientgeheim op in uw Azure AD B2C-tenant. Gebruik voor de volgende instructies de map met uw Azure AD B2C-tenant.
- Meld u aan bij de Azure-portal.
- Selecteer mappen en abonnementen in de portalwerkbalk.
- Zoek op de pagina Portalinstellingen, Mappen en abonnementen, in de lijst Directorynaam, uw Azure AD B2C-directory
- Selecteer Schakelen.
- Selecteer in de linkerbovenhoek van Azure Portal De optie Alle services.
- Ga naar Azure AD B2C en selecteer het.
- Selecteer Identity Experience Framework op de pagina Overzicht.
- Selecteer Beleidssleutels.
- Selecteer Toevoegen.
- Kies Handmatig voor Opties.
- Voer een naam in voor de beleidssleutel. Bijvoorbeeld
IdemiaAppSecret
. Het voorvoegselB2C_1A_
wordt toegevoegd aan de sleutelnaam. - Voer bij Geheim het clientgeheim in dat u hebt genoteerd.
- Selecteer Handtekening voor sleutelgebruik.
- Selecteer Maken.
Mobiele id configureren als een externe idP
Als u wilt dat gebruikers zich kunnen aanmelden met mobile ID, definieert u IDEMIA als een claimprovider. Deze actie zorgt ervoor Azure AD B2C communiceert via een eindpunt, dat claims biedt Azure AD B2C gebruikt om gebruikersverificatie te verifiëren met biometrie.
Als u IDEMIA wilt definiëren als een claimprovider, voegt u deze toe aan het element ClaimsProvider in het bestand met de beleidsextensie.
<TechnicalProfile Id="Idemia-Oauth2">
<DisplayName>IDEMIA</DisplayName>
<Description>Login with your IDEMIA identity</Description>
<Protocol Name="OAuth2" />
<Metadata>
<Item Key="METADATA">https://idp.XXXX.net/oxauth/.well-known/openid-configuration</Item>
<!-- Update the Client ID below to the Application ID -->
<Item Key="client_id">00001111-aaaa-2222-bbbb-3333cccc4444</Item>
<Item Key="response_types">code</Item>
<Item Key="scope">openid id_basic mt_scope</Item>
<Item Key="response_mode">form_post</Item>
<Item Key="HttpBinding">POST</Item>
<Item Key="UsePolicyInRedirectUri">false</Item>
<Item Key="token_endpoint_auth_method">client_secret_basic</Item>
<Item Key="ClaimsEndpoint">https://idp.XXXX.net/oxauth/restv1/userinfo</Item>
<Item Key="ValidTokenIssuerPrefixes">https://login.microsoftonline.com/</Item>
</Metadata>
<CryptographicKeys>
<Key Id="client_secret" StorageReferenceId="B2C_1A_IdemiaAppSecret" />
</CryptographicKeys>
<InputClaims>
<InputClaim ClaimTypeReferenceId="acr" PartnerClaimType="acr_values" DefaultValue="loa-2" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="issuerUserId" PartnerClaimType="sub" />
<OutputClaim ClaimTypeReferenceId="tenantId" PartnerClaimType="tid" />
<OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="firstName1" />
<OutputClaim ClaimTypeReferenceId="surName" PartnerClaimType="lastName1" />
<OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" AlwaysUseDefaultValue="true" />
<OutputClaim ClaimTypeReferenceId="identityProvider" DefaultValue="idemia" />
<OutputClaim ClaimTypeReferenceId="documentId" />
<OutputClaim ClaimTypeReferenceId="address1" />
</OutputClaims>
<OutputClaimsTransformations>
<OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName" />
<OutputClaimsTransformation ReferenceId="CreateUserPrincipalName" />
<OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId" />
<OutputClaimsTransformation ReferenceId="CreateSubjectClaimFromAlternativeSecurityId" />
</OutputClaimsTransformations>
<UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin" />
</TechnicalProfile>
Stel client_id in op de toepassings-id van de toepassingsregistratie.
Eigenschap | Beschrijving |
---|---|
Bereik | Voor OpenID Connect (OIDC) is de minimale vereiste bereikparameter instellen op openid. Voeg meer bereiken toe als een door spaties gescheiden lijst. |
redirect_uri | Op deze locatie verzendt de gebruikersagent de autorisatiecode naar Azure AD B2C. |
response_type | Selecteer code voor de autorisatiecodestroom |
acr_values | Deze parameter bepaalt de verificatiemethoden die de gebruiker moet uitvoeren tijdens de verificatie. |
Selecteer een van de volgende waarden:
Parameterwaarde | Effect op gebruikersverificatieproces |
---|---|
loa-2 |
Alleen op crypto gebaseerde Microsoft Entra meervoudige verificatie |
loa-3 |
Op crypto gebaseerde MFA, plus een andere factor |
loa-4 |
Op crypto gebaseerde MFA, plus de gebruiker voert pincode en biometrische verificatie uit |
Het eindpunt /userinfo biedt de claims voor de bereiken die zijn aangevraagd in de autorisatieaanvraag. Voor de <mt_scope> zijn er onder andere claims zoals Voornaam, Achternaam en Rijbewijsnummer. De claims die voor een bereik zijn ingesteld, worden gepubliceerd in de sectie scope_to_claims_mapping van de detectie-API. Azure AD B2C vraagt claims aan van het claimeindpunt en retourneert deze in het element OutputClaims. Mogelijk moet u de claimnaam in uw beleid toewijzen aan de naam in de IdP. Definieer het claimtype in het element ClaimSchema:
<ClaimType Id="documentId">
<DisplayName>documentId</DisplayName>
<DataType>string</DataType>
</ClaimType>
<ClaimType Id="address1">
<DisplayName>address</DisplayName>
<DataType>string</DataType>
</ClaimType>
Een gebruikerstraject toevoegen
Voor deze instructies is de IdP ingesteld, maar staat deze niet op een aanmeldingspagina. Als u geen aangepast gebruikerstraject hebt, kopieert u een sjabloongebruikerstraject.
- Open het bestand vanuit het
TrustFrameworkBase.xml
starterspakket. - Zoek en kopieer de inhoud van het
UserJourneys
-element, waaronderID=SignUpOrSignIn
. - Open het
TrustFrameworkExtensions.xml
. - Zoek het element UserJourneys . Als er geen element is, voegt u er een toe.
- Plak de inhoud van het element UserJourney als een onderliggend element van het element UserJourneys.
- Wijzig de naam van de gebruikersbeleving-id. Bijvoorbeeld
ID=CustomSignUpSignIn
.
De IdP toevoegen aan een gebruikerstraject
Als er een gebruikerstraject is, voegt u de nieuwe IdP eraan toe. Voeg eerst een aanmeldingsknop toe en koppel deze vervolgens aan een actie. Dit is het technische profiel dat u hebt gemaakt.
- Zoek in het gebruikerstraject het element indelingsstap met Type=
CombinedSignInAndSignUp
, of Type=ClaimsProviderSelection
. Dit is doorgaans de eerste indelingsstap. Het element ClaimsProviderSelections heeft een IdP-lijst waarmee gebruikers zich aanmelden. De volgorde van de besturingselementen voor elementen is de volgorde van de aanmeldingsknoppen die de gebruiker ziet. - Voeg een XML-element ClaimsProviderSelection toe.
- Stel de waarde TargetClaimsExchangeId in op een beschrijvende naam.
- Voeg een ClaimExchange-element toe.
- Stel de id in op de waarde van de exchange-id van de doelclaims.
- Werk de waarde TechnicalProfileReferenceId bij naar de technische profiel-id die u hebt gemaakt.
In de volgende XML ziet u de eerste twee indelingsstappen van een gebruikerstraject met de IdP:
<OrchestrationStep Order="1" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.signuporsignin">
<ClaimsProviderSelections>
...
<ClaimsProviderSelection TargetClaimsExchangeId="IdemiaExchange" />
</ClaimsProviderSelections>
...
</OrchestrationStep>
<OrchestrationStep Order="2" Type="ClaimsExchange">
...
<ClaimsExchanges>
<ClaimsExchange Id="IdemiaExchange" TechnicalProfileReferenceId="Idemia-Oauth2" />
</ClaimsExchanges>
</OrchestrationStep>
Het Relying Party-beleid configureren
Het relying party-beleid, bijvoorbeeld SignUpSignIn.xml, geeft het gebruikerstraject op dat de Azure AD B2C uitvoert.
- Zoek het element DefaultUserJourney in relying party.
- Werk de ReferenceId bij zodat deze overeenkomt met de gebruikerstraject-id, waarin u de IdP hebt toegevoegd.
In het volgende voorbeeld is voor het CustomSignUpOrSignIn
-gebruikerstraject de ReferenceId ingesteld op CustomSignUpOrSignIn
.
<RelyingParty>
<DefaultUserJourney ReferenceId="CustomSignUpSignIn" />
...
</RelyingParty>
Het aangepaste beleid uploaden
Gebruik voor de volgende instructies de map met uw Azure AD B2C-tenant.
Meld u aan bij de Azure-portal.
Selecteer in de werkbalk van de portal de mappen en abonnementen.
Zoek op de pagina Portalinstellingen, mappen en abonnementen, in de lijst Directorynaam, uw Azure AD B2C-directory.
Selecteer Schakelen.
Zoek en selecteer Azure AD B2C in de Azure-portal.
Selecteer onder Beleid de optie Identity Experience Framework.
Selecteer Aangepast beleid uploaden.
Upload de twee beleidsbestanden die u hebt gewijzigd, in de volgende volgorde:
- Het uitbreidingsbeleid, bijvoorbeeld
TrustFrameworkExtensions.xml
- Het relying party-beleid, zoals
SignUpSignIn.xml
- Het uitbreidingsbeleid, bijvoorbeeld
Uw aangepaste beleid testen
- Selecteer uw Relying Party-beleid, bijvoorbeeld
B2C_1A_signup_signin
. - Selecteer bij Toepassing een webtoepassing die u hebt geregistreerd.
-
https://jwt.ms
wordt weergegeven voor Antwoord-URL. - Selecteer Nu uitvoeren.
- Selecteer idemia op de registratie- of aanmeldingspagina.
- De browser wordt omgeleid naar
https://jwt.ms
. Bekijk de inhoud van het token dat door Azure AD B2C wordt geretourneerd.
Meer informatie: Zelfstudie: Een webtoepassing registreren in Azure AD B2C