We are using DMIDecode to read information from remote Linux systems and haven't found a workaround to this yet. I have logged a call on the dmidecode home page asking about this...
Using the command dmidecode -t system gives the error "/dev/mem: Permission denied" which is a problem as we don't want memory information (just manufacturer, model and serial number).
I notice that the smbios command running on SunOS works fine for this information without needing root privilege.
For now I'm going to replace our documentation stating to "use a specific account with the least required privilege" with "user root credentials".