Panoramica delle chiavi dei criteri in Azure Active Directory B2C
Prima di iniziare, usare il selettore Scegli un tipo di criterio 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.
Questa funzionalità è disponibile solo per i criteri personalizzati. Per i passaggi di installazione, selezionare Criteri personalizzati nel selettore precedente.
Azure Active Directory B2C (Azure AD B2C) archivia segreti e certificati sotto forma di chiavi dei criteri per stabilire una relazione di trust con i servizi con cui si integra. Questi trust sono costituiti da:
- Provider di identità esterni
- Connessione con Servizi API REST
- Firma e crittografia dei token
Questo articolo illustra le informazioni necessarie sulle chiavi dei criteri usate da Azure AD B2C.
Nota
Attualmente, la configurazione delle chiavi dei criteri è limitata solo ai criteri personalizzati.
È possibile configurare segreti e certificati per stabilire un trust tra i servizi nel portale di Azure nel menu Chiavi dei criteri. Le chiavi possono essere simmetriche o asimmetriche. La crittografia simmetrica o la crittografia a chiave privata è la posizione in cui viene usato un segreto condiviso per crittografare e decrittografare i dati. La crittografia asimmetrica o la crittografia a chiave pubblica è un sistema di crittografia che usa coppie di chiavi, costituite da chiavi pubbliche condivise con l'applicazione relying party e le chiavi private note solo ad Azure AD B2C.
Keyset e chiavi dei criteri
La risorsa di primo livello per le chiavi dei criteri in Azure AD B2C è il contenitore Keyset . Ogni keyset contiene almeno una chiave. Una chiave ha gli attributi seguenti:
Attributo | Richiesto | Osservazioni: |
---|---|---|
use |
Sì | Utilizzo: identifica l'uso previsto della chiave pubblica. Crittografia dei dati enc o verifica della firma nei dati sig . |
nbf |
No | Data e ora di attivazione. |
exp |
No | Data e ora di scadenza. |
È consigliabile impostare i valori di attivazione e scadenza della chiave in base agli standard PKI. Potrebbe essere necessario ruotare periodicamente questi certificati per motivi di sicurezza o criteri. Ad esempio, potrebbe essere disponibile un criterio per ruotare tutti i certificati ogni anno.
Per creare una chiave, è possibile scegliere uno dei metodi seguenti:
- Manuale: creare un segreto con una stringa definita. Il segreto è una chiave simmetrica. È possibile impostare le date di attivazione e scadenza.
- Generato: genera automaticamente una chiave. È possibile impostare le date di attivazione e scadenza. Sono disponibili due opzioni:
- Segreto : genera una chiave simmetrica.
- RSA : genera una coppia di chiavi (chiavi asimmetriche).
- Caricamento : caricare un certificato o una chiave PKCS12. Il certificato deve contenere le chiavi private e pubbliche (chiavi asimmetriche).
Rollover della chiave
Ai fini della sicurezza, Azure AD B2C può eseguire periodicamente il rollover delle chiavi o immediatamente in caso di emergenza. Qualsiasi applicazione, provider di identità o API REST che si integra con Azure AD B2C deve essere preparata per gestire un evento di rollover della chiave, indipendentemente dalla frequenza con cui può verificarsi. In caso contrario, se l'applicazione o Azure AD B2C tenta di usare una chiave scaduta per eseguire un'operazione di crittografia, la richiesta di accesso avrà esito negativo.
Se un keyset di Azure AD B2C ha più chiavi, solo una delle chiavi è attiva in qualsiasi momento, in base ai criteri seguenti:
- L'attivazione della chiave si basa sulla data di attivazione.
- Le chiavi vengono ordinate in base alla data di attivazione in ordine crescente. Le chiavi con date di attivazione più avanti nel futuro appaiono più in basso nell'elenco. Le chiavi senza una data di attivazione si trovano nella parte inferiore dell'elenco.
- Quando la data e l'ora correnti sono maggiori della data di attivazione di una chiave, Azure AD B2C attiverà la chiave e smetterà di usare la chiave attiva precedente.
- Quando è trascorsa l'ora di scadenza della chiave corrente e il contenitore di chiavi contiene una nuova chiave con una chiave non precedente e scaduta valida, la nuova chiave diventerà attiva automaticamente.
- Quando è trascorsa la scadenza della chiave corrente e il contenitore di chiavi non contiene una nuova chiave con scadenza non prima e scadenza, Azure AD B2C non sarà in grado di usare la chiave scaduta. Azure AD B2C genererà un messaggio di errore all'interno di un componente dipendente dei criteri personalizzati. Per evitare questo problema, è possibile creare una chiave predefinita senza attivazione e date di scadenza come rete di sicurezza.
- L'endpoint della chiave (URI JWKS) dell'endpoint di configurazione OpenId Connessione noto riflette le chiavi configurate nel contenitore delle chiavi, quando viene fatto riferimento alla chiave nel profilo tecnico JwtIssuer. Un'applicazione che usa una libreria OIDC recupererà automaticamente questi metadati per assicurarsi che usi le chiavi corrette per convalidare i token. Per altre informazioni, vedere Come usare Microsoft Authentication Library, che recupera sempre automaticamente le chiavi di firma del token più recenti.
Gestione delle chiavi dei criteri
Per ottenere la chiave attiva corrente all'interno di un contenitore di chiavi, usare l'endpoint getActiveKey dell'API Microsoft Graph.
Per aggiungere o eliminare chiavi di firma e crittografia:
- Accedi al portale di Azure.
- Se si ha accesso a più tenant, selezionare l'icona Impostazioni nel menu in alto per passare al tenant di Azure AD B2C dal menu Directory e sottoscrizioni.
- Nel portale di Azure cercare e selezionare Azure AD B2C.
- Nella pagina Panoramica, nella sezione Criteri, selezionare Framework dell'esperienza di gestione delle identità.
- Selezionare chiavi dei criteri
- Per aggiungere una nuova chiave, selezionare Aggiungi.
- Per rimuovere una nuova chiave, selezionare la chiave e quindi selezionare Elimina. Per eliminare la chiave, digitare il nome del contenitore di chiavi da eliminare. Azure AD B2C eliminerà la chiave e creerà una copia della chiave con il suffisso .bak.
Sostituire una chiave
Le chiavi di un keyset non sono sostituibili o rimovibili. Se è necessario modificare una chiave esistente:
- È consigliabile aggiungere una nuova chiave con la data di attivazione impostata sulla data e l'ora correnti. Azure AD B2C attiverà la nuova chiave e smetterà di usare la chiave attiva precedente.
- In alternativa, è possibile creare un nuovo set di chiavi con le chiavi corrette. Aggiornare i criteri per usare il nuovo keyset e quindi rimuovere il keyset precedente.
Passaggi successivi
- Informazioni su come usare Microsoft Graph per automatizzare la distribuzione di un keyset e delle chiavi dei criteri .