Aan de slag met verificatie op basis van certificaten in Azure Active Directory met federatie

Met verificatie op basis van certificaten (Certificate-based authentication/CBA) met federatie kunt u worden geverifieerd door Azure Active Directory met een clientcertificaat op een Windows-, Android- of iOS-apparaat wanneer u uw Exchange Online-account verbindt met:

  • Mobiele Microsoft-toepassingen, zoals Microsoft Outlook en Microsoft Word
  • EAS-clients (Exchange ActiveSync)

Als u deze functie configureert, hoeft u geen combinatie van gebruikersnaam en wachtwoord in te voeren in bepaalde e-mail- en Microsoft Office-toepassingen op uw mobiele apparaat.

Notitie

Als alternatief kunnen organisaties Azure AD CBA implementeren zonder federatie. Zie Overzicht van Azure AD verificatie op basis van certificaten voor Azure Active Directory voor meer informatie.

Dit onderwerp:

  • Laat u zien welke stappen u moet volgen om Verificatie op basis van certificaten te configureren en gebruiken voor tenantgebruikers in Office 365 Enterprise, Business, Education en US Government-abonnementen.
  • Hierbij wordt ervan uitgegaan dat u al een openbare-sleutelinfrastructuur (public key infrastructure/PKI) en AD FS hebt geconfigureerd.

Vereisten

Als u CBA met federatie wilt configureren, moeten de volgende instructies waar zijn:

  • CBA met federatie wordt alleen ondersteund voor federatieve omgevingen voor browsertoepassingen, systeemeigen clients met moderne verificatie of MSAL-bibliotheken. De enige uitzondering is Exchange Active Sync (EAS) voor Exchange Online (EXO), dat kan worden gebruikt voor federatieve en beheerde accounts. Als u Azure AD CBA wilt configureren zonder federatie, raadpleegt u Verificatie op basis van certificaten configureren in Azure AD.
  • De basiscertificeringsinstantie en eventuele tussenliggende certificeringsinstanties moeten worden geconfigureerd in Azure Active Directory.
  • Elke certificeringsinstantie moet een certificaatintrekkingslijst (certificate revocation list/CRL) hebben waarnaar kan worden verwezen via een internetgerichte URL.
  • U moet ten minste één certificeringsinstantie hebben geconfigureerd in Azure Active Directory. U vindt gerelateerde stappen in de sectie De certificeringsinstanties configureren.
  • Voor Exchange ActiveSync-clients moet het clientcertificaat het routeerbare e-mailadres van de gebruiker in Exchange Online hebben in de Principal Name of de RFC822-naamwaarde van het veld Alternatieve onderwerpnaam. Azure Active Directory wijst de RFC822-waarde toe aan het kenmerk Proxyadres in de map.
  • Uw clientapparaat moet toegang hebben tot ten minste één certificeringsinstantie die clientcertificaten uitgeeft.
  • Er moet een clientcertificaat voor clientverificatie zijn uitgegeven aan uw client.

Belangrijk

De maximale grootte van een CRL voor Azure Active Directory voor het downloaden en opslaan van cache is 20 MB en de tijd die nodig is om de CRL te downloaden mag niet langer zijn dan 10 seconden. Als Azure Active Directory geen CRL kan downloaden, mislukken verificaties op basis van certificaten die zijn uitgegeven door de bijbehorende CA. Aanbevolen procedures om ervoor te zorgen dat CRL-bestanden binnen de groottebeperkingen vallen, zijn om de levensduur van certificaten binnen redelijke grenzen te houden en verlopen certificaten op te schonen.

Stap 1: Selecteer uw apparaatplatform

Als eerste stap moet u het volgende controleren voor het apparaatplatform dat u belangrijk vindt:

  • De ondersteuning voor mobiele Office-toepassingen
  • De specifieke implementatievereisten

De gerelateerde informatie bestaat voor de volgende apparaatplatformen:

Stap 2: de certificeringsinstanties configureren

