Initial docker and nginx conf updates for keycloak #618
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This updated PR for keycloak integration uses the Flask-OIDC package with
wis2box-auth
(replacing a previous implementation that used oauth2-proxy independently of Flask).Currently it requires manually changing the hard coded IP address (currently
10.211.55.15
innginx.conf
) to instead be the value of$WIS2BOX_URL
.This version uses the following branch of
wis2box-auth
which interfaces to keycloak using Flask-OIDC: https://github.com/isedwards/wis2box-auth/tree/initial-keycloakI'll submit an update later today that
envsubst
to update the host URL to the value of$WIS2BOX_URL
when the nginx container is built<IP-ADDRESS>:8180
).When nginx uses the
auth_request
directive, this calls thewis2box-auth
authorize
endpoint as before. However, instead of validating a token it checks whether the current user's browser has an authenticated session with keycloak (see wis2box_auth/app.py#L69-L7 for the simplified version).I'm in the process of replacing
wis2box-auth
'sadd_token
andremove_token
with an equivalentadd_group
andremove_group
which will be used to grant access based on group membership. User's group credentials are configured in keycloak.