Condividi tramite


Quando usare una regola di trasformazione dell'attestazione

È possibile usare questa regola in Active Directory Federation Services (AD FS) quando è necessario eseguire il mapping di un tipo di attestazione in ingresso a un tipo di attestazione in uscita e quindi applicare un'azione che determinerà quale output deve verificarsi in base ai valori originati nell'attestazione in ingresso. Quando si usa questa regola, si passano o trasformano attestazioni che corrispondono alla logica della regola seguente, in base a una delle opzioni configurate nella regola, come descritto nella tabella seguente.

Opzione regola Logica delle regole
Gestire tutte le richieste in ingresso Se il tipo di attestazione in ingresso è uguale al tipo di attestazione specificato e il valore è uguale a qualsiasi valore , passare l'attestazione con il tipo di attestazione in uscita uguale al tipo di attestazione specificato .
Sostituire un valore di attestazione in ingresso con un valore di attestazione in uscita differente Se il tipo di dichiarazione in ingresso è uguale a tipo di dichiarazione specificato e il valore è uguale a valore di dichiarazione specificato, allora trasforma la dichiarazione con un nuovo valore della dichiarazione in uscita valore di dichiarazione specificato e con tipo di dichiarazione in uscita tipo di dichiarazione specificato
Sostituzione dei suffissi di e-mail in arrivo con un nuovo suffisso di e-mail. Se il tipo di attestazione in ingresso è uguale al tipo di attestazione specificato e il valore è uguale a qualunque valore di suffisso, allora trasformare l'attestazione con un nuovo valore di attestazione in uscita valore del suffisso specificato e con tipo di attestazione in uscita tipo di attestazione specificato.

Le sezioni seguenti forniscono un'introduzione di base alle regole delle attestazioni e ulteriori dettagli su quando utilizzare queste regole.

Informazioni sulle regole delle richieste

Una regola di attestazione rappresenta un'istanza della logica aziendale che riceve un'attestazione in entrata, applica una condizione (se x allora y) e genera un'attestazione in uscita in base ai parametri della condizione. L'elenco seguente illustra suggerimenti importanti che dovresti conoscere riguardo alle regole dei reclami prima di continuare a leggere questo argomento.

  • Nello snap-in Gestione AD FS le regole di attestazione possono essere create solo usando i modelli di regola di attestazione

  • Le regole delle attestazioni processano le attestazioni in ingresso, sia direttamente da un provider di attestazioni (ad esempio Active Directory o un altro servizio federativo), sia dal risultato delle regole di trasformazione di accettazione sul trust del provider di attestazioni.

  • Le regole delle richieste vengono elaborate dal motore di rilascio delle richieste in ordine cronologico all'interno di un determinato insieme di regole. Impostando la precedenza sulle regole, è possibile perfezionare o filtrare ulteriormente le attestazioni generate dalle regole precedenti all'interno di un determinato set di regole.

  • I modelli di regole di attestazione richiedono sempre di specificare un tipo di attestazione in ingresso. Tuttavia, è possibile elaborare più valori di attestazione con lo stesso tipo di attestazione usando una singola regola.

Per informazioni più dettagliate sulle regole di attestazione e sugli insiemi di regole di attestazione, vedere Il ruolo delle regole di attestazione. Per ulteriori informazioni su come vengono elaborate le regole, vedere Il ruolo del motore di gestione delle attestazioni. Per altre informazioni sull'elaborazione dei set di regole delle attestazioni, vedere Il ruolo della pipeline di attestazioni.

Attraversare tutti i valori delle dichiarazioni

Quando si utilizza questa azione, tutti i valori di dichiarazione in ingresso associati a un tipo di dichiarazione in ingresso specificato vengono mappati a un tipo di dichiarazione in uscita specificato prima di essere inviati come dichiarazioni in uscita nei token che vengono firmati dal Servizio Federativo.

Ad esempio, quando una regola viene impostata con la logica opzione Passa tutti i valori delle attestazioni e viene specificato il tipo di attestazione in ingresso Group e il tipo di attestazione in uscita Role, tutti i valori delle attestazioni in ingresso che passano dall'autorità emittente vengono copiati singolarmente in nuove attestazioni in uscita con il tipo di attestazione Role.

Trasformazione di un'affermazione

In AD FS, il termine trasformazione delle attestazioni significa sostituire un valore di attestazione in ingresso con un diverso valore di attestazione in uscita. È la regola "Trasforma un'attestazione in ingresso" che rende possibile questa funzione. All'interno delle proprietà di questa regola, è possibile impostare condizioni per trasformare i valori in ingresso con un valore di attestazione in uscita diverso in base al tipo di attestazione in ingresso specificato.

Ad esempio, come illustrato nella figura seguente, quando una regola è impostata con la condizione di sostituire un valore in ingresso con un diverso valore di dichiarazione in uscita, tutti i tipi di dichiarazione in ingresso di Group vengono mappati a nuovi tipi di dichiarazione in uscita di Role. In questo caso, il valore della dichiarazione in ingresso dell'acquirente viene sostituito con il nuovo valore della dichiarazione in uscita di Admin.

quando usare una trasformazione

È anche possibile utilizzare questa regola per applicare una condizione che sostituirà tutte le attestazioni in ingresso con un valore di suffisso di posta elettronica specificato con un nuovo valore. Ad esempio, è possibile impostare una condizione in questa regola per modificare tutti i valori delle attestazioni con il suffisso sales.corp.fabrikam.com in fabrikam.com.