Als u uw certificeringsinstanties in Azure Active Directory wilt configureren, uploadt u voor elke certificeringsinstantie het volgende:

  • Het openbare gedeelte van het certificaat, in .cer-indeling
  • De internetgerichte URL's waar de certificaatintrekkingslijsten (CRL's) zich bevinden

Het schema voor een certificeringsinstantie ziet er als volgt uit:

    class TrustedCAsForPasswordlessAuth
    {
       CertificateAuthorityInformation[] certificateAuthorities;
    }

    class CertificateAuthorityInformation

    {
        CertAuthorityType authorityType;
        X509Certificate trustedCertificate;
        string crlDistributionPoint;
        string deltaCrlDistributionPoint;
        string trustedIssuer;
        string trustedIssuerSKI;
    }

    enum CertAuthorityType
    {
        RootAuthority = 0,
        IntermediateAuthority = 1
    }

Voor de configuratie kunt u Azure Active Directory PowerShell versie 2 gebruiken:

  1. Start Windows PowerShell met beheerdersbevoegdheden.

  2. Installeer de Azure Powershell-module, versie 2.0.0.33 of hoger.

        Install-Module -Name AzureAD –RequiredVersion 2.0.0.33
    

Als eerste configuratiestap moet u verbinding maken met uw tenant. Zodra er een verbinding met uw tenant bestaat, kunt u de vertrouwde certificeringsinstanties die in uw directory zijn gedefinieerd controleren, toevoegen, verwijderen en wijzigen.

Verbinding maken

Gebruik de cmdlet Connect-AzureAD om een verbinding met uw tenant tot stand te brengen:

    Connect-AzureAD

Ophalen

Gebruik de cmdlet Get-AzureADTrustedCertificateAuthority om de vertrouwde certificeringsinstanties op te halen die zijn gedefinieerd in uw directory.

    Get-AzureADTrustedCertificateAuthority

Toevoegen

Als u een vertrouwde certificeringsinstantie wilt maken, gebruikt u de cmdlet New-AzureADTrustedCertificateAuthority en stelt u het kenmerk crlDistributionPoint in op een juiste waarde:

    $cert=Get-Content -Encoding byte "[LOCATION OF THE CER FILE]"
    $new_ca=New-Object -TypeName Microsoft.Open.AzureAD.Model.CertificateAuthorityInformation
    $new_ca.AuthorityType=0
    $new_ca.TrustedCertificate=$cert
    $new_ca.crlDistributionPoint="<CRL Distribution URL>"
    New-AzureADTrustedCertificateAuthority -CertificateAuthorityInformation $new_ca

Verwijderen

Als u een vertrouwde certificeringsinstantie wilt verwijderen, gebruikt u de cmdlet Remove-AzureADTrustedCertificateAuthority:

    $c=Get-AzureADTrustedCertificateAuthority
    Remove-AzureADTrustedCertificateAuthority -CertificateAuthorityInformation $c[2]

U kunt de opdracht wijzigen om het 0e element te verwijderen door te wijzigen in Remove-AzureADTrustedCertificateAuthority -CertificateAuthorityInformation $c[0].

Wijzigen

Als u een vertrouwde certificeringsinstantie wilt wijzigen, gebruikt u de cmdlet Set-AzureADTrustedCertificateAuthority:

    $c=Get-AzureADTrustedCertificateAuthority
    $c[0].AuthorityType=1
    Set-AzureADTrustedCertificateAuthority -CertificateAuthorityInformation $c[0]

Stap 3: Intrekking configureren

Als u een clientcertificaat wilt intrekken, haalt Azure Active Directory de certificaatintrekkingslijst (CRL) op uit de URL's die zijn geüpload als onderdeel van informatie over de certificeringsinstantie en slaat deze in de cache op. De laatste publicatietijdstempel (eigenschap Effectieve datum) in de CRL wordt gebruikt om ervoor te zorgen dat de CRL nog geldig is. Er wordt regelmatig naar de CRL verwezen om de toegang tot certificaten in te trekken die deel uitmaken van de lijst.

