From 3c32cde2850fdbf1536ebd17ef2b797c96781dfa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Valenta?= <git@imaniti.org> Date: Wed, 12 Jul 2023 21:59:20 +0900 Subject: [PATCH] add debug tree command --- Dockerfile | 5 ++++ server/server/authentication/__init__.py | 38 ++++++++++++------------ 2 files changed, 24 insertions(+), 19 deletions(-) diff --git a/Dockerfile b/Dockerfile index 6cd6a4a3..01003b8e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,6 +4,9 @@ RUN mkdir /app RUN curl -fsSL https://deb.nodesource.com/setup_19.x | bash - RUN apt-get -y install make autoconf automake libtool pkg-config nodejs git python3-pip +# --- +RUN apt-get -y install tree +# --- RUN rm -rf /var/lib/apt/lists/* WORKDIR /app @@ -26,6 +29,8 @@ RUN cd frontend; \ cp dist/favicon.ico ../server/server/static/; \ rm -fr dist +RUN tree + RUN bash -c "adduser --disabled-login --quiet --gecos app app && \ chmod -R o+r /app/ && \ chmod o+x /app/server/run.sh" diff --git a/server/server/authentication/__init__.py b/server/server/authentication/__init__.py index 39a086d6..80804f8d 100644 --- a/server/server/authentication/__init__.py +++ b/server/server/authentication/__init__.py @@ -9,25 +9,25 @@ import werkzeug def authentication_required(func: typing.Callable) -> typing.Callable: @functools.wraps(func) def decorator(*args, **kwargs) -> typing.Any: - #if "token" not in flask.request.cookies: - #return flask.redirect(flask.url_for("oidc.login")) - - #try: - #claims = authlib.jose.jwt.decode( - #flask.request.cookies["token"], - #flask.current_app.config["JWT_SECRET_KEY"], - #) - #except authlib.jose.JoseError as exception: - #raise werkzeug.exceptions.BadRequest from exception - - #try: - #claims.validate() - #except authlib.jose.JoseError as exception: - #flask.current_app.logger.info( - #"Claim validation failed for user %s: %s", claims["sub"], exception - #) - - #return flask.redirect(flask.url_for("oidc.login")) + if "token" not in flask.request.cookies: + return flask.redirect(flask.url_for("oidc.login")) + + try: + claims = authlib.jose.jwt.decode( + flask.request.cookies["token"], + flask.current_app.config["JWT_SECRET_KEY"], + ) + except authlib.jose.JoseError as exception: + raise werkzeug.exceptions.BadRequest from exception + + try: + claims.validate() + except authlib.jose.JoseError as exception: + flask.current_app.logger.info( + "Claim validation failed for user %s: %s", claims["sub"], exception + ) + + return flask.redirect(flask.url_for("oidc.login")) return func(*args, **kwargs) -- GitLab