Configurazione di questa regola in un trust del provider di attestazioni

Quando si usa un trust del provider di attestazioni, questa regola può essere configurata per trasformare le attestazioni in ingresso dal provider di attestazioni in equivalenti attendibili. I tipi di attestazione o i valori di attestazione possono avere un significato diverso nella tua organizzazione rispetto alle organizzazioni dei fornitori di attestazioni. È possibile usare questa regola per normalizzare i tipi di attestazione e i valori provenienti dal fornitore di attestazioni in modo che gli equivalenti delle attestazioni in uscita possano essere riconosciuti dalla parte fidata.

Configurazione di questa regola su un trust della parte fidata

Quando si usa un trust del partner dipendente, questa regola può essere configurata per trasformare le dichiarazioni per il partner dipendente specifico. I tipi di attestazione o i valori di attestazione possono avere un significato diverso per una relying party specifica e questa regola consente di modificare i tipi di attestazione e i valori in uscita per una singola relying party.

Come creare questa regola

Questa regola viene creata utilizzando il linguaggio delle regole di attestazione oppure il modello di regola Trasformare un'attestazione in ingresso nello snap-in Gestione AD FS. Questo modello di regola offre le opzioni di configurazione seguenti:

  • Specificare un nome di regola dichiarazione

  • Trasformare un tipo di attestazione in ingresso specifico in un tipo di attestazione in uscita specificato

  • Superare tutti i valori delle richieste

  • Sostituire un valore di attestazione in ingresso con un diverso valore di attestazione in uscita

  • Sostituire le attestazioni di suffisso di posta elettronica in arrivo con un nuovo suffisso di posta elettronica

Per altre istruzioni su come creare questo modello, vedere Creare una regola per trasformare un'attestazione in ingresso nella Guida alla distribuzione di AD FS.

Uso del linguaggio delle regole di attestazione

Se l'attestazione in uscita deve essere costruita dal contenuto di più attestazioni in ingresso, è invece necessario usare una regola personalizzata. Se il valore dell'attestazione in uscita deve basarsi sul valore dell'attestazione in ingresso, ma con contenuto aggiuntivo, è necessario anche usare una regola personalizzata in tale contesto. Per altre informazioni, vedere Quando usare una regola di attestazione personalizzata.

Esempi di come costruire una sintassi di una regola di trasformazione

Quando si usa la sintassi del linguaggio delle regole attestazioni per trasformare le attestazioni, è possibile impostare una proprietà dell'attestazione trasformata su un nuovo valore letterale. Ad esempio, la regola seguente modifica il valore delle attestazioni di ruolo da "Administrators" a "root" mantenendo lo stesso tipo di attestazione:

c:[type == "https://schemas.microsoft.com/ws/2008/06/identity/claims/role", value == "Administrators"]  => issue(type = c.type, value = "root");

Le espressioni regolari possono essere utilizzate anche per le trasformazioni delle richieste. Ad esempio, la regola seguente imposta il dominio negli attributi di nome utente di Windows in formato DOMAIN\USER su FABRIKAM.

c:[type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name"] => issue(type = c.type, value = regexreplace(c.value, "(?<domain>[^\\]+)\\(?<user>.+)", "FABRIKAM\${user}"));

Procedure consigliate per la creazione di regole personalizzate

Le trasformazioni delle attestazioni possono essere applicate in modo selettivo alle attestazioni selezionate usando le funzionalità di filtro di base. Ognuna delle proprietà attestazioni usate per filtrare i valori può essere assegnata, con le avvertenze seguenti:

Rivendicare proprietà Descrizione
Tipo, Valore, Tipo di Valore Queste proprietà verranno usate più di frequente per le assegnazioni. È necessario specificare almeno il tipo e il valore per l'attestazione trasformata risultante.
Emittente Anche se il linguaggio delle regole delle attestazioni consente di impostare l'issuer di un'attestazione, in genere non è consigliabile. L'autorità emittente di un'attestazione non viene serializzata nel token. Quando viene ricevuto un token, la proprietà Issuer di tutte le attestazioni viene impostata sull'identificatore del server federativo che ha firmato il token. Pertanto, l'impostazione dell'emittente di un'attestazione nelle regole non avrà effetto sul contenuto del token e l'impostazione andrà persa una volta che l'attestazione è confezionata in un token. L'unico scenario in cui l'impostazione dell'autorità emittente di un'attestazione ha senso è se è impostata su un valore specifico nel set di regole del provider di attestazioni e il set di regole relying party viene creato con regole che fanno riferimento a questo valore specifico. Se la proprietà Issuer non è esplicitamente assegnata a un valore in una regola di attestazione, il motore di rilascio delle attestazioni lo imposta su "LOCAL AUTHORITY".
EmittenteOriginale Analogamente a Issuer, nella maggior parte dei casi non si dovrebbe assegnare esplicitamente un valore a OriginalIssuer. A differenza dell'emittente, la proprietà OriginalIssuer viene serializzata nel token, ma l'aspettativa dei consumatori di token è che, se impostata, conterrà l'identificatore del server federativo che ha originariamente emesso un'attestazione.
Proprietà Come descritto nella sezione precedente, il Property bag di un'attestazione non è memorizzato nel token, pertanto bisogna assegnare valori alle proprietà solo se i criteri locali successivi fanno riferimento alle informazioni archiviate nella proprietà.

Per ulteriori informazioni su come usare il linguaggio delle regole di attestazioni, vedere Il ruolo del linguaggio delle regole di attestazioni.