Als een meer onmiddellijke intrekking is vereist (bijvoorbeeld als een gebruiker een apparaat verliest), kan het autorisatietoken van de gebruiker ongeldig worden gemaakt. Als u het autorisatietoken ongeldig wilt maken, stelt u het veld StsRefreshTokenValidFrom in voor deze specifieke gebruiker met behulp van Windows PowerShell. U moet het veld StsRefreshTokenValidFrom bijwerken voor elke gebruiker waarvoor u de toegang wilt intrekken.

Om ervoor te zorgen dat de intrekking behouden blijft, moet u de ingangsdatum van de CRL instellen op een datum na de waarde die is ingesteld door StsRefreshTokenValidFrom en ervoor zorgen dat het betreffende certificaat zich in de CRL bevindt.

In de volgende stappen wordt het proces voor het bijwerken en ongeldig maken van het autorisatietoken beschreven door het veld StsRefreshTokenValidFrom in te stellen.

  1. Maak verbinding met beheerdersreferenties voor de MSOL-service:

            $msolcred = get-credential
             connect-msolservice -credential $msolcred
    
  2. Haal de huidige waarde StsRefreshTokensValidFrom voor een gebruiker op:

            $user = Get-MsolUser -UserPrincipalName test@yourdomain.com`
            $user.StsRefreshTokensValidFrom
    
  3. Configureer een nieuwe stsRefreshTokensValidFrom-waarde voor de gebruiker die gelijk is aan de huidige tijdstempel:

            Set-MsolUser -UserPrincipalName test@yourdomain.com -StsRefreshTokensValidFrom ("03/05/2021")
    

De datum die u hebt ingesteld, moet in de toekomst zijn. Als de datum zich niet in de toekomst bevindt, is de eigenschap StsRefreshTokensValidFrom niet ingesteld. Als de datum zich in de toekomst bevindt, wordt StsRefreshTokensValidFrom ingesteld op de huidige tijd (niet de datum die wordt aangegeven door de opdracht Set-MsolUser).

Stap 4: Uw configuratie testen

Uw certificaat testen

Als eerste configuratietest moet u zich aanmelden bij Outlook Web Access of SharePoint Online met behulp van uw browser op het apparaat.

Als uw aanmelding is geslaagd, weet u dat:

  • Het gebruikerscertificaat is ingericht voor uw testapparaat
  • AD FS correct is geconfigureerd

Office Mobile-toepassingen testen

  1. Installeer op uw testapparaat een mobiele Office-toepassing (bijvoorbeeld OneDrive).
  2. Start de toepassing.
  3. Voer uw gebruikersnaam in en selecteer vervolgens het gebruikerscertificaat dat u wilt gebruiken.

Als het goed is, bent u nu aangemeld.

Clienttoepassingen Exchange ActiveSync testen

Voor toegang tot Exchange ActiveSync (EAS) via verificatie op basis van certificaten moet een EAS-profiel met het clientcertificaat beschikbaar zijn voor de toepassing.

Het EAS-profiel moet de volgende informatie bevatten:

  • Het gebruikerscertificaat dat moet worden gebruikt voor verificatie

  • Het EAS-eindpunt (bijvoorbeeld outlook.office365.com)

Een EAS-profiel kan worden geconfigureerd en op het apparaat worden geplaatst via het gebruik van MDM (Mobile Device Management), zoals Microsoft Endpoint Manager of door het certificaat handmatig in het EAS-profiel op het apparaat te plaatsen.

EAS-clienttoepassingen testen op Android

  1. Configureer een EAS-profiel in de toepassing die voldoet aan de vereisten in de vorige sectie.
  2. Open de toepassing en controleer of e-mail wordt gesynchroniseerd.

Volgende stappen

Aanvullende informatie over verificatie op basis van certificaten op Android-apparaten.

Aanvullende informatie over verificatie op basis van certificaten op iOS-apparaten.