Vous êtes de plus en plus confronter à la mise en place de sécurité sur des services (ODBC, FTP, etc..)
il existe 2 solutions sur l’ibmi qui vont vous aider dans votre démarche
Les fonctions usage et les exit programmes
Vous avez des interfaces 5250 pour les administrer, mais aussi maintenant Navigator for i
WRKFCNUSG et WRKREGINF
Vous avez également des services SQL
QSYS2.SQL_CHECK_FUNCTION_USAGE(), QSYS2.FUNCTION_USAGE, QSYS2.FUNCTION_INFO
QSYS2.EXIT_POINT_INFO,QSYS2.EXIT_PROGRAM_INFO
Rapidement voici une petite comparaison
D’abord un essai de comparaison entre les principales valeurs
Accès / Fonctionnalité | Fonction d’usage (Function Usage ID) | Programme d’exit (Exit Point) | Description / Concerne |
---|---|---|---|
Accès base de données (ODBC, JDBC…) | QIBM_DB_OPEN | QIBM_QZDA_INIT , QIBM_QZDA_NDB1 | Autorise/refuse l’ouverture de base de données (SQL, ODBC, etc.) |
SQL Server Mode (QSQSRVR) | QIBM_DB_QSQSRVR | N/A | Contrôle l’accès aux jobs QSQSRVR (SQL server mode) |
DDM/DRDA | QIBM_DB_DDMDRDA | QIBM_QDDMDRDASERVER , QIBM_QDDSQLDRDA | Accès aux bases via DDM / DRDA |
ODBC Spécifique | N/A | QIBM_QZDA_SQL1 , QIBM_QZDA_INIT | Appels SQL via ODBC / DRDA |
JDBC | N/A | QIBM_QZDA_SQL1 , QIBM_QZDA_INIT | JDBC via Toolbox ou Native JDBC |
FTP | QIBM_FTP_SERVER | QIBM_QTMF_SVR_LOGON , QIBM_QTMF_SVR_EXIT | Contrôle l’accès FTP |
Telnet | QIBM_TELNET_SERVER | QIBM_QTV_TELNET | Contrôle l’accès Telnet |
Remote Command (RUNRMTCMD) | QIBM_NETWORK_SERVER | QIBM_QZRC_RMT | Exécution de commandes distantes |
Client Access (iSeries Access, ACS…) | QIBM_ACCESS3270 , QIBM_DB_OPEN | QIBM_QZDA_* (exits ODBC), QIBM_QZRC_RMT | Accès via IBM i Access clients (ODBC, FTP, etc.) |
Fonctions d’usage (Function Usage) :
Elles permettent d’activer ou de restreindre une fonctionnalité par utilisateur (sans programmation).
Elles ont un mode par défaut ouvert ou fermé
Vous devez ensuite gérer les exceptions à cette règle
C’est en œuvre par défaut sur votre système
C’est dynamique vous pouvez par exemple avoir un scripte qui modifie le paramétrage pour les heures HNO
C’est compliquer pour tracer les refus
Exit Programs (Programmes d’exit) :
Permettent une personnalisation des contrôles d’accès .
Vous pouvez indiquer des critères d’actions, de ressources, de temporalité
exemple, Michel à droit à uniquement le bibliothèque compta en HNO
Vous maitrisez entièrement la logique de contrôle
Vous pouvez auditer ou loguer avant d’interdire par exemple
Vous pouvez impacter les performances de votre système avec un mauvais programme, voir même bloquer sur un plantage
Ce n’est pas en œuvre par défaut sur votre système
Ce n’est pas dynamique vous devrez arrêter le service concerné pour une prise en compte
Simple pour tracer les refus, c’est votre programme
Conclusion
J’espère que ca vous aidera à faire votre choix
dans tous les cas c’est absolument indispensable aujourd’hui de se préoccuper de ces problèmes à minima des accès ODBC
Toujours d’actualité un service qui n’est pas utilisé doit être arrêter
Quand vous passez de FTP à SFTP vous ne bénéficier plus de ces 2 options