Partager via


Quand utiliser un transfert direct ou filtrer la règle de revendication

Vous pouvez utiliser cette règle dans Active Directory Federation Services (AD FS) quand vous devez prendre un type de revendication entrant spécifique, puis appliquer une action qui déterminera la sortie en fonction des valeurs de la revendication entrante. Lorsque vous utilisez cette règle, vous passez ou filtrez toutes les revendications qui correspondent à la logique de règle dans le tableau suivant, en fonction de l’une des options que vous configurez dans la règle.

Option de règle Logique de règle
Parcourir toutes les valeurs de réclamation Si le type de revendication entrant est égal au type de revendication spécifié et que la valeur est égale à n’importe quelle valeur, transmettez la revendication à travers
Faire passer uniquement une valeur d'assertion spécifique Si le type de revendication entrant est égal au type de revendication spécifié et que la valeur est égale à la valeur de revendication spécifiée, passez la revendication par le biais de
Transmettre uniquement les valeurs de revendication qui correspondent à une valeur de suffixe de messagerie spécifique Si le type de revendication entrant est égal au type de revendication spécifié et que la valeur est égale à la valeur de suffixe spécifiée, passez la revendication à travers
Transmettre uniquement les valeurs de revendication qui commencent par une valeur spécifique Si le type de revendication entrant est égal au type de revendication spécifié et que la valeur commence par la valeur de revendication spécifiée, passez la revendication via

Les sections suivantes constituent une introduction aux règles de revendication et fournissent des informations détaillées sur les conditions d’utilisation de cette règle.

À propos des règles de revendication

Une règle de revendication représente une instance de logique métier qui prend une revendication entrante, applique une condition à celle-ci (si x puis y) et produit une revendication sortante en fonction des paramètres de condition. La liste suivante décrit les conseils importants que vous devez connaître sur les règles de revendication avant de lire plus loin dans cette rubrique :

  • Dans le composant logiciel enfichable de gestion AD FS, les règles de revendication peuvent être créées uniquement à l'aide de modèles de règles de revendication.

  • Les règles de revendication traitent les revendications entrantes soit directement depuis un fournisseur de revendications (tel qu’Active Directory ou un autre service de fédération), soit à partir du résultat des règles de transformation d’acceptation sur une approbation de fournisseur de revendications.

  • Les règles de revendication sont traitées par le moteur d’émission de revendications dans l’ordre chronologique d’un ensemble de règles donné. En définissant la priorité sur les règles, vous pouvez affiner ou filtrer les revendications générées par des règles précédentes dans un ensemble de règles donné.

  • Les modèles de règle de revendication nécessitent toujours que vous spécifiiez un type de revendication entrant. Toutefois, vous pouvez traiter plusieurs valeurs de revendication avec le même type de revendication à l’aide d’une seule règle.

Pour plus d’informations sur les règles de revendication et les ensembles de règles de revendication, consultez Le rôle des règles de revendication. Pour plus d’informations sur le traitement des règles, consultez Le rôle du moteur de gestion des revendications. Pour plus d’informations sur le traitement des ensembles de règles de revendication, consultez Le rôle du pipeline de revendications.

Parcourir toutes les valeurs de réclamation

Lors de l’utilisation de cette action, toutes les valeurs de revendication entrantes pour le type de revendication spécifié sont transmises en tant que revendications sortantes. Par exemple, lorsque le type de revendication entrante est spécifié comme type de revendication de rôle, toutes les valeurs de revendication entrantes sont copiées individuellement dans de nouvelles revendications sortantes avec le type de revendication sortant de Role.

Filtrage d’une revendication

Dans AD FS, le filtrage des revendications signifie filtrer ou restreindre les valeurs de revendication entrantes afin que seules certaines valeurs soient passées ou envoyées en tant que revendications sortantes. Il s’agit du modèle de règle de transmission ou de filtrage d’une revendication entrante qui rend cette fonction possible. Dans les propriétés de cette règle, vous pouvez définir des conditions pour filtrer les valeurs entrantes afin que seules les valeurs qui répondent à vos critères spécifiés soient transmises.

Par exemple, vous pouvez utiliser cette règle pour transmettre uniquement les revendications qui correspondent à la valeur de revendication de l’acheteur lorsque le type de revendication entrant correspond au type de revendication de rôle ou que vous souhaiterez peut-être émettre uniquement des revendications sur le nom de l’utilisateur, mais pas sur les revendications contenant le numéro de sécurité sociale de l’utilisateur.

Lorsque vous utilisez une condition de filtre avec cette règle, toutes les revendications entrantes sont examinées pour déterminer quelles revendications correspondent aux critères définis par la règle. Toutes les autres revendications sont ignorées afin que seules les valeurs de revendication spécifiées qui correspondent à un type de revendication sélectionné passent.

Par exemple, comme illustré dans l’illustration suivante, lorsqu’une règle est définie avec la condition pour filtrer uniquement les revendications entrantes qui sont clé sur le type de revendication UPN et se terminent également par @fabrikam.com, toutes les autres revendications entrantes sont ignorées, sauf si elles répondent à ces critères. Est incluse la revendication entrante dont le type est Adresse e-mail, même si sa valeur de revendication se termine par @fabrikam.com. Dans ce cas, seule la revendication contenant la valeur Nick@fabrikam.com est envoyée à la partie de confiance.

Quand utiliser un transfert direct

Configuration de cette règle sur une approbation de fournisseur de revendications

Lorsque vous utilisez une approbation de fournisseur de réclamations, cette règle peut être configurée pour transmettre uniquement les réclamations entrantes du fournisseur de réclamations qui correspondent à certains critères. Par exemple, vous souhaiterez peut-être accepter uniquement les revendications de messagerie du fournisseur de revendications ; Par conséquent, vous utilisez ce modèle de règle pour accepter les types de revendications de messagerie qui se terminent par le nom DNS (Domain Name System) du fournisseur de revendications.

