Share via


Quando usare una regola di pass-through o di filtro delle attestazioni

È possibile utilizzare questa regola in Active Directory Federation Services ADFS quando è necessario richiedere un tipo di attestazione in ingresso specifico e quindi applicare un'azione che determina il tipo di output deve essere eseguita in base ai valori nell'attestazione in ingresso. Quando si usa questa regola, si consente l'ingresso o si filtrano le eventuali attestazioni corrispondenti alla logica della regola nella tabella seguente, in base all'opzione configurata nella regola.

Opzione della regola Logica della regola
Pass-through di tutti i valori attestazione Se il tipo di attestazione in ingresso è uguale a specificato tipo di attestazione e valore è uguale a qualsiasi valore, quindi passare l'attestazione tramite
Pass-through solo di un valore attestazione specifico Se il tipo di attestazione in ingresso è uguale a specificato tipo di attestazione e valore è uguale a valore di attestazione specificato, quindi passare l'attestazione tramite
Pass-through solo dei valori attestazione che corrispondono a un valore suffisso di posta elettronica specifico Se il tipo di attestazione in ingresso è uguale a specificato tipo di attestazione e valore è uguale a valore suffisso specificato, quindi passare l'attestazione tramite
Pass-through solo dei valori attestazione che iniziano con un valore specifico Se il tipo di attestazione in ingresso è uguale a specificato tipo di attestazione e valore inizia con valore di attestazione specificato, quindi passare l'attestazione tramite

Le sezioni seguenti forniscono un'introduzione di base alle regole attestazioni e indicano i casi in cui è necessario usare questa regola.

Informazioni sulle regole attestazioni

Una regola attestazioni rappresenta un'istanza della logica di business che accetta un'attestazione in ingresso, applica una condizione (se x quindi y) e genera un'attestazione in uscita in base ai parametri della condizione. L'elenco seguente fornisce suggerimenti importanti sulle regole attestazioni da tenere presenti prima di procedere con la lettura di questo argomento:

  • Nello snap-in di gestione di AD FS, le regole attestazioni possono essere create solo utilizzando modelli di regola attestazioni

  • Le regole attestazioni elaborano le attestazioni in ingresso direttamente da un provider di attestazioni (ad esempio Active Directory o un altro servizio federativo) oppure dall'output delle regole di trasformazione accettazione in un trust del provider di attestazioni.

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

  • Per i modelli di regola attestazioni è sempre necessario 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 ulteriori informazioni sulle regole attestazione e i set di regole attestazione, vedere ruolo delle attestazioni regole. Per ulteriori informazioni sulle modalità di elaborazione delle regole, vedere il ruolo del motore di attestazioni. Per ulteriori informazioni, modalità di elaborazione dei set di regole attestazione, vedere ruolo delle Pipeline delle attestazioni.

Pass-through di tutti i valori attestazione

Quando si usa questa regola, viene consentito l'ingresso di tutti i valori attestazione in ingresso per il tipo di attestazione specificato come attestazioni in uscita. Ad esempio quando il tipo di attestazione in ingresso è specificato come tipo di attestazione Ruolo, tutti i valori attestazione in ingresso vengono copiati singolarmente in nuove attestazioni in uscita con il tipo di attestazione in uscita Ruolo.

Filtrare un'attestazione

In ADFS, il termine attestazioni filtro consentono di filtrare o limitare in ingresso in modo che solo determinati valori vengono passati o inviati come attestazioni in uscita tramite i valori di attestazione. È il Pass Through or Filter an Incoming Claim il modello di regola che rende possibile questa funzione. All'interno delle proprietà di questa regola, è possibile impostare le condizioni per filtrare i valori in ingresso per consentire l'ingresso solo dei valori che soddisfano i criteri specificati.

Ad esempio, è possibile usare questa regola per consentire l'ingresso solo delle attestazioni che corrispondono al valore attestazione di Purchaser quando il tipo di attestazione in ingresso corrisponde al tipo di attestazione Ruolo o quando si vuole rilasciare solo attestazioni relative al nome dell'utente ma non quelle contenenti il codice fiscale dell'utente.

Quando si usa una condizione di filtro con questa regola, vengono esaminate tutte le attestazioni in ingresso per determinare quelle che corrispondono ai criteri impostati dalla regola. Tutte le altre attestazioni vengono ignorate, in modo da consentire l'ingresso solo ai valori attestazione specificati che corrispondono al tipo di attestazione selezionato.

Come mostrato nell'illustrazione seguente, quando viene impostata una regola con una condizione che applica il filtro solo alle attestazioni in ingresso che corrispondono al tipo di attestazione UPN e che terminano con @fabrikam.com, tutte le altre attestazioni vengono ignorate a meno che non soddisfino questi criteri. È inclusa l'attestazione in ingresso con il tipo di attestazione Indirizzo di posta elettronica, anche se il relativo valore di attestazione termina con @fabrikam.com. In questo caso, solo l'attestazione contenente il valore Nick@fabrikam.com viene inviato alla relying party.

when to use pass through

Configurazione della regola in un trust del provider di attestazioni

Quando si usa un trust del provider di attestazioni, è possibile configurare questa regola in modo che consenta solo le attestazioni in ingresso dal provider di attestazioni che corrispondono a determinati vincoli. Ad esempio, se si vuole accettare solo le attestazioni di posta elettronica dal provider di attestazioni, è necessario usare questo modello di regola per accettare i tipi di attestazione posta elettronica che terminano con il nome DNS del provider di attestazioni.

Configurazione di questa regola in un trust della relying party

