-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
36 other auth solutions for dashboards #42
36 other auth solutions for dashboards #42
Conversation
Signed-off-by: Hasan Eroglu <[email protected]>
Signed-off-by: Hasan Eroglu <[email protected]>
Signed-off-by: Hasan Eroglu <[email protected]>
Signed-off-by: Hasan Eroglu <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall looks good. The comments above are due to production environment
docker-compose-infra.yml
Outdated
@@ -37,6 +35,24 @@ services: | |||
reservations: | |||
cpus: '0.05' | |||
memory: 50M | |||
test-things-auth: | |||
image: thomseddon/traefik-forward-auth:2-arm64 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will need to check if we can use the arm image
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This repo for forward auth is not very well managed, even though this says arm64 all the images in Docker Hub are amd64. I can rename this.
Signed-off-by: Hasan Eroglu <[email protected]>
In today's meeting, the idea was to use the github teams after asking Eclipse. This can be easily added during deployment via role attribute field |
Closes #36.
Here, I added a forward auth mechanism. Therefore traefik forwards requests for prometheus, cadvisor and traefik to GitHub authentication. We need to set an environment variable (WHITELISTED_EMAILS) to whitelist emails. Also, we need to create a GitHub OAuth application and use its configuration to successfully log in.
Grafana and Portainer use their own authentication mechanisms and we need to configure them using their UIs. For Grafana, it is possible to give permissions depending on the user's GitHub data. A simple role attribute path would be
[email==<USER_EMAIL>] && 'Admin' || 'Viewer'
to give specific USER_EMAIL admin permissions and all other viewer permissions. Check Grafana documentation for more details. Furthermore, it is possible to create teams and limit access to dashboards to certain teams and users.