Lägga till OpenID Connect som en extern identitetsprovider

Gäller för: Grön cirkel med en vit bockmarkeringssymbol som anger att följande innehåll gäller för externa klienter. Externa klienter (läs mer)

Genom att konfigurera federation med en anpassad konfigurerad OpenID Connect-identitetsprovider (OIDC) gör du det möjligt för användare att registrera sig och logga in på dina program med sina befintliga konton från den federerade externa providern. Den här OIDC-federationen tillåter autentisering med olika leverantörer som följer OpenID Connect-protokollet.

När du lägger till en OIDC-identitetsprovider i ditt användarflödes inloggningsalternativ kan användarna registrera sig och logga in på de registrerade program som definierats i användarflödet. De kan göra detta med sina autentiseringsuppgifter från OIDC-identitetsprovidern. (Läs mer om autentiseringsmetoder och identitetsprovidrar för kunder.)

Förutsättningar

Konfigurera din OpenID Connect-identitetsprovider

Om du vill federera användare till din identitetsprovider förbereder du först identitetsprovidern för att acceptera federationsförfrågningar från din externa klientorganisation. För att göra den här förberedelsen lägger du till dina omdirigerings-URI:er och registrerar din identitetsleverantör för att erkännas.

Innan du går vidare till nästa steg lägger du till omdirigerings-URI:er på följande sätt:

https://<tenant-subdomain>.ciamlogin.com/<tenant-ID>/federation/oauth2

https://<tenant-subdomain>.ciamlogin.com/<tenant-subdomain>.onmicrosoft.com/federation/oauth2

Aktivera inloggning och registrering med din identitetsprovider

Om du vill aktivera inloggning och registrering för användare med ett konto i din identitetsprovider måste du registrera Microsoft Entra-ID som ett program i din identitetsprovider. Med det här steget kan din identitetsprovider identifiera och utfärda token till ditt Microsoft Entra-ID för federation. Registrera programmet med dina ifyllda omdirigerings-URI:er. Spara information om konfigurationen av identitetsprovidern för att konfigurera federation i din externa klientorganisation.

Federationsinställningar

För att konfigurera OpenID Connect-federation med din identitetsprovider i Microsoft Entra Externt ID behöver du följande inställningar:

  • Välkänd slutpunkt
  • Utfärdarens URI
  • Klient-ID
  • Klientautentiseringsmetod
  • Klienthemlighet
  • Omfattning
  • Svarstyp
  • Anspråksmappning
    • Under
    • Namn
    • Förnamn
    • Efternamn
    • E-post (krävs som standard, kan göras valfritt)
    • E-post verifierad
    • Telefonnummer
    • Telefonnummer verifierat
    • Gatuadress
    • Lokalitet
    • Region
    • Postnummer
    • Land

Konfigurera en ny OpenID Connect-identitetsprovider i administrationscentret

När du har konfigurerat identitetsprovidern slutför du det här steget för att konfigurera en ny OpenID Connect-federation i administrationscentret för Microsoft Entra.

  1. Logga in på administrationscentret för Microsoft Entra som minst en administratör för extern identitetsprovider.

  2. Bläddra till Entra ID>Externa Identiteter>Alla identitetsleverantörer.

  3. Välj fliken Anpassad och välj sedan Lägg till nytt>Öppet ID Anslut.

    Skärmbild av att lägga till en ny anpassad identitetsleverantör.

  4. Ange följande information för din identitetsprovider:

    • Visningsnamn: Namnet på din identitetsprovider som du visar för användarna under inloggnings- och registreringsflödena. Du kan till exempel logga in med IdP-namn eller Registrera dig med IdP-namn.

    • Välkänd slutpunkt (även kallat metadata-URI) är OIDC-identifierings-URI:n för att hämta konfigurationsinformationen för din identitetsprovider. Svaret är ett JSON-dokument som innehåller OAuth 2.0-slutpunktsplatser. Metadatadokumentet måste minst innehålla följande egenskaper: , , , , issuerauthorization_endpoint, och token_endpointtoken_endpoint_auth_methods_supported. response_types_supportedsubject_types_supportedjwks_uri Mer information finns i OpenID Connect Discovery-specifikationer .

    • OpenID Issuer URI: Entiteten för din identitetsprovider som utfärdar åtkomsttoken för ditt program. Om du till exempel använder OpenID Connect för att federera med din Azure AD B2C ser utfärdarens URI ut så här: https://login.b2clogin.com/{tenant}/v2.0/. Utfärdarens URI är en skiftlägeskänslig URL som använder https-schemat. Den innehåller komponenter för schema, värd och valfritt portnummer och sökväg, men inga fråge- eller fragmentkomponenter.

    Notera

    Information om hur du federerar med en Microsoft Entra ID-klientorganisation finns i Lägga till en Microsoft Entra ID-klientorganisation som en OpenID Connect-identitetsprovider. OIDC-federationen är inte heller kompatibel med funktionen Bjud in extern användare (förhandsversion).

    • Klient-ID och klienthemlighet är de identifierare som identitetsprovidern använder för att identifiera den registrerade programtjänsten. Ange en klienthemlighet när du väljer en client_secret-baserad autentiseringsmetod.
    • Klientautentisering är den typ av klientautentiseringsmetod som ska användas för att autentisera med din identitetsprovider med hjälp av tokenslutpunkten. client_secret_post och client_secret_jwt autentiseringsmetoder stöds. Även om administrationscentrets användargränssnitt kan visas private_key_jwt som ett alternativ stöds inte den här metoden för närvarande och bör inte väljas.

    Notera

    På grund av möjliga säkerhetsproblem client_secret_basic stöds inte klientautentiseringsmetoden.

    • Omfånget definierar den information och de behörigheter som du vill samla in från din identitetsprovider, till exempel openid profile. OpenID Connect-begäranden måste innehålla omfångsvärdet openid för att ta emot ID-token från din identitetsprovider. Andra omfång kan läggas till och separeras med mellanslag. Se OpenID Connect-dokumentationen för andra tillgängliga omfång, till exempel profile, emailoch mycket mer.
    • Svarstyp beskriver vilken typ av information som skickas tillbaka i det inledande anropet authorization_endpoint till identitetsproviderns tjänst. För närvarande stöds endast code svarstyp. id_token och token stöds inte.
  5. Välj Nästa: Anspråksmappning för att konfigurera anspråksmappning eller Granska och skapa för att lägga till din identitetsleverantör.

