Information
The SYSIBM.SYSROLES table contains all roles available in the database. It is recommended that the PUBLIC role be restricted from accessing this table.
Rationale:
PUBLIC should not have access to see all the roles because this could be used as a point of exploit.
Solution
erform the following to revoke access from PUBLIC.
Connect to the Db2 database.
db2 => connect to <dbname>
Run the following command:
db2 => REVOKE SELECT ON SYSIBM.SYSROLES FROM PUBLIC