When the dsname is enclosed in single quotes, the TSS WHOOWNS command output adds a blank before the closing quote.
TSS WHOOWNS DSN('SECNY.LIB.ALL')
USERA OWNS DATASET 'SECNY.LIB.ALL '
TSS0300I WHOOWNS FUNCTION SUCCESSFUL
Why is there an extra blank at the end of the dataset name?
All general resources, that have the attribute GENERIC for their RDT definitions, are handled this way.
Dataset 'abcd ' with the blank space, represents the exact dataset name.
Dataset 'abcd' without the blank space, represents that it is generic or a prefix.
Permits for generic resources should have a trailing blank and be put between quotes in order to become specific to a single resource
If you want all future permits for DATASET (or any other general resource) to be exact matches, you need to specify an attribute of NONGEN using command:
TSS REPLACE(RDT) RESCLASS(resclass) ATTR(NONGEN).
With ATTR GENERIC
TSS PER(xxx) DSN('abc')...without the blank, users will be allowed access to abc, abcd, abce, etc.
TSS PER(xxx) DSN('abc ')..with the balank, users will be allowed to 'abc' only.