Aller au contenu

Valeur système IBM i (AS/400) · Sécurité

QALWUSRDMN

Bibliothèques admises pour les objets de domaine utilisateur

Liste les bibliothèques autorisées à contenir des espaces utilisateur, index utilisateur et files utilisateur (*USRSPC, *USRIDX, *USRQ) : un durcissement pour les systèmes sensibles.

À quoi elle sert

Tout objet a un domaine. Les objets de type *USRSPC, *USRIDX et *USRQ peuvent être de domaine utilisateur, et le système ne peut pas auditer les échanges d'informations qui passent par eux. Cette valeur limite les bibliothèques où ils peuvent être créés. Elle ne concerne pas les programmes (*PGM), programmes de service (*SRVPGM) ni les paquetages SQL (*SQLPKG).

Elle intéresse l'auditeur et le responsable sécurité ; les développeurs qui utilisent des espaces utilisateur ou des files utilisateur doivent la connaître.

Les valeurs possibles

ValeurSignification
*ALLCes objets sont admis dans toutes les bibliothèques et tous les répertoires. Valeur livrée.
*DIRAdmis dans tous les répertoires du système.
nom de bibliothèqueJusqu'à 50 bibliothèques admises. QTEMP doit figurer dans la liste si l'on énumère des bibliothèques.

Prise en compte : Immédiate : la nouvelle valeur s'applique dès l'enregistrement, sans IPL.

La valeur recommandée

Pour la plupart des systèmes, *ALL convient. Pour un besoin de sécurité élevé, IBM conseille de n'admettre ces objets que dans QTEMP.

Si une application dépend de ces types d'objets, ajoutez ses bibliothèques à la liste et donnez-leur un droit public *EXCLUDE (sauf QTEMP), afin de limiter les accès non audités par l'interface MI.

La changer

CHGSYSVAL  SYSVAL(QALWUSRDMN) VALUE(QTEMP)
CHGSYSVAL  SYSVAL(QALWUSRDMN) VALUE('QTEMP MABIBLI')
CHGSYSVAL  SYSVAL(QALWUSRDMN) VALUE(*ALL)

Pour lire la valeur actuelle et celle de la livraison, en SQL :

SELECT SYSTEM_VALUE_NAME, SYSTEM_VALUE, SHIPPED_DEFAULT_VALUE
FROM QSYS2.SYSTEM_VALUE_INFO
WHERE SYSTEM_VALUE_NAME = 'QALWUSRDMN'

Le piège

Une création d'objet de domaine utilisateur dans une bibliothèque absente de la liste échoue. De plus, pour que RCLSTG aille au bout, il peut falloir ajouter temporairement la bibliothèque QRCL à la liste (avec un droit public *EXCLUDE), puis l'en retirer ensuite.