Notera

Microsoft rekommenderar att du inte använder det implicita beviljandeflödet eller ROPC-flödet. Därför stöder inte konfigurationen av den externa identitetsprovidern OpenID Connect dessa flöden. Det rekommenderade sättet att stödja SPA:er är OAuth 2.0-auktoriseringskodflöde (med PKCE) som stöds av OIDC-federationskonfiguration.

Lägga till OIDC-identitetsprovider i ett användarflöde

Nu konfigurerar du OIDC-identitetsprovidern i ditt Microsoft Entra-ID, men det är ännu inte tillgängligt på någon av inloggningssidorna. Så här lägger du till OIDC-identitetsprovidern i ett användarflöde:

  1. I din externa klientorganisation, bläddra till Entra ID>Externa Identiteter>Användarflöden.

  2. Välj det användarflöde där du vill lägga till OIDC-identitetsprovidern.

  3. Under Inställningar väljer du identitetsleverantörer.

  4. Under Andra identitetsprovidrar väljer du OIDC-identitetsprovider.

    Skärmbild av den anpassade OIDC-providern i IdP-listan.

  5. Välj Spara.

Gör e-post valfritt för registrering av extern identitetsprovider

Som standard krävs en e-postadress när användare registrerar sig hos en extern identitetsprovider (IdP). Om din externa IdP inte skickar ett e-postanspråk uppstår felet AADSTS901011: No email address was obtained from the external oidc identity provider under registreringen. För att undvika det här felet konfigurerar du användarflödet så att e-postattributet blir valfritt. Användarna kan sedan slutföra registreringen med endast sin externa IdP-identitet, utan att ange en e-postadress.

Important

Att göra e-post valfritt är en inställning på användarflödesnivå. Den här ändringen gäller för registreringar för alla program som är associerade med användarflödet.

Tip

Kontoväljaren visar vanligtvis användarens e-postadress. När ingen e-postadress samlas in visas visningsnamnet i stället. För att hjälpa användare att enkelt identifiera sitt konto mappar du anspråket name i Anspråksmappning eller samlar in visningsnamnet vid registrering.

Uppdatera användarflödet för att göra e-postmeddelandet valfritt

Om du vill göra e-postattributet valfritt i användarflödet använder du Microsoft Graph API för att uppdatera egenskapen onAttributeCollection för användarflödet.

  1. Leta reda på ID:t för det användarflöde som du vill uppdatera. Ett sätt att göra detta är att använda Graph Explorer för att lista alla användarflöden:

    GET https://graph.microsoft.com/v1.0/identity/authenticationEventsFlows
    

    Leta upp id för användarflödet och egenskapen onAttributeCollection i svaret.

  2. Kopiera egenskapen onAttributeCollection från svaret och använd den för att uppdatera användarflödet med en PATCH begäran. Den enda ändring du behöver göra är att ange required egenskapen för e-postattributet till false:

    PATCH https://graph.microsoft.com/v1.0/identity/authenticationEventsFlows/{user-flow-id}
    Content-Type: application/json
    
    {
        "@odata.type": "#microsoft.graph.externalUsersSelfServiceSignUpEventsFlow",
        "onAttributeCollection": {
            "@odata.type": "#microsoft.graph.onAttributeCollectionExternalUsersSelfServiceSignUp",
            "attributeCollectionPage": {
                "views": [
                    {
                        "title": null,
                        "description": null,
                        "inputs": [
                            {
                                "attribute": "email",
                                "label": "Email Address",
                                "inputType": "text",
                                "defaultValue": null,
                                "hidden": false,
                                "editable": true,
                                "writeToDirectory": true,
                                "required": false,
                                "validationRegEx": "^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*$",
                                "options": []
                            }
                        ]
                    }
                ]
            }
        }
    }
    

    Notera

    Inkludera alla attributindata från ditt befintliga användarflöde i PATCH begäran, inte bara e-postattributet. Föregående exempel visar endast e-postindata, men ditt användarflöde kan innehålla ytterligare attribut. Det fullständiga schemat finns i authenticationAttributeCollectionPage-resurstypen.

Kända begränsningar

Principer för villkorsstyrd åtkomst som kräver MFA-registrering fungerar inte som förväntat när en extern klientorganisation federeras med en extern identitetsprovider (IdP). Den här begränsningen kan resultera i något av följande beteende:

  • Användare kan inte registrera en MFA-metod och kan inte slutföra inloggningen och får ofta ett fel.
  • Användarna omdirigeras inte till MFA-registreringsflödet (registrering) under inloggningen som förväntat.