Publié le :
Administration CREATION_INTERNE

Extraction des ports et services du serveur de métadonnées

Ce code est également disponible en : Deutsch English Español
En attente de validation
Attention : Ce code nécessite des droits administrateur.
Le programme se connecte au serveur de métadonnées (SAS© Metadata Server) via les options globales. Il utilise ensuite les fonctions d'interface de métadonnées (`metadata_resolve`, `metadata_getnobj`, `metadata_getnasn`, `metadata_getattr`) pour parcourir l'objet `ServerComponent`. Pour chaque serveur trouvé, il extrait les connexions sources, les protocoles et les numéros de port associés, stockant le tout dans une table `servers`. Un rapport final est généré. Note : Ce code est spécifique à l'architecture SAS© 9.x et nécessite un serveur de métadonnées actif ; il n'est pas adapté à l'architecture native de SAS© Viya 4 sans configuration de pont vers un environnement SAS© 9.
Analyse des données

Type : CREATION_INTERNE


Les données sont générées en interrogeant le référentiel de métadonnées système via des fonctions SAS spécialisées.

1 Bloc de code
OPTIONS
Explication :
Définition des variables de connexion et configuration des options globales pour se connecter au serveur de métadonnées SAS (Metadata Server).
Copié !
1%let metaserve=meta.demo.sas.com;
2%let metaport=8561;
3%let userid=sasadm @saspw;
4%let pass=password;
5 
6options metaserver="&metaserve"
7 metaport=&metaport
8 metauser="&userid"
9 metapass="&pass"
10 metarepository=Foundation
11 metaprotocol=BRIDGE;
2 Bloc de code
DATA STEP Data
Explication :
Étape Data interrogeant les métadonnées pour lister les objets 'ServerComponent', extraire leurs attributs (noms) et leurs connexions associées (ports, protocoles) via des boucles et des fonctions `metadata_*`.
Copié !
1DATA servers;
2 LENGTH type id $ 17 server_uri conn_uri $ 50 server_name conn_name $ 256 conn_prot conn_port $ 5 conn_port_num 3;
3 /* ... labels et initialisation ... */
4 obj="omsobj:ServerComponent? @Name contains '.'";
5 server_cnt=metadata_resolve(obj,type,id);
6
7 IF server_cnt > 0 THEN DO n=1 to server_cnt;
8 /* Extraction des infos serveur et connexions */
9 rc=metadata_getnobj(obj,n,server_uri);
10 /* ... logique d'extraction des ports ... */
11 IF conn_port_num ne 0 THEN OUTPUT;
12 END;
13 ELSE put "ERROR: No server definitions found in Metadata.";
14RUN;
3 Bloc de code
PROC SORT
Explication :
Tri de la table résultante par nom de serveur.
Copié !
1PROC SORT DATA=servers;
2 BY server_name;
3RUN;
4 Bloc de code
PROC REPORT
Explication :
Génération d'un rapport affichant la liste des serveurs et des ports extraits.
Copié !
1 
2PROC REPORT
3DATA=servers;
4title "Port use defined in Metadata Server &metaserve";
5RUN;
6 
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.
Informations de Copyright : Author: Greg Wootton Date: 15JAN2018


Banner
Le Conseil de l'Expert
Expert
Simon
Expert SAS et fondateur.
« L'extraction des ports et protocoles directement depuis le serveur de métadonnées est une étape cruciale pour l'audit et la sécurisation d'une plateforme SAS 9. Ce script permet de transformer la vision logique de l'infrastructure en une matrice de flux réseau concrète, indispensable pour configurer les pare-feux ou diagnostiquer des problèmes de connectivité entre les différents composants (Workspace Server, Stored Process Server, etc.). »