Configuration de cette règle sur une partie de confiance

Lorsque vous utilisez une approbation de partie de confiance, cette règle peut être configurée pour transmettre ou filtrer les revendications sortantes qui seront envoyées à la partie de confiance. Certaines parties de confiance peuvent ne pas comprendre certains types de revendications, ou certaines revendications peuvent contenir des informations sensibles qui ne doivent pas être envoyées à certaines parties de confiance. Ce modèle de règle peut aider à appliquer ces stratégies pour une approbation de partie de confiance particulière.

Comment créer cette règle

Vous créez cette règle en utilisant soit le langage de règle de revendication, soit le modèle de règle Transfert direct ou Filtrer une revendication entrante dans le composant logiciel enfichable Gestion AD FS. Ce modèle de règle fournit les options de configuration suivantes :

  • Spécifier un nom de règle de revendication

  • Spécifier un type de revendication entrant

  • Parcourir toutes les valeurs de réclamation

  • Faire passer uniquement une valeur d'assertion spécifique

  • Transmettre uniquement les valeurs de revendication qui correspondent à une valeur de suffixe de messagerie spécifique

  • Transmettre uniquement les valeurs de revendication qui commencent par une valeur spécifique

Pour plus d’instructions sur la création de ce modèle, consultez Créer une règle à transmettre ou filtrer une revendication entrante dans le Guide de déploiement AD FS.

Utilisation du langage des règles de revendication

Si une revendication doit être envoyée uniquement lorsque la valeur de revendication correspond à un modèle personnalisé, vous devez utiliser une règle personnalisée. Pour plus d’informations, consultez Quand utiliser une règle personnalisée.

Exemples de construction d’une syntaxe de règle de passage ou de filtre

Une règle de filtrage simple filtrerait les revendications en fonction de l’une des propriétés décrites ci-dessus. Par exemple, la règle suivante permet de transmettre toutes les revendications de courrier électronique :

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

Plusieurs filtres peuvent être logiquement associés. Par exemple, la règle suivante accepte toutes les réclamations d'e-mail avec la valeur johndoe@fabrikam.com :

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

Dans les exemples ci-dessus, les filtres ont toujours utilisé un opérateur d’égalité. Le langage de règles de réclamations prend en charge les opérateurs suivants :

  • == - égal (sensible à la casse)

  • != - différent (sensible à la casse)

  • = ~- correspondance avec une expression régulière

  • !~ - non-correspondance avec une expression régulière

Par exemple, la règle suivante accepte toutes les réclamations de courrier électronique non émises par le serveur de fédération local qui ont le suffixe boeing.com :

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

Meilleures pratiques pour la création de règles personnalisées

Un filtre peut être appliqué à une ou plusieurs des propriétés de chaque revendication, comme décrit dans le tableau suivant.

Propriété de revendication Descriptif
Catégorie Le type de revendication (généralement représenté sous forme d’URI) reflète un accord implicite entre les partenaires d’une fédération sur le type d’information qui est transmis dans la revendication. Par exemple, les revendications de type http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress contiennent l’adresse de messagerie de l’utilisateur.
Valeur Valeur de la revendication. Par exemple, une revendication de type http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress peut avoir une valeur de johndoe@fabrikam.com
Type de valeur ValueType représente la façon dont les informations contenues dans la valeur de la revendication doivent être interprétées. En général, le type de valeur est défini sur http://www.w3.org/2001/XMLSchema#string, mais la valeur de la revendication peut contenir des données encodées au format binaire en base 64 (par exemple, une image) ou une date, une valeur booléenne, etc.
Émetteur L’émetteur représente la partie qui a émis pour la dernière fois les revendications relatives à l’utilisateur. Si les revendications sont obtenues sur un serveur de fédération de fournisseurs de revendications, l’émetteur de toutes les revendications va être défini sur « AUTORITÉ LOCALE ». Si les revendications ont été reçues par un serveur de fédération du fournisseur de fédération, l’émetteur des revendications va être configuré comme l’identifiant du fournisseur de revendications qui a signé le jeton. Par conséquent, lors du traitement des règles sur les réclamations reçues d’un fournisseur de réclamations, l’émetteur de toutes les réclamations sera défini sur la même valeur. Lors de la création de règles pour une partie de confiance, la propriété de l’émetteur peut être utilisée pour distinguer les revendications provenant de différents fournisseurs de revendications.
OriginalÉmetteur Cette propriété de revendication est destinée à transmettre le serveur de fédération qui a émis initialement la revendication. Étant donné que la propriété de l’émetteur des revendications est définie sur le dernier serveur de fédération qui a signé le jeton, l’émetteur d’origine est utile dans les scénarios où une revendication a transité par plusieurs serveurs de fédération (par exemple, une partie partenaire qui reçoit un jeton d’un serveur de fédération de fournisseur de fédération peut être intéressée par quel serveur de fédération de revendications particulier a authentifié l’utilisateur).
Propriétés Outre les cinq propriétés présentées ci-dessus, chaque revendication possède également un jeu de propriétés dans lequel peuvent être stockées les propriétés nommées. Ces propriétés ne sont pas sérialisées dans le jeton et n’ont de sens que pour le passage d'informations entre les composants du pipeline d’émission de revendications dans l’étendue d’un serveur de fédération unique. Par exemple, la configuration d’une propriété dans le cadre du traitement des règles du fournisseur de revendications, puis la référence à cette propriété dans les règles de la partie de confiance.