Basic authentication on different platforms
mikko.pesari at aalto.fi
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
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
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" ...
So I guess this is how OS X knows authentication is needed for this
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?
More information about the cups