You may receive error SQL30082N reason "42" ("ROOT CAPABILITY REQUIRED") when connecting to database.
The following is an example:
$ db2 connect to sample user user1
Enter current password for user1:
SQL30082N Security processing failed with reason "42" ("ROOT CAPABILITY
You may also see the following :
2009-09-30-184.108.40.2061814-600 I1215A437 LEVEL: Warning
PID : 2490422 TID : 2572 PROC : db2sysc 0
INSTANCE: db2inst1 NODE : 000 DB : SAMPLE
APPHDL : 0-62
EDUID : 2572 EDUNAME: db2agent (SAMPLE) 0
FUNCTION: DB2 UDB, bsu security, sqlexLogPluginMessage, probe:20
DATA #1 : String with size, 64 bytes
Password validation for user user1 failed with rc = -2146499506
This is due to the limitations of non-root installations. Server authentication is not enabled for non-root installations.
Resolving the problem
To enable server authentication for non-root installations, do either of the following:
1. Run the db2iupdt command as a root user
# <DB2_PRODUCT_DIR>/instance/db2iupdt <instance_user>
2. Run the db2rfe command as a root user
See "Enabling root-based features in non-root installations with db2rfe" in the Related URL.