Aktivera anpassade domäner för Azure Active Directory B2C
Innan du börjar använder du väljaren Välj en principtyp för att välja den typ av princip som du konfigurerar. Azure Active Directory B2C erbjuder två metoder för att definiera hur användare interagerar med dina program: via fördefinierade användarflöden eller genom fullständigt konfigurerbara anpassade principer. De steg som krävs i den här artikeln skiljer sig åt för varje metod.
Den här artikeln beskriver hur du aktiverar anpassade domäner i omdirigerings-URL:er för Azure Active Directory B2C (Azure AD B2C). Genom att använda en verifierad anpassad domän har du fördelar som:
Det ger en smidigare användarupplevelse. Från användarens perspektiv finns de kvar i din domän under inloggningsprocessen i stället för att omdirigeras till Azure AD B2C-standarddomänens <klientnamn.b2clogin.com>.
Genom att stanna kvar i samma domän för ditt program under inloggningen minimerar du effekten av blockering av cookies från tredje part.
Du ökar antalet objekt (användarkonton och program) som du kan skapa i din Azure AD B2C-klient från standardvärdet 1,25 miljoner till 5,25 miljoner.
Översikt över anpassad domän
Du kan aktivera anpassade domäner för Azure AD B2C med hjälp av Azure Front Door. Azure Front Door är en global startpunkt som använder Microsofts globala edge-nätverk för att skapa snabba, säkra och mycket skalbara webbprogram. Du kan rendera Azure AD B2C-innehåll bakom Azure Front Door och sedan konfigurera ett alternativ i Azure Front Door för att leverera innehållet via en anpassad domän i programmets URL.
Titta på den här videon om du vill veta mer om anpassad Azure AD B2C-domän.
Följande diagram illustrerar Azure Front Door-integrering:
- Från ett program väljer en användare inloggningsknappen, som tar dem till inloggningssidan för Azure AD B2C. Den här sidan anger ett anpassat domännamn.
- Webbläsaren löser det anpassade domännamnet till Ip-adressen för Azure Front Door. Under DNS-matchning pekar en kanonisk namnpost (CNAME) med ett anpassat domännamn på front door-standardvärden (till exempel
contoso-frontend.azurefd.net
). - Trafiken som är adresserad till den anpassade domänen (till exempel
login.contoso.com
) dirigeras till den angivna Front Door-standardklientens värd (contoso-frontend.azurefd.net
). - Azure Front Door anropar Azure AD B2C-innehåll med azure AD B2C-standarddomänen
<tenant-name>.b2clogin.com
. Begäran till Azure AD B2C-slutpunkten innehåller det ursprungliga anpassade domännamnet. - Azure AD B2C svarar på begäran genom att visa relevant innehåll och den ursprungliga anpassade domänen.
Viktigt!
Anslutningen från webbläsaren till Azure Front Door bör alltid använda IPv4 i stället för IPv6.
Tänk på följande när du använder anpassade domäner:
- Du kan konfigurera flera anpassade domäner. Det maximala antalet anpassade domäner som stöds finns i Microsoft Entra-tjänstbegränsningar och begränsningar för Azure AD B2C- och Azure-prenumerations- och tjänstgränser, kvoter och begränsningar för Azure Front Door.
- Azure Front Door är en separat Azure-tjänst, så extra avgifter tillkommer. Mer information finns i Priser för Front Door.
- När du har konfigurerat anpassade domäner kommer användarna fortfarande att kunna komma åt standarddomännamnet klientnamn <>för Azure AD B2C.b2clogin.com (såvida du inte använder en anpassad princip och blockerar åtkomst.
- Om du har flera program migrerar du alla till den anpassade domänen eftersom webbläsaren lagrar Azure AD B2C-sessionen under det domännamn som för närvarande används.
Förutsättningar
- Skapa ett användarflöde så att användare kan registrera sig och logga in på ditt program.
- Registrera ett webbprogram.
Steg 1: Lägg till ett anpassat domännamn i din Azure AD B2C-klientorganisation
Varje ny Azure AD B2C-klientorganisation levereras med ett första domännamn, <domainname.onmicrosoft.com>. Du kan inte ändra eller ta bort det ursprungliga domännamnet, men du kan lägga till en anpassad domän.
Följ de här stegen för att lägga till en anpassad domän i din Azure AD B2C-klientorganisation:
Lägg till ditt anpassade domännamn i Microsoft Entra-ID.
Viktigt!
För de här stegen måste du logga in på din Azure AD B2C-klientorganisation och välja Microsoft Entra ID-tjänsten .
Lägg till DIN DNS-information i domänregistratorn. När du har lagt till ditt anpassade domännamn i Microsoft Entra-ID skapar du en DNS
TXT
ellerMX
post för din domän. Om du skapar den här DNS-posten för din domän verifieras ägarskapet för ditt domännamn.I följande exempel visas TXT-poster för login.contoso.com och account.contoso.com:
Namn (värdnamn) Type Data inloggning TXT MS=ms12345678 konto TXT MS=ms87654321 TXT-posten måste vara associerad med underdomänen eller värdnamnet för domänen. Till exempel inloggningsdelen av contoso.com domänen. Om värdnamnet är tomt eller
@
kan Microsoft Entra-ID:t inte verifiera den anpassade domän som du har lagt till. I följande exempel konfigureras båda posterna felaktigt.Namn (värdnamn) Type Data TXT MS=ms12345678 @ TXT MS=ms12345678 Dricks
Du kan hantera din anpassade domän med alla offentligt tillgängliga DNS-tjänster, till exempel GoDaddy. Om du inte har någon DNS-server kan du använda Azure DNS-zon eller App Service-domäner.
Verifiera ditt anpassade domännamn. Kontrollera varje underdomän eller värdnamn som du planerar att använda. Om du till exempel vill kunna logga in med login.contoso.com och account.contoso.com måste du verifiera både underdomäner och inte bara den översta domänen contoso.com.
Viktigt!
När domänen har verifierats tar du bort DNS TXT-posten som du skapade.
Steg 2: Skapa en ny Azure Front Door-instans
Följ de här stegen för att skapa en Azure Front Door:
Logga in på Azure-portalen.
Om du vill välja den katalog som innehåller den Azure-prenumeration som du vill använda för Azure Front Door och inte katalogen som innehåller din Azure AD B2C-klient väljer du ikonen Inställningar på den översta menyn för att växla till din Azure AD B2C-klient från menyn Kataloger + prenumerationer.
Följ stegen i Skapa Front Door-profil – Snabbskapa för att skapa en Front Door för din Azure AD B2C-klientorganisation med hjälp av följande inställningar:
Tangent Värde Prenumeration Välj din Azure-prenumerationen. Resursgrupp Välj en befintlig resursgrupp eller skapa en ny. Name Ge din profil ett namn, till exempel b2cazurefrontdoor
.Nivå Välj antingen Standard- eller Premium-nivå. Standardnivån är optimerad för innehållsleverans. Premium-nivån bygger på standardnivån och fokuserar på säkerhet. Se Nivåjämförelse. Slutpunktnamn Ange ett globalt unikt namn för slutpunkten, till exempel b2cazurefrontdoor
. Slutpunktens värdnamn genereras automatiskt.Ursprungstyp Välj Custom
.Ursprungligt värdnamn Ange <tenant-name>.b2clogin.com
. Ersätt<tenant-name>
med namnet på din Azure AD B2C-klientorganisation , till exempelcontoso.b2clogin.com
.Låt Cachelagring- och WAF-principen vara tomma.
När Azure Front Door-resursen har skapats väljer du Översikt och kopierar slutpunktens värdnamn. Det ser ut ungefär som
b2cazurefrontdoor-ab123e.z01.azurefd.net
.Kontrollera att värdnamnet och ursprungsvärdrubriken för ditt ursprung har samma värde:
- Under Inställningar väljer du Ursprungsgrupper.
- Välj din ursprungsgrupp i listan, till exempel standard-origin-group.
- I den högra rutan väljer du ditt Origin-värdnamn , till exempel
contoso.b2clogin.com
. - I fönstret Uppdatera ursprung uppdaterar du värdnamnet och ursprungsvärdhuvudet så att det har samma värde.
Steg 3: Konfigurera din anpassade domän på Azure Front Door
I det här steget lägger du till den anpassade domän som du registrerade i steg 1 i Azure Front Door.
3.1. Skapa en CNAME DNS-post
Om du vill lägga till den anpassade domänen skapar du en kanonisk namnpost (CNAME) med domänprovidern. En CNAME-post är en typ av DNS-post som mappar ett källdomännamn till ett måldomännamn (alias). För Azure Front Door är källdomännamnet ditt anpassade domännamn och måldomännamnet är ditt Standardvärdnamn för Front Door som du konfigurerade i steg 2. Skapa en ny Azure Front Door-instans. Exempel: b2cazurefrontdoor-ab123e.z01.azurefd.net
När Front Door har verifierat den CNAME-post som du skapade dirigeras trafik som är adresserad till den anpassade källdomänen (till exempel login.contoso.com
) till det angivna målet Front Door standardklientdelsvärd, till exempel contoso-frontend.azurefd.net
. Mer information finns i lägga till en anpassad domän i Din Front Door.
Skapa en CNAME-post för den anpassade domänen:
Logga in på webbplatsen för domänleverantören för den anpassade domänen.
Leta reda på sidan för att hantera DNS-poster med hjälp av leverantörens dokumentation eller sök efter områden på webbplatsen som heter Domännamn, DNS eller Namnserverhantering.
Skapa en CNAME-post för din anpassade domän och fyll i fälten enligt tabellen nedan (fältnamnen kan variera):
Källa Type Mål <login.contoso.com>
CNAME contoso-frontend.azurefd.net
Källa: Ange ditt anpassade domännamn (till exempel login.contoso.com).
Typ: Ange CNAME.
Mål: Ange standardklientdelsvärden för Front Door som du skapar i steg 2. Följande format måste användas:<värdnamn>.azurefd.net. Exempel:
contoso-frontend.azurefd.net
Spara dina ändringar.
3.2. Associera den anpassade domänen med din Front Door
I Azure-portalens hem söker du efter och väljer Azure Front Door-resursen
myb2cazurefrontdoor
för att öppna den.I den vänstra menyn under Inställningar väljer du Domäner.
Välj Lägg till en domän.
För DNS-hantering väljer du Alla andra DNS-tjänster.
För Anpassad domän anger du din anpassade domän, till exempel
login.contoso.com
.Behåll de andra värdena som standardvärden och välj sedan Lägg till. Din anpassade domän läggs till i listan.
Under Valideringstillstånd för domänen som du just lade till väljer du Väntar. Ett fönster med TXT-postinformation öppnas.
Logga in på webbplatsen för domänleverantören för den anpassade domänen.
Leta reda på sidan för att hantera DNS-poster med hjälp av leverantörens dokumentation eller sök efter områden på webbplatsen som heter Domännamn, DNS eller Namnserverhantering.
Skapa en ny TXT DNS-post och slutför fälten enligt nedan:
- Namn:
_dnsauth.contoso.com
, men du behöver bara_dnsauth
ange . - Typ:
TXT
- Värde: Ungefär som
75abc123t48y2qrtsz2bvk......
.
När du har lagt till TXT DNS-posten ändras valideringstillståndet i Front Door-resursen så småningom från Väntar till Godkänd. Du kan behöva läsa in sidan igen för att ändringen ska ske.
- Namn:
Gå tillbaka till Azure-portalen. Under Slutpunktsassociering för domänen som du nyss lade till väljer du Ta bort association.
För Välj slutpunkt väljer du slutpunkten för värdnamnet i listrutan.
För Listan Välj vägar väljer du standardväg och sedan Associera.
3.3. Aktivera vägen
Standardvägen dirigerar trafiken från klienten till Azure Front Door. Sedan använder Azure Front Door din konfiguration för att skicka trafiken till Azure AD B2C. Följ de här stegen för att aktivera standardvägen.
Välj Front Door Manager.
Om du vill lägga till aktivera standardvägen expanderar du först en slutpunkt från listan över slutpunkter i Front Door-hanteraren. Välj sedan standardvägen.
Följande skärmbild visar hur du väljer standardvägen.
Markera kryssrutan Aktivera väg .
Välj Uppdatera för att spara ändringar.
Steg 4: Konfigurera CORS
Om du anpassar Azure AD B2C-användargränssnittet med en HTML-mall måste du konfigurera CORS med din anpassade domän.
Konfigurera Azure Blob Storage för resursdelning mellan ursprung med följande steg:
- Navigera till ditt lagringskonto på Azure-portalen.
- I menyn väljer du CORS.
- För Tillåtna ursprung anger du
https://your-domain-name
. Ersättyour-domain-name
med ditt domännamn. Exempel:https://login.contoso.com
Använd alla gemener när du anger ditt klientnamn. - För Tillåtna metoder väljer du både
GET
ochOPTIONS
. - För Tillåtna rubriker anger du en asterisk (*).
- För Exponerade rubriker anger du en asterisk (*).
- För Max ålder anger du 200.
- Välj Spara.
Testa din anpassade domän
Logga in på Azure-portalen.
Om du har åtkomst till flera klienter väljer du ikonen Inställningar på den översta menyn för att växla till din Azure AD B2C-klient från menyn Kataloger + prenumerationer.
I Azure-portalen söker du efter och väljer Azure AD B2C.
Under Principer väljer du Användarflöden (principer).
Välj ett användarflöde och välj sedan Kör användarflöde.
För Program väljer du webbprogrammet med namnet webapp1 som du tidigare registrerade. Svars-URL :en ska visa
https://jwt.ms
.Kopiera URL:en under Kör användarflödesslutpunkt.
Om du vill simulera en inloggning med din anpassade domän öppnar du en webbläsare och använder den URL som du kopierade. Ersätt Azure AD B2C-domänen (<tenant-name.b2clogin.com>) med din anpassade domän.
I stället för:
https://contoso.b2clogin.com/contoso.onmicrosoft.com/oauth2/v2.0/authorize?p=B2C_1_susi&client_id=63ba0d17-c4ba-47fd-89e9-31b3c2734339&nonce=defaultNonce&redirect_uri=https%3A%2F%2Fjwt.ms&scope=openid&response_type=id_token&prompt=login
använd:
https://login.contoso.com/contoso.onmicrosoft.com/oauth2/v2.0/authorize?p=B2C_1_susi&client_id=63ba0d17-c4ba-47fd-89e9-31b3c2734339&nonce=defaultNonce&redirect_uri=https%3A%2F%2Fjwt.ms&scope=openid&response_type=id_token&prompt=login
Kontrollera att Azure AD B2C har lästs in korrekt. Logga sedan in med ett lokalt konto.
Upprepa testet med resten av dina principer.
Konfigurera din identitetsprovider
När en användare väljer att logga in med en social identitetsprovider initierar Azure AD B2C en auktoriseringsbegäran och tar användaren till den valda identitetsprovidern för att slutföra inloggningsprocessen. Auktoriseringsbegäran anger redirect_uri
med standarddomännamnet för Azure AD B2C:
https://<tenant-name>.b2clogin.com/<tenant-name>/oauth2/authresp
Om du har konfigurerat principen för att tillåta inloggning med en extern identitetsprovider uppdaterar du OAuth-omdirigerings-URI:erna med den anpassade domänen. De flesta identitetsprovidrar gör att du kan registrera flera omdirigerings-URI:er. Vi rekommenderar att du lägger till omdirigerings-URI:er i stället för att ersätta dem så att du kan testa din anpassade princip utan att påverka program som använder Standarddomännamnet för Azure AD B2C.
I följande omdirigerings-URI:
https://<custom-domain-name>/<tenant-name>/oauth2/authresp
- Ersätt <custom-domain-name> med ditt anpassade domännamn.
- Ersätt <klientorganisationens namn> med namnet på din klientorganisation eller ditt klientorganisations-ID.
I följande exempel visas en giltig omdirigerings-URI för OAuth:
https://login.contoso.com/contoso.onmicrosoft.com/oauth2/authresp
Om du väljer att använda klientorganisations-ID ser en giltig OAuth-omdirigerings-URI ut som följande exempel:
https://login.contoso.com/11111111-1111-1111-1111-111111111111/oauth2/authresp
METADATA för SAML-identitetsproviders skulle se ut som följande exempel:
https://<custom-domain-name>.b2clogin.com/<tenant-name>/<your-policy>/samlp/metadata?idptp=<your-technical-profile>
Konfigurera ditt program
När du har konfigurerat och testat den anpassade domänen kan du uppdatera dina program för att läsa in den URL som anger din anpassade domän som värdnamn i stället för Azure AD B2C-domänen.
Den anpassade domänintegrering gäller för autentiseringsslutpunkter som använder Azure AD B2C-principer (användarflöden eller anpassade principer) för att autentisera användare. Dessa slutpunkter kan se ut som följande exempel:
https://<custom-domain>/<tenant-name>/<policy-name>/v2.0/.well-known/openid-configuration
https://<custom-domain>/<tenant-name>/<policy-name>/oauth2/v2.0/authorize
https://<custom-domain>/<tenant-name>/<policy-name>/oauth2/v2.0/token
Ersätta:
- custom-domain med din anpassade domän
- klientnamn med ditt klientnamn eller klientorganisations-ID
- principnamn med ditt principnamn. Läs mer om Azure AD B2C-principer.
METADATA för SAML-tjänstprovidern kan se ut som följande exempel:
https://custom-domain-name/tenant-name/policy-name/Samlp/metadata
(Valfritt) Använda klientorganisations-ID
Du kan ersätta ditt B2C-klientnamn i URL:en med ditt klient-ID GUID för att ta bort alla referenser till "b2c" i URL:en. Du hittar ditt klient-ID-GUID på B2C-översiktssidan i Azure-portalen.
Du kan till exempel ändra https://account.contosobank.co.uk/contosobank.onmicrosoft.com/
till https://account.contosobank.co.uk/<tenant ID GUID>/
Om du väljer att använda klientorganisations-ID i stället för klientnamn måste du uppdatera identitetsproviderns OAuth-omdirigerings-URI:er i enlighet med detta. Mer information finns i Konfigurera din identitetsprovider.
Utfärdande av token
Token issuer name (iss) anspråksändringar baserat på den anpassade domän som används. Till exempel:
https://<domain-name>/11111111-1111-1111-1111-111111111111/v2.0/
(Valfritt) Blockera åtkomst till standarddomännamnet
När du har lagt till den anpassade domänen och konfigurerat ditt program kommer användarna fortfarande att kunna komma åt domänen <tenant-name.b2clogin.com>. För att förhindra åtkomst kan du konfigurera principen för att kontrollera auktoriseringsbegäran "värdnamn" mot en lista över tillåtna domäner. Värdnamnet är det domännamn som visas i URL:en. Värdnamnet är tillgängligt via {Context:HostName}
anspråksmatchare. Sedan kan du visa ett anpassat felmeddelande.
- Få exempel på en princip för villkorlig åtkomst som kontrollerar värdnamnet från GitHub.
- I varje fil ersätter du strängen
yourtenant
med namnet på din Azure AD B2C-klientorganisation. Om namnet på B2C-klienten till exempel är contosob2c blir alla instanser avyourtenant.onmicrosoft.com
.contosob2c.onmicrosoft.com
- Ladda upp principfilerna i följande ordning:
B2C_1A_TrustFrameworkExtensions_HostName.xml
och sedanB2C_1A_signup_signin_HostName.xml
.
(Valfritt) Avancerad konfiguration för Azure Front Door
Du kan använda avancerad konfiguration i Azure Front Door, till exempel Azure Web Application Firewall (WAF). Azure WAF ger ett centraliserat skydd av dina webbprogram mot vanliga sårbarheter och sårbarheter.
Tänk på följande när du använder anpassade domäner:
- WAF-principen måste vara samma nivå som Azure Front Door-profilen. Mer information om hur du skapar en WAF-princip som ska användas med Azure Front Door finns i Konfigurera WAF-princip.
- FUNKTIONEN FÖR WAF-hanterade regler stöds inte officiellt eftersom den kan orsaka falska positiva identifieringar och förhindra att legitima begäranden skickas, så använd endast ANPASSADE WAF-regler om de uppfyller dina behov.
Felsökning
Azure AD B2C returnerar ett fel som inte hittades på sidan
- Symptom – Du konfigurerar en anpassad domän, men när du försöker logga in med den anpassade domänen får du ett HTTP 404-felmeddelande.
- Möjliga orsaker – Det här problemet kan vara relaterat till DNS-konfigurationen eller Azure Front Door-serverdelskonfigurationen.
- Lösning:
- Kontrollera att den anpassade domänen har registrerats och verifierats i din Azure AD B2C-klientorganisation.
- Kontrollera att den anpassade domänen är korrekt konfigurerad. Posten
CNAME
för din anpassade domän måste peka på din Azure Front Door-standardklientdelsvärd (till exempel contoso-frontend.azurefd.net).
Våra tjänster är inte tillgängliga just nu
Symptom – Du konfigurerar en anpassad domän, men när du försöker logga in med den anpassade domänen får du följande felmeddelande: Våra tjänster är inte tillgängliga just nu. Vi arbetar med att återställa alla tjänster så snart som möjligt. Kom tillbaka snart.
Möjliga orsaker – Det här problemet kan vara relaterat till Azure Front Door-routningskonfigurationen.
Lösning: Kontrollera status för standardvägen. Om den är inaktiverad aktiverar du vägen. Följande skärmbild visar hur standardvägen ska se ut:
Azure AD B2C returnerar att resursen som du letar efter har tagits bort, fått namnet ändrat eller är tillfälligt otillgängligt.
- Symptom – Du konfigurerar en anpassad domän, men när du försöker logga in med den anpassade domänen får du den resurs som du letar efter har tagits bort, dess namn har ändrats eller är tillfälligt otillgängligt felmeddelande.
- Möjliga orsaker – Det här problemet kan vara relaterat till den anpassade Domänverifieringen i Microsoft Entra.
- Lösning: Kontrollera att den anpassade domänen har registrerats och verifierats i din Azure AD B2C-klientorganisation.
Identifiera providern returnerar ett fel
- Symptom – När du har konfigurerat en anpassad domän kan du logga in med lokala konton. Men när du loggar in med autentiseringsuppgifter från externa sociala identitetsprovidrar eller företagsidentitetsproviders, visar identitetsprovidern ett felmeddelande.
- Möjliga orsaker – När Azure AD B2C tar användaren att logga in med en federerad identitetsprovider anger den omdirigerings-URI:n. Omdirigerings-URI:n är slutpunkten där identitetsprovidern returnerar token. Omdirigerings-URI:n är samma domän som programmet använder med auktoriseringsbegäran. Om omdirigerings-URI:n ännu inte har registrerats i identitetsprovidern kanske den inte litar på den nya omdirigerings-URI:n, vilket resulterar i ett felmeddelande.
- Lösning – Följ stegen i Konfigurera din identitetsprovider för att lägga till den nya omdirigerings-URI:n.
Vanliga frågor och svar
Varför kan jag inte se den anpassade domänen när jag använder Kör nu för att försöka köra min princip?
Kopiera URL:en, ändra domännamnet manuellt och klistra sedan in den i webbläsaren igen.
Vilken IP-adress visas för Azure AD B2C? Användarens IP-adress eller Ip-adressen för Azure Front Door?
Azure Front Door skickar användarens ursprungliga IP-adress. Det är DEN IP-adress som du ser i granskningsrapportering eller din anpassade princip.
Viktigt!
Om klienten skickar en x-forwarded-for
rubrik till Azure Front Door använder Azure AD B2C upphovsställarens x-forwarded-for
som användarens IP-adress för utvärdering av villkorsstyrd åtkomst och {Context:IPAddress}
anspråkslösaren.
Kan jag använda en brandvägg för webbprogram från tredje part (WAF) med B2C?
Ja, Azure AD B2C stöder BYO-WAF (Bring Your Own Web Application Firewall). Du måste dock testa WAF för att säkerställa att den inte blockerar eller aviserar legitima begäranden till Azure AD B2C-användarflöden eller anpassade principer. Lär dig hur du konfigurerar Akamai WAF och Cloudflare WAF med Azure AD B2C.
Kan min Azure Front Door-instans finnas i en annan prenumeration än min Azure AD B2C-klient?
Ja, Azure Front Door kan finnas i en annan prenumeration.
Nästa steg
Läs mer om OAuth-auktoriseringsbegäranden.