Eventually I found that DB2 UDB does not have its own repository for users, unlike other database servers. DB2 relies on the OS for user management. In Windows, for instance, after creating a UDB user, one has to go into Windows Control Panel/User Accounts and add that same user. Then UDB will allow it to log in with the password, supplied on the OS level. I ...
I don't have anywhere to test this at the moment, but either of these might work.
If you have su privileges to all instance owner users:
db2ilist | while read inst; do su - $inst db2pd -alldbs -tablespaces; done
If you have sufficient privileges on all instances yourself:
db2ilist | while read inst; do env DB2INSTANCE=$inst db2pd -alldbs -tablespaces; done