Catalog aliases are defined in the master catalog, which contains an entry for the user catalog.
For example:
//DEFALIAS JOB ...
//STEP01 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=A
//SYSIN DD *
DEFINE ALIAS -
(NAME(TEST01) -
RELATE(SYS1.ICFCAT.ABCD))
/*
TEST01 is the alias and SYS1.ICFCAT.ABCD is the catalog for which the alias is being defined.
Is JCLCHECK able to detect if an HLQ alias (TEST01 in this sample) is not defined in the Master Catalog?
Release : 12.0
Component : JCLCheck Workload Automation
Use the SEC(CATLG) option.
Using this option the following errors are produced:
*WARN* CAY6321W POTENTIAL SECURITY VIOLATION DETECTED 'DATASET, ACCESS LEVEL=CREATE' ACID = 'USER001'
CAY6490I CHECKED RESOURCES: 'ABCD11', 'DATASET.TEST'
CAY6321W POTENTIAL SECURITY VIOLATION DETECTED 'CATALOG, ACCESS LEVEL=UPDATE' ACID = 'USER001'
CAY6490I CHECKED RESOURCES: 'DCBA1', 'ICF.MASTER.VDCBA1'
These errors are because without an alias in the master catalog, the file would have to be added directly to the master. But security says no updates are allowed to the master.