A Juju subordinate charm for the Squid Reverseproxy charm that enables digest or basic authentication using squid-auth-helper relation.
As a subordinate charm this charm requires the Squid Reverseproxy charm to be deployed and integrated with it.
The charm brings digest or basic authentication support to the Squid Reverseproxy using the squid-auth-helper
charm relation.
It allows you to manage user credentials through charm actions (create-user, remove-user, list-users), and configure authentication parameters using charm configuration.
While the Squid Reverseproxy charm targets a “reverse proxy setup”.
This subordinate charm is currently only tested for a “forward proxy” use case and will enable you to control accesses in this context.
In this documentation
Tutorials Get started - a hands-on introduction to using the charm for new users |
How-to guides Step-by-step guides covering key operations and common tasks |
Contributing to this documentation
Documentation is an important part of this project, and we take the same open-source approach to the documentation as the code. As such, we welcome community contributions, suggestions and constructive feedback on our documentation.
Our documentation is hosted on the Charmhub forum to enable easy collaboration. Please use the “Help us improve this documentation” links on each documentation page to either directly change something you see that’s wrong, ask a question or make a suggestion about a potential change via the comments section.
If there’s a particular area of documentation that you’d like to see that’s missing, please file a bug.
Project and community
The digest-squid-auth-helper charm is a member of the Ubuntu family. It’s an open-source project that warmly welcomes community projects, contributions, suggestions, fixes, and constructive feedback.
Thinking about using the digest-squid-auth-helper charm for your next project?
Contents
Tutorial
Set up
If you don’t already have a running Juju environment, you can follow the Get started with Juju guide to set up an isolated test environment.
As this charm is a subordinate charm, you should have a Squid Reverseproxy charm running before deploying it.
-
Create your juju model:
juju add-model test-squid
-
Deploy the reverseproxy charm:
juju deploy squid-reverseproxy
-
Monitor the deployment with:
juju status --watch 2s
Deploy
Once your Squid instance is running, deploy the auth helper charm with juju deploy digest-squid-auth-helper
and integrate it with your reverse proxy with juju integrate squid-reverseproxy digest-squid-auth-helper
.
How-to
Configure the authentication type
The default configuration can be seen using the juju config digest-squid-auth-helper
command.
The default authentication type is “digest”. If you want to switch to Basic authentication, you can issue the juju config digest-squid-auth-helper authentication-type=basic
command.
Warning: changing the authentication type will reset all existing users.
Give access to users
New users can be given access through the juju run digest-squid-auth-helper/0 create-user username=yourusername
. The command will return you the username, realm and password.
List current users
The juju run digest-squid-auth-helper/0 list-users
will return the list of active users.
Remove users
You can remove users with juju run digest-squid-auth-helper/0 remove-user username=yourusername
Note: Squid caches some authentication lookups (see documentation).