Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Importante
A partire dal 1° maggio 2025, Azure AD B2C non sarà più disponibile per l'acquisto per i nuovi clienti. Altre informazioni sono disponibili nelle domande frequenti.
Prima di iniziare, utilizza il selettore Scegli un tipo di criterio nella parte superiore di questa pagina per scegliere il tipo di criterio che si sta configurando. Azure Active Directory B2C offre due metodi per definire il modo in cui gli utenti interagiscono con le applicazioni: tramite flussi utente predefiniti o tramite criteri personalizzati completamente configurabili. I passaggi necessari in questo articolo sono diversi per ogni metodo.
Annotazioni
In Azure Active Directory B2C i criteri personalizzati sono stati progettati principalmente per far fronte a scenari complessi. Per la maggior parte degli scenari, è consigliabile usare i flussi utente predefiniti. In caso contrario, vedere Introduzione ai criteri personalizzati in Active Directory B2C.
Prerequisiti
- Creare un flusso utente in modo tale che gli utenti possano iscriversi e accedere all'applicazione.
- Registrare un'applicazione Web.
- Completare i passaggi descritti in Introduzione ai criteri personalizzati in Active Directory B2C. Questa esercitazione illustra come aggiornare i file di criteri personalizzati per usare la configurazione del tenant di Azure AD B2C.
- Registrare un'applicazione Web.
Creare un'applicazione ID Apple
Per abilitare l'accesso per gli utenti con un ID Apple in Azure Active Directory B2C (Azure AD B2C), è necessario creare un'applicazione in https://developer.apple.com. Per altre informazioni, vedere Accedere con Apple. Se non si ha già un account per sviluppatore Apple, è possibile iscriversi a Apple Developer Program.
- Accedere al portale apple developer con le credenziali dell'account.
- Dal menu selezionare Certificati, ID e profili e quindi selezionare (+).
- Per Registra un nuovo identificatore selezionare ID app e quindi continua.
- Per Selezionare un tipo selezionareApp e quindi Continua.
- Per Registrare un ID applicazione:
- Immettere una descrizione
- Immettere l'ID bundle, ad esempio
com.contoso.azure-ad-b2c
. - Per Funzionalità selezionare Accedi con Apple nell'elenco delle funzionalità.
- Prendere nota dell'ID team (prefisso ID app) di questo passaggio. Sarà necessario in un secondo momento.
- Selezionare Continua e quindi Registra.
- Dal menu selezionare Certificati, ID e profili e quindi selezionare (+).
- Per Registra un nuovo identificatore selezionare ID servizi e quindi continua.
- Per Registrare un ID di servizi:
- Immettere una descrizione. La descrizione viene visualizzata all'utente nella schermata di consenso.
- Immettere l'identificatore , ad esempio
com.consoto.azure-ad-b2c-service
. Prendi nota del tuo identificatore ID Servizio. L'identificatore è l'ID client per il flusso OpenID Connect. - Selezionare Continua e quindi Registra.
- In Identificatori selezionare l'identificatore creato.
- Selezionare Accedi con Apple e quindi selezionare Configura.
- Selezionare l'ID app primario con cui si vuole configurare l'accesso con Apple.
- In Domini e sottodomini immettere
your-tenant-name.b2clogin.com
. Sostituire your-tenant-name con il nome del tenant. Se si usa un dominio personalizzato, immetterehttps://your-domain-name
. - In Return URLs, immettere
https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com/oauth2/authresp
. Se si usa un dominio personalizzato, immetterehttps://your-domain-name/your-tenant-name.onmicrosoft.com/oauth2/authresp
. Sostituireyour-tenant-name
con il nome del tenant eyour-domain-name
con il dominio personalizzato. L'URL restituito deve essere in lettere minuscole. - Selezionare Avantie quindi selezionare Fine.
- Quando la finestra popup è chiusa, selezionare Continua e quindi salva.
Creazione di una chiave segreta del client Apple
- Dal menu del portale per sviluppatori Apple selezionare Chiavi e quindi selezionare (+).
- Per Registrare una nuova chiave:
- Digita il nome della chiave .
- Selezionare Accedi con Apple e quindi selezionare Configura.
- Per l'ID app primaria selezionare l'app creata in precedenza e selezionare Salva.
- Selezionare Configura e quindi Registra per completare il processo di registrazione della chiave. Prendere nota dell'ID chiave . Questa chiave è necessaria quando si configurano i flussi utente.
- Per Download Your Key (Scarica chiave) selezionare Download (Scarica ) per scaricare un file con estensione p8 contenente la chiave.
Configurare Apple come fornitore di identità
- Accedere al portale di Azure con un account con almeno privilegi di amministratore del provider di identità esterno .
- Se si dispone dell'accesso a più tenant, selezionare l'icona Impostazioni nel menu superiore per passare al tenant di Azure AD B2C dal menu Directory + sottoscrizioni.
- In Servizi di Azure selezionare Azure AD B2C. In alternativa, usare la casella di ricerca per trovare e selezionare Azure AD B2C.
- Selezionare Provider di identità e quindi Apple.
- Per Nome immettere Accedi con Apple.
- Immettere l'ID sviluppatore Apple (Team ID).
- Immettere l'ID servizio Apple (ID client).
- Immettere l'ID chiave Apple nel passaggio Creazione di un segreto client Apple.
- Selezionare e caricare i dati del certificato Apple.
- Seleziona Salva.
Importante
- L'accesso con Apple richiede all'amministratore di rinnovare il segreto client ogni 6 mesi.
- Il segreto client Apple verrà rinnovato automaticamente alla scadenza. Se è necessario rinnovare manualmente il segreto, aprire Azure AD B2C nel portale di Azure, passare a Provider di identità>Apple e selezionare Rinnova segreto.
- Seguire le linee guida su come offrire il pulsante Accedi con Apple.
Aggiungere il provider di identità Apple a un flusso di utenti
Per consentire agli utenti di accedere usando un ID Apple, è necessario aggiungere il provider di identità Apple a un flusso utente. L'accesso con Apple può essere configurato solo per la versione consigliata dei flussi utente. Per aggiungere il provider di identità Apple a un flusso utente:
- Nel tenant di Azure AD B2C selezionare Flussi utente.
- Selezionare un flusso utente per il quale si vuole aggiungere il provider di identità Apple.
- In Provider di identità social selezionare Apple.
- Seleziona Salva.
- Per testare la politica, selezionare Esegui flusso utente.
- In Applicazione selezionare l'applicazione Web denominata testapp1 registrata in precedenza. L'URL di risposta dovrebbe mostrare
https://jwt.ms
. - Selezionare il pulsante Esegui flusso utente.
- Nella pagina di iscrizione o accesso selezionare Apple per accedere con l'ID Apple.
Se il processo di accesso ha esito positivo, il browser viene reindirizzato a https://jwt.ms
, che visualizza il contenuto del token restituito da Azure AD B2C.
Firma del segreto del client
Usa il file .p8 scaricato in precedenza per firmare il segreto del client in un token JWT. Sono disponibili molte librerie che possono creare e firmare automaticamente il token JWT. Usare la funzione di Azure che crea automaticamente un token .
Creare una funzione di Azure.
In Sviluppatore selezionare Codice e test.
Copiare il contenuto del file run.csx e incollarlo nell'editor.
Seleziona Salva.
Effettuare una richiesta HTTP
POST
e fornire le informazioni seguenti:- appleTeamId: ID del team per sviluppatori Apple
- appleServiceId: identificativo del servizio Apple (identificativo del cliente)
- appleKeyId: ID chiave a 10 cifre archiviato nell'intestazione JWT (obbligatorio da Apple)
-
p8key: chiave di formato PEM. È possibile ottenerlo aprendo il file con estensione p8 in un editor di testo e copiando tutti gli elementi tra
-----BEGIN PRIVATE KEY-----
e-----END PRIVATE KEY-----
senza interruzioni di riga.
Il codice JSON seguente è un esempio di chiamata alla funzione di Azure:
{
"appleTeamId": "ABC123DEFG",
"appleServiceId": "com.yourcompany.app1",
"appleKeyId": "URKEYID001",
"p8key": "MIGTAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBHkwdwIBAQQg+s07NiAcuGEu8rxsJBG7ttupF6FRe3bXdHxEipuyK82gCgYIKoZIzj0DAQehRANCAAQnR1W/KbbaihTQayXH3tuAXA8Aei7u7Ij5OdRy6clOgBeRBPy1miObKYVx3ki1msjjG2uGqRbrc1LvjLHINWRD"
}
La funzione di Azure risponde con un segreto del client JWT correttamente formattato e firmato in una risposta, ad esempio:
{
"token": "eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJjb20ueW91cmNvbXBhbnkuYXBwMSIsIm5iZiI6MTU2MDI2OTY3NSwiZXhwIjoxNTYwMzU2MDc1LCJpc3MiOiJBQkMxMjNERUZHIiwiYXVkIjoiaHR0cHM6Ly9hcHBsZWlkLmFwcGxlLmNvbSJ9.Dt9qA9NmJ_mk6tOqbsuTmfBrQLFqc9BnSVKR6A-bf9TcTft2XmhWaVODr7Q9w1PP3QOYShFXAnNql5OdNebB4g"
}
Creare una chiave dei criteri
È necessario archiviare il segreto client registrato in precedenza nel tenant di Azure AD B2C.
- Accedi al portale di Azure.
- Se si dispone dell'accesso a più tenant, selezionare l'icona Impostazioni nel menu superiore per passare al tenant di Azure AD B2C dal menu Directory + sottoscrizioni.
- In Servizi di Azure selezionare Azure AD B2C. In alternativa, usare la casella di ricerca per trovare e selezionare Azure AD B2C.
- Nella pagina Panoramica selezionare Identity Experience Framework.
- Seleziona Chiavi dei criteri e quindi Aggiungi.
- Per Opzioni scegliere Manuale.
- Immettere un nome per la chiave della politica. Ad esempio, "AppleSecret". Il prefisso "B2C_1A_" viene aggiunto automaticamente al nome della chiave.
- In Segreto immettere il valore di un token restituito dalla funzione di Azure (JWT).
- Per Uso chiave selezionare Firma.
- Fare clic su Crea.
Importante
- L'accesso con Apple richiede all'amministratore di rinnovare il segreto client ogni 6 mesi.
- Sarà necessario rinnovare manualmente il segreto client Apple se scade e archiviare il nuovo valore nella chiave della policy.
- È consigliabile impostare il proprio promemoria entro 6 mesi per generare un nuovo segreto client.
- Seguire le linee guida su come offrire il pulsante Accedi con Apple.
Configurare Apple come fornitore di identità
Per consentire agli utenti di accedere usando un ID Apple, è necessario definire l'account come provider di attestazioni con cui Azure AD B2C può comunicare tramite un endpoint. L'endpoint fornisce un set di attestazioni usate da Azure AD B2C per verificare che un utente specifico sia autenticato.
È possibile definire un ID Apple come provider di claim aggiungendolo all'elemento ClaimsProviders nel file di estensione della policy.
Aprire il TrustFrameworkExtensions.xml.
Trova l'elemento ClaimsProviders. Se non esiste, aggiungerlo sotto l'elemento radice.
Aggiungere un nuovo ClaimsProvider come segue:
<ClaimsProvider> <Domain>apple.com</Domain> <DisplayName>Apple</DisplayName> <TechnicalProfiles> <TechnicalProfile Id="Apple-OIDC"> <DisplayName>Sign in with Apple</DisplayName> <Protocol Name="OpenIdConnect" /> <Metadata> <Item Key="ProviderName">apple</Item> <Item Key="authorization_endpoint">https://appleid.apple.com/auth/authorize</Item> <Item Key="AccessTokenEndpoint">https://appleid.apple.com/auth/token</Item> <Item Key="JWKS">https://appleid.apple.com/auth/keys</Item> <Item Key="issuer">https://appleid.apple.com</Item> <Item Key="scope">name email openid</Item> <Item Key="HttpBinding">POST</Item> <Item Key="response_types">code</Item> <Item Key="external_user_identity_claim_id">sub</Item> <Item Key="response_mode">form_post</Item> <Item Key="ReadBodyClaimsOnIdpRedirect">user.name.firstName user.name.lastName user.email</Item> <Item Key="client_id">You Apple ID</Item> <Item Key="UsePolicyInRedirectUri">false</Item> </Metadata> <CryptographicKeys> <Key Id="client_secret" StorageReferenceId="B2C_1A_AppleSecret"/> </CryptographicKeys> <OutputClaims> <OutputClaim ClaimTypeReferenceId="issuerUserId" PartnerClaimType="sub" /> <OutputClaim ClaimTypeReferenceId="identityProvider" DefaultValue="https://appleid.apple.com" AlwaysUseDefaultValue="true" /> <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" AlwaysUseDefaultValue="true" /> <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="user.name.firstName"/> <OutputClaim ClaimTypeReferenceId="surname" PartnerClaimType="user.name.lastName"/> <OutputClaim ClaimTypeReferenceId="email" /> </OutputClaims> <OutputClaimsTransformations> <OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName"/> <OutputClaimsTransformation ReferenceId="CreateUserPrincipalName"/> <OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId"/> <OutputClaimsTransformation ReferenceId="CreateSubjectClaimFromAlternativeSecurityId"/> </OutputClaimsTransformations> <UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin" /> </TechnicalProfile> </TechnicalProfiles> </ClaimsProvider>
Impostare client_id sull'identificatore del servizio. Ad esempio:
com.consoto.azure-ad-b2c-service
.Salva il file.
Aggiungere un percorso utente
A questo punto, il fornitore dell'identità è stato configurato, ma non è ancora disponibile in nessuna delle pagine di accesso. Se non si ha un percorso utente personalizzato, creare un duplicato di un percorso utente modello esistente, altrimenti continuare con il passaggio successivo.
- Aprire il fileTrustFrameworkBase.xml dallo starter pack.
- Trovare e copiare l'intero contenuto dell'elemento UserJourney che include
Id="SignUpOrSignIn"
. - Aprire il TrustFrameworkExtensions.xml e trovare l'elemento UserJourneys . Se l'elemento non esiste, aggiungerne uno.
- Incollare l'intero contenuto dell'elemento UserJourney copiato come elemento figlio dell'elemento UserJourneys .
- Rinominare l'ID del percorso utente. Ad esempio:
Id="CustomSignUpSignIn"
.
Aggiungere il fornitore di identità a un percorso dell'utente
Dopo aver creato un percorso utente, aggiungere il nuovo provider di identità al percorso utente. Aggiungere prima un pulsante di accesso, quindi collegare il pulsante a un'azione. L'azione è il profilo tecnico creato in precedenza.
Trovare l'elemento del passaggio di orchestrazione che include
Type="CombinedSignInAndSignUp"
oType="ClaimsProviderSelection"
nel percorso utente. In genere è il primo passaggio di orchestrazione. L'elemento ClaimsProviderSelections contiene un elenco di provider di identità con cui un utente può accedere. L'ordine degli elementi controlla l'ordine dei pulsanti di accesso presentati all'utente. Aggiungere un elemento XML ClaimsProviderSelection . Impostare il valore di TargetClaimsExchangeId su un nome amichevole.Nel passaggio di orchestrazione successivo aggiungere un elemento ClaimsExchange . Impostare ID sul valore dell'ID di scambio di attestazioni di destinazione. Aggiornare il valore di TechnicalProfileReferenceId sull'ID del profilo tecnico creato in precedenza.
Il codice XML seguente illustra i primi due passaggi di orchestrazione di un percorso utente con il provider di identità:
<OrchestrationStep Order="1" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.signuporsignin">
<ClaimsProviderSelections>
...
<ClaimsProviderSelection TargetClaimsExchangeId="AppleExchange" />
</ClaimsProviderSelections>
...
</OrchestrationStep>
<OrchestrationStep Order="2" Type="ClaimsExchange">
...
<ClaimsExchanges>
<ClaimsExchange Id="AppleExchange" TechnicalProfileReferenceId="Apple-OIDC" />
</ClaimsExchanges>
</OrchestrationStep>
Configurare i criteri della relying party
I criteri della relying party, ad esempio SignUpSignIn.xml, specificano il percorso utente che verrà eseguito da Azure AD B2C. Trovare l'elemento DefaultUserJourney all'interno della relying party. Aggiorna ReferenceId affinché corrisponda all'ID del percorso utente in cui hai aggiunto il provider di identità.
Nell'esempio seguente, per il CustomSignUpSignIn
percorso utente, ReferenceId è impostato su CustomSignUpSignIn
:
<RelyingParty>
<DefaultUserJourney ReferenceId="CustomSignUpSignIn" />
...
</RelyingParty>
Caricare i criteri personalizzati
- Accedi al portale di Azure.
- Selezionare l'icona Directory e sottoscrizione nella barra degli strumenti del portale e quindi selezionare la directory che contiene il tenant di Azure AD B2C.
- Nel portale di Azure cercare e selezionare Azure AD B2C.
- Sotto Politiche, selezionare Identity Experience Framework.
- Selezionare Carica criteri personalizzati e quindi caricare i due file di criteri modificati, nell'ordine seguente: il criterio di estensione, ad esempio
TrustFrameworkExtensions.xml
, quindi il criterio della parte fiduciante, comeSignUpSignIn.xml
.
Metti alla prova la tua politica personalizzata.
- Seleziona i criteri della tua parte fidata, ad esempio
B2C_1A_signup_signin
. - In Applicazione selezionare un'applicazione Web registrata in precedenza. L'URL di risposta dovrebbe mostrare
https://jwt.ms
. - Selezionare il pulsante Esegui adesso .
- Nella pagina di iscrizione o accesso selezionare Apple per accedere con l'ID Apple.
Se il processo di accesso ha esito positivo, il browser viene reindirizzato a https://jwt.ms
, che visualizza il contenuto del token restituito da Azure AD B2C.
Personalizzare l'interfaccia utente
Seguire le linee guida su come offrire l'accesso con Apple. Apple offre diversi pulsanti Accedi con Apple che puoi usare per consentire agli utenti di configurare un account e accedere. Se necessario, creare un pulsante personalizzato per offrire l'accesso con Apple. Informazioni su come visualizzare un pulsante Accedi con Apple.
Per allinearsi alle linee guida dell'interfaccia utente apple:
- Personalizzare l'interfaccia utente con i modelli HTML
- Localizzare il nome del provider di identità.