Aller au contenu

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ètreTypePar défautSignification
SPECIAL_AUTHORITY VARCHAR(10) obligatoire Droit spécial à vérifier