Description des règles du Store Shib

Ce document a pour but de décrire la syntaxe des règle Shib.


Rui Miguel VALERIO  (CRI - Université de Rennes 1) 

Dates de modification
Revision 1.0
1. Introduction
2. Description des règles
2.1. Exemples
2.2. Opérateurs logiques
3. Liens

1. Introduction

Les règles du store Shib s'appuient sur le moteur de règle Java JBoss Rules (Drools). Ces règles sont définies dans la métadonnée "shib-exp-eval" des différentes ressources de la branche /roles/shib.

Lorsqu'une ressource possèdera une acl donnant le droit au groupe /roles/shib/CRI par exemple, alors la règle se trouvant dans la métadonnée "shib-exp-eval" de la ressource CRI sera évaluée avec les attributs shibboleth de l'utilisateur. La règle renverra true si la règle est vérifiée, false dans le cas contraire.

2. Description des règles

2.1. Exemples

eval(shibAtt.getAttributeUser("REMOTE_USER","jdupont@univ-test.fr"))
eval(shibAtt.getAttributeUser("Shib-EP-PrimaryAffiliation","member")) or eval(shibAtt.getAttributeUser("REMOTE_USER","jdupont@univ-test.fr"))

Tout d'abord le " correspond aux guillemets encodés afin d'être interprétés comme tels par l'interpreteur XML.

Le premier exemple permet d'évaluer si l'attribut REMOTE_USER de l'utilisateur vaut jdupont@univ-test.fr.

Le second exemple permet d'évaluer si l'attribut Shib-EP-PrimaryAffiliation vaut member ou bien si l'attribut REMOTE_USER de l'utilisateur vaut jdupont@univ-test.fr.

2.2. Opérateurs logiques

JBoss Rules permet l'utilisation de divers opérateurs logiques qui permettent d'articuler les différentes conditions d'une même règle.

Ces différents opérateurs logiques sont :

3. Liens

Documentation JBoss Rules