Again, I don't know how you're running it, so I don't know the exact paths. However, assuming $CONFIG is your base tvheadend configuration directory:
cd to $CONFIG/accesscontrol (note that accesscontrol is a directory, not a file).
Create a file in this directory named "1"
Put this into that file:
{
"enabled": 1,
"username": "user",
"password": "password",
"comment": "New entry",
"prefix": "0.0.0.0/0,::/0",
"streaming": 1,
"dvr": 1,
"dvrallcfg": 1,
"webui": 1,
"admin": 1,
"id": "1"
}
... and restart tvheadend. Clear your browser's cache and restart that as well, then connect to <....>:9981.
You should be prompted for a username/password - enter user/password as above - and you should connect with full rights.
You can then edit this rule or create new ones in the Access Control tab (you should do this: this rule allows full access from anywhere that can reach your system).
---
While you're there. look for the file $CONFIG/superuser. That should be of the form:
{
"username":"adminuser",
"password":"adminpassword"
}
... so create that if necessary. If the accesscontrol rule doesn't work, the user defined in this file will.
---
Check permissions as well... I don't know how you're running tvheadend, but it needs to be able to read and write to these files and directories.