Service SQL IBM i (AS/400) · Fonction scalaire
QSYS2.SQL_CHECK_SPECIAL_AUTHORITY
Contrôle d'un droit spécial
Fonction scalaire qui vérifie si l'utilisateur courant possède un droit spécial donné, comme *JOBCTL ou *ALLOBJ.
À quoi ça sert
SQL_CHECK_SPECIAL_AUTHORITY prend en paramètre le droit spécial à vérifier (SPECIAL_AUTHORITY), par exemple '*JOBCTL', et indique si l'utilisateur courant le possède.
On l'utilise dans les programmes et procédures SQL qui doivent se comporter différemment selon le profil : proposer une action réservée aux administrateurs, ou refuser proprement une opération qui exigerait *ALLOBJ, *SECADM ou *JOBCTL.
La liste complète des droits spéciaux d'un profil se lit dans la colonne SPECIAL_AUTHORITIES de USER_INFO.
Résultat réel sur un IBM i 7.5
Ce que nous avons exécuté :
VALUES QSYS2.SQL_CHECK_SPECIAL_AUTHORITY('*JOBCTL')
Ce que l'IBM i a renvoyé le 01/10/2026 (1 ligne au plus) :
| 00001 |
|---|
| 1 |
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
Vérifier si l'utilisateur courant possède le droit spécial *JOBCTL.
-- Description: Check whether the current user has *JOBCTL special authority.
VALUES QSYS2.SQL_CHECK_SPECIAL_AUTHORITY('*JOBCTL');
Paramètres
| Paramètre | Type | Par défaut | Signification |
|---|---|---|---|
SPECIAL_AUTHORITY |
VARCHAR(10) | obligatoire | Droit spécial à vérifier |