How can I use CUPS' basic authentication from a windows client?

I've set up a CUPS server, and configured a printer to require a "valid-user". I have set up a Linux user on the box with a password. I've tested that it requires the username/password from a Linux client (Ubuntu). I'm attempting to set up the printer on a windows client, but I can't seem to get it to pass the username and password through to cups.

I've been passing the username and password via the url I add to windows: http://username:password@server:631/printers/MyPrinter

This works on Linux clients, but not Windows. Am I missing something? Is this not a supported feature on Windows? I've also tried a non authenticated printer from Windows, and was able to get that to print.

Let me know if there is any other information needed, I really am stumped.


Windows supports IPP printing. I usually find it easiest to provide the user in the URL. This will force Windows to try Basic Authentication. e.g., http://user@host:port/printers/PrinterName

  1. Try to add the printer like normal. After a little time the "The printer that I want isn't listed" link should appear.
  2. Select "Select a shared printer by name"
  3. Enter the IPP(s) Printer URL making sure to use HTTP(S):
    Enter the IPP(s) Printer URL making sure to use HTTP(S)
  4. Click Next
  5. If everything is working, Windows should prompt you for the User Name and Password (this will happen regardless if you enter the username and password in the URL or not)
  6. Enter the User Name (again) and Password:
    Enter the User Name (again) and Password
  7. Select the Print Driver as normal. You can use the Microsoft Generic PCL6 or PS class drivers if you do not need the special features of the printer.