Service SQL IBM i (AS/400) · Fonction table
SYSTOOLS.AUDIT_JOURNAL_CP
Journal d'audit : changements de profils (CP)
Lit les entrées CP du journal d'audit : création, modification et suppression de profils utilisateurs, avec les attributs de mot de passe et de sécurité.
À quoi ça sert
Cette fonction de table lit les entrées de type CP du journal d'audit, écrites quand un profil utilisateur est créé, modifié ou supprimé (CRTUSRPRF, CHGUSRPRF, DLTUSRPRF). USER_PROFILE désigne le profil concerné et COMMAND_TYPE la nature de l'opération ('CRT' pour une création, comme dans l'exemple d'IBM).
Le reste des colonnes reprend les attributs du profil qui ont été renseignés : statut, nombre maximal de tentatives de connexion, expiration du mot de passe ou du profil, gestion locale du mot de passe, etc.
C'est une source clé pour une revue de comptes : on y retrouve qui a créé un profil, qui l'a réactivé, et quand. Le SQL facilite la comparaison avec la liste actuelle des profils.
Résultat réel sur un IBM i 7.5
Ce que nous avons exécuté :
SELECT USER_PROFILE FROM TABLE(
SYSTOOLS.AUDIT_JOURNAL_CP(
STARTING_TIMESTAMP => CURRENT TIMESTAMP - 6 MONTHS ))
WHERE COMMAND_TYPE = 'CRT'
Ce que l'IBM i a renvoyé le 01/10/2026 (5 lignes au plus) :
| USER_PROFILE Profil utilisateur |
|---|
| UTIL265 |
| UTIL119 |
| UTIL120 |
| UTIL122 |
| UTIL121 |
Données anonymisées : les noms de système, de profils, de
bibliothèques, de postes et les adresses IP ont été remplacés. Les objets du schéma
JOBISQL sont des objets de démonstration créés pour ce site.
L'exemple d'IBM
Lister les profils utilisateurs qui ont été créés au cours des six derniers mois.
-- Description: List any user profiles that were created in the last 6 months.
SELECT USER_PROFILE FROM TABLE(
SYSTOOLS.AUDIT_JOURNAL_CP(
STARTING_TIMESTAMP => CURRENT TIMESTAMP - 6 MONTHS ))
WHERE COMMAND_TYPE = 'CRT';
Bon à savoir
Rapprochez ce résultat de QSYS2.USER_INFO, qui donne l'état actuel des profils, pour détecter un compte créé puis oublié.
Paramètres
| Paramètre | Type | Par défaut | Signification |
|---|---|---|---|
STARTING_RECEIVER_NAME |
VARCHAR(10) | '*CURAVLCHN' | Nom du récepteur de journal de départ |
ENDING_RECEIVER_NAME |
VARCHAR(10) | '*CURRENT' | Nom du récepteur de journal de fin |
STARTING_TIMESTAMP |
TIMESTAMP | NULL | Horodatage de début |
ENDING_TIMESTAMP |
TIMESTAMP | NULL | Horodatage de fin |
USER_NAME |
VARCHAR(10) | '*ALL' | Nom du profil utilisateur |
JOB |
VARCHAR(28) | '*ALL' | Nom qualifié du travail |
PROGRAM |
VARCHAR(10) | '*ALL' | Programme |
STARTING_SEQUENCE |
DECIMAL(21, 0) | NULL | Numéro de séquence de départ |
ENDING_SEQUENCE |
DECIMAL(21, 0) | NULL | Numéro de séquence de fin |
STARTING_RECEIVER_LIBRARY |
VARCHAR(10) | '*CURRENT' | Bibliothèque du récepteur de journal de départ |
ENDING_RECEIVER_LIBRARY |
VARCHAR(10) | '*CURRENT' | Bibliothèque du récepteur de journal de fin |
Colonnes renvoyées (110)
Afficher les 110 colonnes
| Colonne | Type | Signification |
|---|---|---|
ENTRY_TIMESTAMP |
TIMESTAMP | Horodatage de l'entrée |
SEQUENCE_NUMBER |
DECIMAL(21, 0) | Numéro de séquence |
USER_NAME |
VARCHAR(10) | Nom du profil utilisateur |
QUALIFIED_JOB_NAME |
VARCHAR(28) | Nom qualifié du travail |
JOB_NAME |
VARCHAR(10) | Nom du travail |
JOB_USER |
VARCHAR(10) | Profil utilisateur du travail |
JOB_NUMBER |
VARCHAR(6) | Numéro du travail |
THREAD |
BIGINT | Unité d'exécution (thread) |
PROGRAM_LIBRARY |
VARCHAR(10) | Bibliothèque du programme |
PROGRAM_NAME |
VARCHAR(10) | Nom du programme |
PROGRAM_LIBRARY_ASP_DEVICE |
VARCHAR(10) | Unité ASP de la bibliothèque du programme |
PROGRAM_LIBRARY_ASP_NUMBER |
INTEGER | Numéro de l'ASP de la bibliothèque du programme |
REMOTE_PORT |
INTEGER | Port distant |
REMOTE_ADDRESS |
VARCHAR(46) | Adresse distante |
SYSTEM_NAME |
VARCHAR(8) | Nom du système |
SYSTEM_SEQUENCE_NUMBER |
DECIMAL(21, 0) | Numéro de séquence système |
RECEIVER_LIBRARY |
VARCHAR(10) | Bibliothèque du récepteur de journal |
RECEIVER_NAME |
VARCHAR(10) | Nom du récepteur de journal |
RECEIVER_ASP_DEVICE |
VARCHAR(10) | Unité ASP du récepteur de journal |
RECEIVER_ASP_NUMBER |
INTEGER | Numéro d'ASP du récepteur de journal |
ARM_NUMBER |
INTEGER | Numéro ARM |
ENTRY_TYPE |
CHAR(1) | Type de l'entrée |
ENTRY_TYPE_DETAIL |
VARCHAR(200) | Détail du type de l'entrée |
USER_PROFILE |
VARCHAR(10) | Profil utilisateur |
COMMAND_TYPE |
CHAR(3) | Type de commande |
STATUS |
VARCHAR(9) | Statut |
MAXIMUM_SIGNON_ATTEMPTS |
VARCHAR(7) | Nombre maximal de tentatives de connexion |
PASSWORD_CHANGED |
VARCHAR(3) | Mot de passe modifié |
NO_PASSWORD_INDICATOR |
VARCHAR(3) | Indicateur d'absence de mot de passe |
PASSWORD_EXPIRED |
VARCHAR(4) | Mot de passe expiré |
LOCAL_PASSWORD_MANAGEMENT |
VARCHAR(4) | Gestion locale du mot de passe |
PASSWORD_CONFORMANCE |
VARCHAR(8) | Conformité du mot de passe |
BLOCK_PASSWORD_CHANGE |
VARCHAR(7) | Blocage du changement de mot de passe |
PASSWORD_EXPIRATION_INTERVAL |
VARCHAR(7) | Intervalle d'expiration du mot de passe |
USER_EXPIRATION_DATE |
VARCHAR(10) | Date d'expiration du profil |
USER_EXPIRATION_ACTION |
CHAR(3) | Action à l'expiration du profil |
OWNED_OBJECT_OPTION |
VARCHAR(7) | Option pour les objets détenus |
OWNED_OBJECT_OPTION_NEW_OWNER |
VARCHAR(10) | Nouveau propriétaire des objets détenus |
PRIMARY_GROUP_OPTION |
VARCHAR(7) | Option du groupe principal |
NEW_PRIMARY_GROUP |
VARCHAR(10) | Nouveau groupe principal |
NEW_PRIMARY_GROUP_AUTHORITY |
VARCHAR(8) | Droit du nouveau groupe principal |
USER_CLASS_NAME |
VARCHAR(7) | Classe d'utilisateur |
SPECIAL_AUTHORITIES |
VARCHAR(72) | Droits spéciaux |
ALLOBJ |
VARCHAR(3) | Droit spécial *ALLOBJ |
JOBCTL |
VARCHAR(3) | Droit spécial de contrôle des travaux |
SAVSYS |
VARCHAR(3) | Droit spécial *SAVSYS |
SECADM |
VARCHAR(3) | Droit spécial *SECADM |
SPLCTL |
VARCHAR(3) | Droit spécial *SPLCTL |
SERVICE |
VARCHAR(3) | Droit spécial *SERVICE |
AUDIT |
VARCHAR(3) | Audit |
IOSYSCFG |
VARCHAR(3) | Droit spécial *IOSYSCFG |
PREVIOUS_SPECIAL_AUTHORITIES |
VARCHAR(72) | Droits spéciaux précédents |
PREVIOUS_ALLOBJ |
VARCHAR(3) | Droit spécial *ALLOBJ précédent |
PREVIOUS_JOBCTL |
VARCHAR(3) | Droit spécial *JOBCTL précédent |
PREVIOUS_SAVSYS |
VARCHAR(3) | Droit spécial *SAVSYS précédent |
PREVIOUS_SECADM |
VARCHAR(3) | Droit spécial *SECADM précédent |
PREVIOUS_SPLCTL |
VARCHAR(3) | Droit spécial *SPLCTL précédent |
PREVIOUS_SERVICE |
VARCHAR(3) | Droit spécial *SERVICE précédent |
PREVIOUS_AUDIT |
VARCHAR(3) | Droit spécial *AUDIT précédent |
PREVIOUS_IOSYSCFG |
VARCHAR(3) | Droit spécial *IOSYSCFG précédent |
GROUP_PROFILE_NAME |
VARCHAR(10) | Nom du profil de groupe |
GROUP_OWNER |
VARCHAR(7) | Propriétaire du groupe |
GROUP_AUTHORITY |
VARCHAR(8) | Droits du groupe |
GROUP_AUTHORITY_TYPE |
VARCHAR(8) | Type de droits du groupe |
SUPPLEMENTAL_GROUP_LIST |
VARCHAR(150) | Liste des groupes supplémentaires |
INITIAL_PROGRAM_LIBRARY |
VARCHAR(10) | Bibliothèque du programme initial |
INITIAL_PROGRAM |
VARCHAR(10) | Programme initial |
INITIAL_MENU_LIBRARY |
VARCHAR(10) | Bibliothèque du menu initial |
INITIAL_MENU |
VARCHAR(10) | Menu initial |
CURRENT_LIBRARY_NAME |
VARCHAR(10) | Nom de la bibliothèque courante |
HOME_DIRECTORY |
GRAPHIC VARYING | Répertoire de base |
LOCALE_PATH_NAME |
GRAPHIC VARYING | Chemin de la région (locale) |
LIMIT_CAPABILITIES |
VARCHAR(8) | Limitation des fonctions du profil |
ASSISTANCE_LEVEL |
VARCHAR(9) | Niveau d'assistance |
USER_OPTIONS |
VARCHAR(70) | Options de l'utilisateur |
SPECIAL_ENVIRONMENT |
VARCHAR(7) | Environnement spécial |
DISPLAY_SIGNON_INFORMATION |
VARCHAR(7) | Affichage des informations de connexion |
LIMIT_DEVICE_SESSIONS |
VARCHAR(7) | Limitation des sessions d'unité |
KEYBOARD_BUFFERING |
VARCHAR(10) | Mise en mémoire tampon du clavier |
MAXIMUM_ALLOWED_STORAGE |
BIGINT | Stockage maximal autorisé |
PRIORITY_LIMIT |
INTEGER | Limite de priorité |
JOB_DESCRIPTION_LIBRARY |
VARCHAR(10) | Bibliothèque de la description de travail |
JOB_DESCRIPTION |
VARCHAR(10) | Description de travail |
ALTERNATE_SUBSYSTEM_NAME |
VARCHAR(10) | Nom du sous-système de remplacement |
ALTERNATE_SERVER_JOB_NAME |
VARCHAR(10) | Nom du travail serveur de remplacement |
ACCOUNTING_CODE |
VARCHAR(15) | Code de comptabilisation |
MESSAGE_QUEUE_LIBRARY |
VARCHAR(10) | Bibliothèque de la file de messages |
MESSAGE_QUEUE |
VARCHAR(10) | File de messages |
MESSAGE_QUEUE_DELIVERY_METHOD |
VARCHAR(7) | Mode de remise de la file de messages |
MESSAGE_QUEUE_SEVERITY |
INTEGER | Gravité minimale de la file de messages |
PRINT_DEVICE |
VARCHAR(10) | Unité d'impression |
OUTPUT_QUEUE_LIBRARY |
VARCHAR(10) | Bibliothèque de la file d'attente de sortie |
OUTPUT_QUEUE |
VARCHAR(10) | File d'attente de sortie |
ATTENTION_KEY_HANDLING_PROGRAM_LIBRARY |
VARCHAR(10) | Bibliothèque du programme de traitement de la touche Attn |
ATTENTION_KEY_HANDLING_PROGRAM |
VARCHAR(10) | Programme de traitement de la touche Attn |
SORT_SEQUENCE_TABLE_LIBRARY |
VARCHAR(10) | Bibliothèque de la table de séquence de tri |
SORT_SEQUENCE_TABLE |
VARCHAR(10) | Table de séquence de tri |
LANGUAGE_ID |
VARCHAR(7) | Identifiant de langue |
COUNTRY_OR_REGION_ID |
VARCHAR(7) | Identifiant du pays ou de la région |
CCSID |
VARCHAR(7) | CCSID |
CHARACTER_IDENTIFIER_CONTROL |
VARCHAR(9) | Contrôle des identificateurs de caractères |
LOCALE_JOB_ATTRIBUTES |
VARCHAR(60) | Attributs de région du travail |
DOCUMENT_PASSWORD_CHANGED |
VARCHAR(3) | Mot de passe du document modifié |
DOCUMENT_PASSWORD_NONE |
VARCHAR(3) | Document sans mot de passe |
EIM_ID |
VARCHAR(128) | Identifiant EIM |
EIM_ASSOCIATION_TYPE |
VARCHAR(7) | Type d'association EIM |
EIM_ASSOCIATION_ACTION |
VARCHAR(8) | Action d'association EIM |
CREATE_EIM_ID |
VARCHAR(11) | Création de l'identifiant EIM |
USER_ID_NUMBER |
VARCHAR(10) | Numéro d'identifiant de l'utilisateur (UID) |
GROUP_ID_NUMBER |
VARCHAR(10) | Numéro d'identifiant du groupe |