D’AUTRES « MACROS » ASN.1 GABARITS POUR GDMO & LDAP AM Dery SARO1
GDMO Principes de Base AM Dery SARO1
Le modèle OSI Cadre général Objectifs s'inscrit dans la partie 4 du modèle de référence OSI spécifie les procédures de gestion d'un réseau hétérogène définit le cadre architectural des normes de gestion OSI Objectifs "planifier, coordonner, organiser, contrôler et superviser les ressources utilisées dans les communications conformes au modèle OSI et rendre compte de leur utilisation" 23 23
Trois modèles Modèle organisationnel Modèle d’information Modèle fonctionnel 25 25
Le modèle organisationnel définit le cadre pour répartir la gestion s'appuie sur les concepts de "systèmes gérés" et de "systèmes gérants" (agents and management systems) le processus d'application de gestion distribuée (DMAP : Distributed management application process) est l'application qui contrôle et surveille les objets gérés. le processus agent (AP : Agent Process) permet la gestion locale. 26 26
Schéma d’organisation Système Système d'administration administré Processus Processus de agent Fonctions gestion D CMISE CMISE CMIP Objets gérés 27 27 27
Objets gérés Attributs Opération Notification Objet administré 28 28
Le modèle d’information Une approche objet un langage de description un langage d’échanges MIB : Manage Information Base Des principes Nommage : éléments du MIT : Manage Information Tree Enregistrement (OIDs) Des bibliothèques 30 30
Description des objets Les attributs Les méthodes Les relations Les paquetages conditionnels L'arbre de contenance 33 33
Exemple : hiérarchie de classes TOP Open System Layer Entity Connection Counter Address Peer T-address TPDU counter T-connection T-entity Hierarchy subtree
Hiérarchie + contenance TOP Open System Layer Entity Connection Counter Address Peer T-address TPDU counter T-connection T-entity Hierarchy subtree + Contenance
Arbre de Nommage Instances référencées par DNs ou LDNs root systemId=fuschia systemId=lotus T-entityId=TCP T-connectionId=1 T-connectionId=2 ... DN: systemId=fuschia@T-entityId=TCP@T-connectionId=1, LDN: T-entityId=TCP@T-connectionId=1, RDN: T-connectionId=1, DN and LDN séquences de RDNs,
Définition des modèles d’Information Utilisation de templates ASN.1 à enregistrer dans un arbre d’enregistrement Les templates Managed object class Package Parametre Comportement Notification Name binding Attribute Attribute group Action
Arbre d’enregistrement root (world) 1 2 ccitt iso joint-iso-ccitt 3 3 1 2 std reg member org ms authority body 6 9 dod smi 1 1 N internet 1 part1 ... partN 2 3 4 directory mgmt experimental private 1 1 MIB-1 MIB-2 entreprises 11 1 2 reserved proteon ibm hp 42
Outil de description Les gabarits GDMO en ASN1 MANAGED OBJECT CLASS : définition d'une classe PACKAGE PARAMETER NAME BINDING ATTRIBUTE GROUP-ATTRIBUTE BEHAVIOUR ACTION NOTIFICATION 34 34
Exemple d’une classe exampleObjectClass MANAGED OBJECT CLASS DERIVED FROM "Rec. X.721 | ISO/IEC 10165-2 : 1992" : top; CHARACTERIZED BY examplePackage1 PACKAGE; examplePackage2 CONDITIONAL PACKAGE ACTIONS qOSResetAction; NOTIFICATION communicationError ; REGISTRED AS {joint-iso-ccitt ms(9) smi(3) part4(4) package(4) examplepack1(0)}; PRESENT IF !conformance class 2 of underlying ressource implemented as descriptor in ISO/IEC xxxx! ; REGISTRED AS {joint-iso-ccitt ms(9) smi(3) part4(4) managedObjectClass(3) exampleclass(0)} ; 38
Exemple : system object system MANAGED OBJECT CLASS DERIVED FROM top; CHARACTERIZED BY systemPackage PACKAGE ATTRIBUTES systemId GET, systemTitle GET, operationalState GET, usageState GET, administrativeState GET-REPLACE;;; CONDITIONAL PACKAGES administrativeStatePackage PACKAGE ATTRIBUTES administratoveState GET-REPLACE; REGISTERED AS {smi2Package14}; PRESENT IF "an instance supports it", ....
Définition d’attribut eventTime ATTRIBUTE WITH ATTRIBUTE SYNTAX AttributeASN1Module.EventTime; MATCHES FOR EQUALITY, ORDERING; BEHAVIOUR timeOrdering; REGISTERED AS {smi2AttributeID 13}; timeOrdering BEHAVIOUR DEFINED AS “The year, month, day, hour, minute, and seconds fields are compared in order to determine whether the specified value is greater or less than the value of the attribute. The values for the year, month, day, hour, minute, and seconds are determined from the character string representation and the year value is first compared. If equal, the month value is compared and this process is continues if the compared fields are equal. ”
Expression de la contenance Example transportConnection-nb-1 NAME BINDING SUBORDINATE OBJECT CLASS T-connection; NAMED BY SUPERIOR OBJECT CLASS T-entity; WITH ATTRIBUTE T-connectionId; DELETE deletes-contained-objects; T-entityId=TCP T-connectionId=1 T-connectionId=n ...
CMISE/CMIP Les services de CMISE Interactions avec les interfaces des objets (lecture, écriture, creation, destruction d’instances, ...) Utilisation des principes de nommage Sélection d’objets multiples Actions multiples (atomicité)
Sélection d’objets multiples -1 -2 Filtering (valeurs d’attributs) -3 Scoping
Multiple Object Selection and Multiple Replies 11 1 2 3 4 5 6 7 8 9 10 Multiple object selection = scoping + filtering scoping: baseObject=3 wholeSubTree: 3,6,7,8,9,10,11, nthLevel e.g. 1stLevel: 6,7, baseToNthLevel e.g. baseTo1stLevel: 3,6,7. Filtering: logical expression on MO attribute values (numerical or string based comparisons) grouped through AND/OR/NOT logical operators, This results as a subset of MIT MOs on which is executed the CMIS request (m-get, m-set, m-action, m-delete) and incurring several replies, Multiple replies may also simply occur through action incurring several replies
Services CMIP Opération/notification Service Mode Get attribute value M-GET confirmé M-CANCEL-GET confirmé Replace attribute value Replace with default value Add member M-SET conf/non-conf Remove member Create M-CREATE confirmé Delete M-DELETE confirmé Action M-ACTION conf/non-conf Notification M-EVENT-REPORT conf/non-conf
Quelques liens ... Rechercher GDMO avec Google J ’ai noté pour vous : GDMO - a searchMiddleware definition - see also: Guidelines ... ... GDMO, GDMO (Guidelines for Definition of Managed Objects) is a standard for defining objects in a network in a consistent way. With a consistent "language" for ... www.searchmiddleware.com/sDefinition/0,,sid26_gci213981,00.html - Solstice GDMO Builder 1.0 ... Solstice TM GDMO Builder 1.0. ... Solstice GDMO Builder Home | Management Home | software site map, Solstice GDMO Builder : Overview. ... www.sun.com/software/gdmo/ - 16k - Cached - Similar pages A Methodology for Formalizing GDMO Behavior Descriptions - ... A Methodology for Formalizing GDMO Behavior Descriptions (1999) (Correct) (1 citation) P. Hasselmeyer Information Technology Transfer Office Darmstadt ... citeseer.nj.nec.com/hasselmeyer99methodology.html - 18k - Cached - Similar pages etc…..
Quelques Infos sur LDAP Anne Marie Déry
Lightweight Directory Access Protocol (LDAP) Protocole d'annuaire sur TCP/IP. Adaptation du protocole DAP (protocole d'accès au service d'annuaire X500 de l'OSI) à l'environnement TCP/IP. Frontal d'accès à des annuaires X500, 1995, Université du Michigan ( U-M LDAP). Annuaire natif (standalone LDAP)
Standard et Extensible le protocole : accéder à distance à l'information , un modèle d'information : définir le type de données , un modèle de nommage : définir comment l'information est organisée et référencée, un modèle fonctionnel : comment accèder à l'information , un modèle de sécurité : protéger données et accès , un modèle de duplication : répartir la base entre les serveurs de la base, des APIs : développer des applications clientes, LDIF : un format d'échange de données.
Nommage et Information Même découpage que pour GDMO Description des classes et de la hiérarchie de classes : DIB (Templates : OBJECT CLASS et ATTRIBUTE et ATTRIBUTE SYNTAX) DIB = Directory Information Base Enregistrement dans un arbre d’enregistrement (OID) Construction d’un arbre de nommage avec les instances : DIT DIT = Directory Infotmation Tree Pas de contenance pour décrire l’arbre de nommage
Le protocole Communication client-serveur. se connecter ou se déconnecter, rechercher, comparer, créer, modifier ou effacer des entrées. Dialogue LDAP pas en ASCII mais utilise le format de codage Basic Encoding Rule (BER).
LDIF: LDAP Data Interchange Format . dn: cn= June Rossi, ou= accounting, o= Ace Industry, c= US objectClass: person objectClass: organizationalPerson objectClass: inetOrgPerson cn: June Rossi sn: Rossi givenName: June mail: rossi@aceindustry.com userPassword: {sha}KDIE3AL9DK uid: rossi telephoneNumber: 2616 roomNumber: 220 dn: cn= Lisa Jangles, ou= Sales, o= Ace Industry, c= US changetype: modify add: telephonenumber telephonenumber: (408) 555- 2468 - add: manager manager: cn= Harry Cruise, ou= Manufacturing, o= Ace Industry, c= US
Template Object Class dibx500 DEFINITIONS ::= BEGIN IMPORTS OBJECT-CLASS FROM info; objectClass OBJECT IDENTIFIER ::= {joint-iso-ccitt ds (5) 6} top OBJECT-CLASS MUST CONTAIN {class} ::= {objectClass 0} ufr OBJECT-CLASS SUBCLASS OF top MUST CONTAIN {ecole} ::= {objectClass 1} annee OBJECT-CLASS SUBCLASS OF top MUST CONTAIN {no} ::= {objectClass 2} module OBJECT-CLASS SUBCLASS OF top MUST CONTAIN {descriptif} ::= {objectClass 3} cours OBJECT-CLASS SUBCLASS OF top MUST CONTAIN {nom, enseignant, adresseCours} MAY CONTAIN { references, adresseTP} ::= {objectClass 4}
permettent aux clients Web d'avoir un accès direct au protocole LDAP. Les URLs LDAP Les URLs LDAP (RFC2255) permettent aux clients Web d'avoir un accès direct au protocole LDAP. exemples : ldap://ldap.netscape.com/ou=Sales,o=Netscape,c=US?cn,tel,mail?scope=sub? (objetclass=person) ldap://ldap.loria.fr/cn=Laurent%20Mirtain,ou=Moyens%20Informatiques,o=loria.fr ldap://ldap.loria.fr/o=loria.fr?mail,uid,sub?(sn=Mirtain)
Exemples d'application de LDAP Un protocole de diffusion de données : pages blanches Un protocole de service : vérification d’e-mails Une passerelle entre applications : carnets d'adresses Netscape Communicator et Microsoft Outlook Un protocole de service pour les systèmes d'exploitation ou les services Internet : certificats d'authentification projets en cours pour remplacer NIS, NIS+ par LDAP.
Déployer un service d'annuaire LDAP Déterminer les besoins en service d'annuaire et ses applications Déterminer quelles données sont nécessaires Choisir son schéma Concevoir son espace (modèle) de nommage Le Directory Tree, Nommage des entrées, Choix du suffixe Définir la topologie de son service Le partitonnement, Le service referral, La duplication (replication) Sécuriser le service Authentification, Contrôle d'accès, Protections réseau
Les logiciels serveurs LDAP OpenLDAP server, Innosoft's Distributed Directory Server, Netscape Directory Server, Sun Microsystems's Directory Services, IBM's DSSeries LDAP Directory, University of Michigan's SLAPD. D'autres annuaires supportent les requêtes au format LDAP : Novell's NetWare Directory Services (NDS) 3.0, Microsoft's Active Directory (AD), Lotus Domino.
Logiciels clients Navigateur Web utilisant URLs LDAP Netscape Communicator Microsoft Outlook Serveurs Netscape SuiteSpot (leur serveur mail, news, web...)