Documente Academic
Documente Profesional
Documente Cultură
Agent dabsence
Agent de
prdistribution
Agent Web
Dbogage
Dlais
Pour le compte de
Signature
10
Connaissances
Fonctionnement des agents
Savoir-faire
Dfinir les restrictions de programmabilit
Dfinir un serveur dexcution
Paramtrer le gestionnaire dagents
Progression
Rle des agents
Paramtrage du gestionnaire dagents
Serveur dexcution dun agent
Atelier 1
Modle de scurit des agents
Agent accdant un serveur distant
10-1
Inscription
Envoyer un message,
un document
Modifier
des
documents
10-2
Interview de lExpert
Imaginons que les cerveaux de Nietzsche et dEinstein aient t passs au mixeur, nous
naurions jamais obtenu quun ensemble de composs lipidiques et quelques protines de
structure. Cest la preuve quun comportement complexe peut merger dun ensemble de
composants simples et coopratifs. Les agents, autant que possible, ne ngligeront jamais
les actions simples et seront dautant plus efficaces que chacun dentre eux sera
simple.
Ils sont loutil idal de ladministrateur qui souhaite simplifier ses tches quotidiennes et
pallier les rares erreurs qui peuvent subsister dans la documentation, lorsquune tche
ne se droule pas exactement telle que son comportement a t dcrit.
10-3
Scheduled
Task Queue
Eligible Queue
amgr
Traitement
amgr
amgr
Le gestionnaire dagents prend en charge les agents planifis sur le serveur. Il gre des
files dattente, le passage de lune lautre se faisant aprs un dlai. Il ne gre pas les
agents sexcutant sur le poste de travail, qui sont lancs par le routeur de messagerie
ou depuis le Web.
Agents de prdistribution
Ces agents sont lancs par le routeur au moment o il crit un document dans une base
Courrier en arrive. Lunit dexcution de distribution thread dexcution est
mobilise par lexcution de lagent. Pour paramtrer ce type dagent :
Modifier le document de configuration du serveur
Cliquer sur longlet (Routeur/SMTP), puis sur (Restrictions et contrles),
puis sur (Contrles de distribution)
10-4
Agents Web
Ces agents sont lancs par lutilisateur qui clique le plus souvent sur un lien URL ou
bien qui enregistre un formulaire. Lagent est pris en charge par le moteur HTTP de
Domino : le gestionnaire dagents ne le connat pas.
Agents planifis
Les agents planifis sur serveur sont activs par des vnements Aprs larrive de
nouveaux messages et Aprs la cration ou modification de documents ou prvus
pour une excution horaire, quotidienne, hebdomadaire ou mensuelle.
Le gestionnaire examine lensemble des bases du serveur au dmarrage. Il rpartit les
agents planifis dans deux files dattente :
File V (Update Event Queue et New Mail Event Queue) : les agents activs par un
vnement.
File S (Scheduled Task Queue) : les agents horaires, quotidiens, hebdomadaires ou
mensuels.
Lorsquun agent de la file V est rveill par un vnement, le gestionnaire dagents le
fait passer dans la file S. Lorsquun agent de la file S doit tre excut, il passe dans la
file E (Eligible Queue), o il attend une unit dexcution disponible.
Les dlais dexcution proviennent clairement du passage dune file dattente une
autre et du nombre de processus disponibles pour excuter les agents. Ces paramtres
se rglent dans le NOTES.INI du serveur et dans le document du serveur.
Paramtres NOTES.INI
Les valeurs par dfaut de ces paramtres doivent tre modifies pour que les agents
sexcutent dans des dlais raisonnables. Ils ont t conus une poque o les
serveurs taient moins puissants dune part, et o le gestionnaire dagents tait peu
performant dautre part.
Paramtre
Objet
AMgr_DocUpdateEventDelay
Dfaut : 5 minutes.
Temps minimum entre la mise jour ou la
cration dun document et lexcution dun
agent dclench par cet vnement.
AMgr_NewMailEventDelay
Dfaut : 1 minute.
Temps minimum entre le dpt dun
document par le routeur de courrier et
lexcution dun agent dclench par cet
vnement.
Dfaut : 0 minute.
Temps minimum entre deux excutions
successives dun agent dclench par
lvnement Aprs larrive de nouveaux
messages.
10-5
Objet
AMgr_SchedulingInterval
Dfaut : 1 minute.
Temps entre deux consultations de la file
dattente Event Queue par lagent
manager.
Supposons que les valeurs par dfaut soient conserves. Un agent rveill par
lvnement Aprs la cration ou modification de documents sera activ dans la file
dattente V au bout de cinq minutes (AMgr_DocUpdateEventDelay). Le gestionnaire
dagents examine une file dattente toutes les minutes (AMgr_SchedulingInterval).
Lagent passe donc dans la file dattente S au bout de 5 6 minutes. Il peut scouler
1 minute avant quil passe dans la file dattente V o il attendra une unit dexcution
disponible. Au total il sest coul 7 minutes ou plus entre lvnement et lexcution
de lagent. Si le mme agent est rveill par un deuxime vnement, un nouveau
dlai est ajout (AMgr_DocUpdateAgentMinInterval) qui fait quil scoulera 30
minutes supplmentaires.
Les dlais supports par les agents de type Aprs larrive de nouveaux messages sont
moins longs mais le dlai au final sera de lordre de 4 minutes ou plus.
Les paramtres du NOTES.INI du serveur sont crits de prfrence dans le document
de configuration du serveur.
Cliquer sur longlet (Configuration), puis sur la vue Serveur/Configuration
Ouvrir le document de configuration du serveur en modification
Cliquer sur longlet (Paramtres NOTES.INI)
10-6
Document du serveur
Il contient les paramtres pour le gestionnaire dagents. Les paramtres pour les agents
Web correspondent un mode de compatibilit version 5.
Cliquer sur longlet (Configuration), puis Serveur, puis Document Serveur courant
Cliquer sur longlet (Tches serveur), puis sur (Gestionnaire dagents)
<Nombre maximal dagents simultans> : taper le nombre dunits dexcution
disponibles pour la file Eligible Queue
<Nombre maximal dagents simultans> : taper un nombre, par exemple 3
Cliquer sur longlet (Protocoles Internet), puis sur longlet (Moteur Web Domino)
<Excuter les agents Web simultanment> : slectionner Activ
A partir de la version 6 de Domino, le paramtre se trouve de prfrence dans un site
Internet.
10-7
Interview de lExpert
Les agents ne sont pas circonscrits par la page de paramtrage du document serveur.
Les administrateurs auront tout intrt ne pas ngliger les variables telles
quAMGR_DOCUPDATEMININTERVAL, afin de rgler des temps entre la survenance
dun vnement et le dclenchement de lagent lui-mme, ou entre deux excutions
successives dun mme agent.
Pensez examiner quotidiennement les statistiques du serveur afin de connatre le
nombre dexcutions dagents planifies ainsi que les erreurs dexcution.
La commande console TELL AMGR SCHED sera galement utile avant tout arrt du
serveur afin de dterminer si ce dernier nest pas sur le point de lancer une excution.
Lors de la mise en production dune application Notes, vrifiez galement que cette
dernire comporte obligatoirement une vue par dfaut. Labsence de vue par dfaut est
susceptible dentraner des erreurs dexcution lorsque les agents doivent effectuer des
traitements sur des sous-ensembles de documents.
10-8
Local
-Tout serveur-
Un serveur
Un agent sexcute sur le client Notes ou sur serveur. Le choix du serveur dexcution
obit des rgles dpendant de son type :
Agent courrier (les deux types) : le serveur de messagerie du signataire,
Agent lanc manuellement : le client Notes,
Agent planifi ou rveill par lvnement Aprs la cration ou modification de
documents : choix du concepteur ou la premire utilisation.
Si la base est rplique sur plusieurs serveurs, un agent qui modifie des documents ne
peut sexcuter que sur un seul serveur, faute de quoi des conflits de mise jour se
produiront. Le choix du serveur sera fait au moment de la mise en exploitation.
Agent courrier
Le serveur dexcution de lagent courrier dpend du serveur de messagerie du
signataire, par exemple le serveur de messagerie du super administrateur dont
lidentifiant sert signer les bases.
Agents planifis
Lactivation de lagent dtermine le serveur dexcution la plupart du temps.
Ouvrir la base dans Designer, puis cliquer Code partag/Agents
10-9
Interview de lExpert
La premire chose que fera un agent sera de rechercher ladresse de son serveur
dexcution. Dans le cas o un agent ne sexcute pas, la premire chose faire est de
vrifier que la DNS contient bien le nom (ou lalias) de ce serveur, afin que son adresse
puisse tre dtermine.
10-10
Le modle de scurit de la version 5 est actif par dfaut : ceci assure une compatibilit ascendante et correspond aussi au cas le plus frquent de la programmation des
agents. Ce modle de scurit repose sur la confiance accorde au signataire de
lagent. La version 6 a introduit le concept de dlgation dont le principe est le
suivant : une autorit de confiance se porte garante du signataire dun agent, de
lidentit dun utilisateur. Les droits de lautorit de confiance interviennent de
diffrentes manires selon les scnarios.
Utilisateur
Restrictions
LCA
Planifi
LCE du poste
Serveur
HTTP
Identit
utilisateur
Web
HTTP
Identit
signataire
Planifi
Document du serveur
Signataire
Signataire
Signataire
Signataire
Signataire
Invoqueur
Invoqueur
Invoqueur
Signataire
Signataire
Signature de lagent
La dernire personne qui modifie un agent le signe lectroniquement de son nom
laide des informations de son fichier ID la faon dont un message envoy est sign.
Par exemple, un utilisateur qui active lagent dabsence le signe de son nom.
10-11
Identit du signataire
Action entreprise
Les bases en exploitation sur serveur sont habituellement signes avec un identifiant
appropri qui est galement dfini dans la LCE dadministration par ladministrateur.
Cette LCE sert de standard aux postes clients et les utilisateurs ne voient pas ce type
de message, sauf accident bien sr.
Une fois que lidentit du signataire de lagent est valide, le droit de faire ce que fait
lagent dans la base est dtermin par lidentit de lutilisateur qui invoque lagent et
la LCA de la base.
10-12
10-13
sirius/srv/tsoft
Modle de dlgation
Lauthentification de la signature
nest pas fiable
Le signataire de lagent
cassiopee/srv/tsoft
Un agent planifi sur un serveur ne peut pas ouvrir une base se trouvant sur un autre
serveur. Lotus estime que le serveur distant na pas les moyens de savoir si le
signataire de lagent est effectu avec un ID fiable.
La solution consiste utiliser le serveur comme autorit de confiance, plus
prosaquement faire confiance aux choix faits par ladministrateur du serveur :
gestion de la scurit des agents et signataires accepts.
Le signataire de lagent doit avoir les droits suffisants dans la base accde.
Accrditation de serveur
Ouvrir lannuaire, puis la vue Serveurs/Serveurs
Ouvrir le document du serveur distant en modification
Cliquer sur longlet (Scurit)
Accs serveur
Serveurs
accrdits
<Serveurs accrdits> : slectionner le serveur sur lequel sexcute lagent
accdant une base sur le serveur auquel correspond le document
10-14
Modle de dlgation
10-15
Conclusion
Ce scnario est le plus complexe car il enchane en fait deux dlgations :
Une dlgation pour activer un agent depuis le Web,
Une dlgation pour excuter un agent planifi.
Il est clair que la deuxime dlgation nest possible que parce que la premire a pu
sexcuter. Ce modle repose sur le couple signataire et utilisateur tout comme les
autres modles de scurit.
10-16
Agent dabsence
Agent dabsence
Configuration compatible version 5
Droits de lutilisateur
Configuration versions 6, 7, 8
Droits de lutilisateur
Lutilisateur de messagerie qui dclare une absence active lagent OutOfOffice. Cette
opration fonctionne correctement pourvu que les rgles de scurit soient respectes :
Lutilisateur modifie lagent en lactivant.
Lagent planifi doit pouvoir dmarrer sur le serveur de messagerie.
Lagent planifi doit pouvoir faire ce quil fait : envoyer des messages.
Les contraintes de la version 5.x de Lotus Domino disparaissent depuis la version 6 :
Le niveau daccs diteur dans la LCA de la base Courrier est suffisant pour que
lutilisateur dclare une absence.
Lagent dabsence peut tre activ depuis un navigateur Web.
Le droit dexcuter des agents LotusScript/Java restrictifs na pas besoin dtre
donn aux utilisateurs de messagerie ayant le niveau diteur.
Ce paragraphe rappelle le mode de fonctionnement et les rglages en version 5.x et qui
sont utilisables en version 6 et 7, puis montre comment configurer le fonctionnement
de lagent dabsence en tenant compte des nouveauts de la version 6.
Configuration en version 5
Niveau daccs des utilisateurs la base Courrier
Un utilisateur doit avoir le niveau daccs Gestionnaire ou Concepteur sa base
Courrier pour activer lagent dabsence OutOfOffice : lactivation de lagent se fait
par modification de cet lment de structure. Le choix de Editeur propos
lenregistrement est insuffisant.
10-17
10-18
Configuration en versions 6, 7 et 8
Lagent dabsence utilise deux nouvelles fonctions de la version 6 :
Le concept dune autorit de dlgation qui agit au nom dun utilisateur et dont les
droits sont pris en compte pour lancer lexcution de lagent. Les droits de
lutilisateur sont pris en compte pour laccs sa base Courrier.
Lactivation de lagent dabsence par un utilisateur disposant dun niveau daccs
diteur la base.
Ces deux fonctions couples ont t implmentes dans le masque partir duquel est
activ lagent dabsence. Lorsque le niveau daccs de lutilisateur sa base de
messagerie passe au niveau Editeur, la configuration de lagent dabsence se fait
automatiquement pour bnficier des fonctions de la version 6.x. Inversement, si le
niveau daccs de lutilisateur passe de Editeur Concepteur ou Gestionnaire, la
configuration de lagent dabsence repasse automatiquement dans le mode version 5.x.
Autorit de dlgation
Le client Notes gnre automatiquement une requte administrative qui modifie
lagent dabsence OutOfOffice. Le serveur de messagerie qui excute la requte signe
lagent dabsence. Le lancement de lexcution de lagent se fait avec les droits du
serveur le serveur joue le rle dautorit de dlgation alors que les droits de
lutilisateur dans la LCA de sa base Courrier sont pris en compte pendant lexcution
de lagent.
10-19
Restrictions de programmabilit
Restrictions de programmabilit
Restrictions de programmabilit
Oprations restrictives
Des agents
Les restrictions dexcution des agents sont runies dans le document du serveur, dans
longlet (Scurit) et le paragraphe Restrictions de programmabilit.
Excuter des
mthodes et des
oprations non
restrictives
Versions
prcdentes
seulement
<Excuter des mthodes et des oprations non restrictives> : regroupe les champs
<Excuter les agents Java/JavaScript/COM non restrictifs> et <Excuter les agents
LotusScript/Java non restrictifs> de la version 5.
<Excuter les agents LotusScript/Java restrictifs> : regroupe les champs <Excuter
les agents Java/JavaScript/COM restrictifs> et <Excuter les agents
LotusScript/Java restrictifs> de la version 5.
10-20
10-21
Lorsque le signataire dune base veut imposer un agent de ne pas pouvoir excuter
des oprations restreintes, il doit :
Ouvrir lagent dans Designer
Afficher les proprits de lagent
Cliquer sur longlet (Scurit).
<Dfinir le niveau de scurit de lexcution> : slectionner une option
1. Ne pas autoriser les oprations restreintes
2. Autoriser les oprations restreintes
3. Autoriser les oprations restreintes avec droits dadmin. complet
Dans la pratique, si un agent doit excuter des oprations restreintes, il faut que la
premire option soit slectionne, faute de quoi lagent de sexcutera pas
correctement.
Remarque
La nature du langage LotusScript il est interprt fait que le compilateur ne sait pas
si des mthodes ou des instructions du langage sont utilises et dans quelles
conditions. Ceci explique cette intervention manuelle.
10-22
Notes.ini
La ligne ServerTasks du NOTES.INI du serveur doit contenir Rdebug.
ServerTasks=Update,Replica,Router,AMgr,AdminP,CalConn,Sched,Sta
tlog,DIIOP,DECS,HTTP,Rdebug
Document serveur
Cliquer sur longlet (Tches serveur), puis sur longlet (Remote Debug Manager)
<Autoriser le dbogage distant sur ce serveur> : slectionner Active
<Dsactiver le dbogage du serveur aprs> : taper une valeur en heures, -1
signifiant jamais
<Attente de lagent lheure de dbut> : taper un nombre de secondes suffisant
60 secondes pour attraper au vol lagent lorsquil dbutera son excution
10-23
Interview de lExpert
Ne jamais oublier quil existe une commande TELL AMGR RUN, permettant de lancer un
agent de force, sans devoir attendre la console. Dans le cas dun agent agissant sur le
systme de fichiers, le dverminage distant est le seul moyen davoir une vision claire de
lenvironnement du compte serveur. En effet, un disque mapp pour compte serveur
naura pas forcment la mme lettre pour le compte de celui qui ouvre la session sur
ledit-serveur (par exemple).
10-24
Connaissances
Savoir-faire
Le client Notes.
Le gestionnaire dagents.
Le service HTTP de Domino.
Le routeur de courrier.
10-25
Restrictions de programmabilit
Les restrictions dexcution des agents sont runies dans le document du serveur, dans
longlet (Scurit) et le paragraphe Restrictions de programmabilit. Une technique
simple est de disposer dune seule signature pour toutes les bases mises en
exploitation et de donner cette signature tous les droits dans le paragraphe de
restrictions de programmabilit.
10-26