Error in 3PAR System Reporter policy config

This example is an attempt to prove the point of importance of paying attention to simple details when dealing with any problem.

Large chemical industry customer was unable to change policies in System Reporter for 3PAR storage systems for months. And when we say months, the problem was literally happening for many months. The error was:

Authorization required...
No other errors in the GUI interface came up. In spite of efforts by the vendor to fix it, the customer was not lucky to find a solution.

Analysis and solution

First looked at the top level of Apache web server configuration setup:

C:\Program Files (x86)\Apache Software Foundation\
Apache2.2\conf\httpd.conf
Then checked the log file in:
C:\Program Files (x86)\Apache Software Foundation\Apache2.2\
logs\error.log
The log file showed an error that pointed out to non-existent login name:
Verification of user id "" not configured
Careful check of Apache config file httpd.conf showed the following lines:
<Directory "cgi-bin/3par-rpts">
AuthType Basic
AuthName "3PAR System Reporter Database Query"
AuthUserFile .htpass
Require user sysreprd sysreped
</Directory>

<Directory "cgi-bin/3par-policy">
AuthType BasicHello
AuthName "3PAR System Reporter Policy Update"
AuthUserFile .htpass
Require user sysreped
</Directory>
The line that was suspicious was:
AuthType BasicHello
That type of Authentication does not exist. Commonly used authentication types are "Digest" and "Basic".

Made a change as follows:

<Directory "cgi-bin/3par-rpts">
AuthType Basic
AuthName "3PAR System Reporter Database Query"
AuthUserFile .htpass
Require user sysreprd sysreped
</Directory>

<Directory "cgi-bin/3par-policy">
# AuthType BasicHello
AuthType Basic
AuthName "3PAR System Reporter Policy Update"
AuthUserFile .htpass
Require user sysreped
</Directory>
... and then restarted the Apache services on the Windows server.

That was a resolution: syntax error in the Apache config file. Two things were puzzling:

  • Why it took so long to debug the problem before I came onboard
  • Why Apache daemon started when there was such an obvious syntax error in the web server config