Basic authentication on different platforms

Mikko Pesari mikko.pesari at
Mon Nov 26 07:13:27 PST 2012

I'm trying to set up a CUPS 1.5.3 server on Ubuntu 12.04 using Basic 
authentication. The clients will be Windows, Linux and OS X machines.

I have set

   DefaultAuthType Basic

   <Location /printers>
     AuthType Default

Along with a <Policy authenticated> which the shared printer is using 
(OpPolicy authenticated). The policy is basically a copy of "default" 
with added AuthType Default lines.

With this configuration, when adding the printer from a Windows 7 
machine, the GUI will ask for username/password when connecting, and 
printing works.

 From an OSX 10.8 machine, when adding the printer, the GUI does not ask 
for username/password, but allows adding the printer anyway. After that,
when printing a test page, the job is shown as "Hold for Authentication" 
and the user must click on the small "retry" icon
in the OS X print queue window.  Then it will ask for username/password 
and printing works.

However, when cupsd.conf has "BrowseLocalProtocols CUPS dnssd", and 
browsing has been enabled on OS X, the printer will show up in the 
"Nearby Printers" window on the Print & Scan Preference window, and 
after adding that printer, the GUI will prompt for username/password 
automatically when printing.

In the cupsd error_log I see these lines

   ... update_cups_browse: ... "printer name" ... 
auth-info-required=username,password ...

So I guess this is how OS X knows authentication is needed for this 
autodiscovered printer.

1) If I set <Location /printers> as non-authenticated, and set printer 
option "AuthInfoRequired username,password" then all three clients, 
Ubuntu, Windows and OSX fail to prompt for username/password when adding 
the printer.   What's the correct way to achieve this?

2) When autodiscovery is used, OS X will download the PPD file 
(/printers/queue.ppd). Can this be done when adding an IPP printer 
manually? How about on Ubuntu or other desktop distros with newish CUPS?

3) I'm guessing the operation used is CUPS-Get-PPD and Windows won't use 
it, so can Windows select/download the correct driver based on the 
printer's model name?

Mikko Pesari

More information about the cups mailing list