Quando si usa un trust della relying party, è possibile configurare questa regola in modo che consenta l'ingresso o filtri le attestazioni in uscita che verranno inviate alla relying party. Alcune relying party potrebbero non riconoscere determinati tipi di attestazioni e determinate attestazioni potrebbero contenere informazioni riservate che non devono essere inviate a determinate relying party. Questo modello di regola semplifica l'imposizione di tali criteri per un trust della relying party specifico.

Come creare la regola

Creare questa regola utilizzando il linguaggio di regola attestazione o il Pass-Through o filtro a un modello di regola attestazione in ingresso nello snap-in di gestione di ADFS. Questo modello di regola offre le opzioni di configurazione seguenti:

  • Specificare un nome regola attestazione

  • Specificare un tipo di attestazione in ingresso

  • Pass-through di tutti i valori attestazione

  • Pass-through solo di un valore attestazione specifico

  • Pass-through solo dei valori attestazione che corrispondono a un valore suffisso di posta elettronica specifico

  • Pass-through solo dei valori attestazione che iniziano con un valore specifico

Per ulteriori istruzioni su come creare questo modello, vedere creare una regola di Pass-Through o filtrare un'attestazione in ingresso nella Guida alla distribuzione di ADFS.

Uso del linguaggio delle regole attestazioni

Se un'attestazione deve essere inviata solo quando il relativo valore corrisponde a un modello personalizzato, è necessario usare una regola personalizzata. Per altre informazioni, vedere Quando usare una regola personalizzata.

Esempi di come costruire la sintassi di una regola pass-through o di filtro

Una semplice regola di filtro filtrerà le attestazioni in base a una delle proprietà descritte in precedenza. La regola seguente, ad esempio, consentirà l'ingresso di tutte le attestazioni di posta elettronica.

c:[type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress"]  => issue(claim  = c);

È possibile collegare logicamente i filtri tramite l'operatore AND. La regola seguente, ad esempio, accetterà tutte le attestazioni di posta elettronica con il valore johndoe@fabrikam.com:

c:[type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress", value == "johndoe@fabrikam.com "]  => issue(claim  = c);

Negli esempi precedenti per i filtri è sempre stato usato un operatore di uguaglianza. Il linguaggio delle regole attestazioni supporta gli operatori seguenti:

  • == - uguale a (maiuscole/minuscole)

  • != - non uguale a (maiuscole/minuscole)

  • =~- corrispondenza dell'espressione regolare

  • !~- mancata corrispondenza dell'espressione regolare

La regola seguente, ad esempio, accetterà tutte le attestazioni di posta elettronica non rilasciate da un server federativo che hanno un suffisso di boeing.com:

c:[type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress", value =~ "^.*@boeing\.com$" , issuer != "LOCAL AUTHORITY"]  => issue(claim  = c);

Procedure consigliate per la creazione di regole personalizzate

È possibile applicare un filtro a una o più proprietà di ogni attestazione, come descritto nella tabella seguente-

Proprietà attestazione Descrizione
Tipo Il tipo di attestazione (generalmente rappresentato come un URI) riflette un contratto implicito tra i partner di una federazione in merito al tipo di informazioni trasmesso nell'attestazione. Ad esempio, le attestazioni di tipo http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress conterranno l'indirizzo di posta elettronica dell'utente.
Valore Valore dell'attestazione. Ad esempio, un'attestazione di tipo http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress può avere un valore di johndoe@fabrikam.com
ValueType ValueType rappresenta il modo in cui le informazioni contenute nel valore dell'attestazione devono essere interpretate. In genere, ValueType verrà impostato su http://www.w3.org/2001/XMLSchema#string, ma il valore attestazione potrà contenere dati codificati binari Base 64 (ad esempio un'immagine), una data, un valore booleano e così via.
Autorità di certificazione L'emittente rappresenta la parte che ha rilasciato per ultima le attestazioni relative all'utente. Se le attestazioni sono state ricevute da un server federativo del provider di attestazioni, l'autorità emittente di tutte le attestazioni verrà impostata su “LOCAL AUTHORITY”. Se le attestazioni sono state ricevute da un server federativo di un provider federativo, l'autorità emittente delle attestazioni verrà impostata sull'identificatore del provider di attestazioni del provider di attestazioni che ha firmato il token. Di conseguenza, durante l'elaborazione delle regole sulle attestazioni ricevute da un provider di attestazioni, l'autorità emittente di tutte le attestazioni verrà impostata sullo stesso valore. Durante la creazione delle regole per una relying party, la proprietà Issuer può essere usata per distinguere le attestazioni originate da diversi provider di attestazioni.
OriginalIssuer Questa proprietà dell'attestazione indica il server federativo che ha originariamente rilasciato l'attestazione. Poiché la proprietà Issuer delle attestazioni è impostata sull'ultimo server federativo che ha firmato il token, l'autorità emittente originale è utile negli scenari in cui un'attestazione è transitata attraverso più di un server federativo, ad esempio una relying party che riceve un token da un server federativo del provider federativo potrebbe essere interessata alle informazioni relative al server federativo del provider di attestazioni specifico che ha autenticato l'utente.
Proprietà Oltre alle cinque proprietà descritte in precedenza, ogni attestazione ha un contenitore delle proprietà in cui è possibile archiviare proprietà denominate. Queste proprietà no sono serializzate nel token e servono esclusivamente per passare le informazioni tra i componenti della pipeline di rilascio delle attestazioni all'interno dell'ambito di un singolo server federativo. Ad esempio, quando viene impostata una proprietà durante l'elaborazione delle regole del provider di attestazioni e quindi vi si fa riferimento nelle regole della relying party.