Skip to content

feat: adding a python callout for JWT token validation#275

Open
mateustd-ciandt wants to merge 9 commits intoGoogleCloudPlatform:mainfrom
mateustd-ciandt:python-callouts-extauthz-jwt
Open

feat: adding a python callout for JWT token validation#275
mateustd-ciandt wants to merge 9 commits intoGoogleCloudPlatform:mainfrom
mateustd-ciandt:python-callouts-extauthz-jwt

Conversation

@mateustd-ciandt
Copy link
Copy Markdown
Contributor

This PR implements JWT token validation in the external authorization server.

It allows the server to extract tokens from Authorization headers, validate them using a public key, and add decoded claims as headers to upstream requests.

Also adding a test file as well.

This will use the server at the PR: #272

@mateustd-ciandt mateustd-ciandt requested a review from a team as a code owner September 26, 2025 17:08
Copy link
Copy Markdown
Contributor

@jstraceski jstraceski left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me. The Dockerfile structure may cause some issues though.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This file should probably look like this https://github.com/GoogleCloudPlatform/service-extensions/blob/main/callouts/python/extproc/example/Dockerfile file with a few changes.

namely:
We need to make sure that the default proto path is set to
ARG proto_path="envoy/service/auth/v3/external_auth.proto"

and

COPY ./extproc/service ./extproc/service
COPY ./extproc/ssl_creds ./extproc/ssl_creds

Need to point to the new server directory.

I would also change:

FROM service-callout-common-python

AND

FROM launcher.gcr.io/google/debian12 as service-callout-common-python

to extauth-common-python

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello, pushed some changes so the Dockerfile is more like the reference one! Thanks!

@jstraceski
Copy link
Copy Markdown
Contributor

After we got automated testing working in #272 could you address the new failures @mateustd-ciandt.

@mateustd-ciandt mateustd-ciandt requested review from a team as code owners November 13, 2025 16:28
@mateustd-ciandt
Copy link
Copy Markdown
Contributor Author

@jstraceski updated the test file for this one too! thanks

@snippet-bot
Copy link
Copy Markdown

snippet-bot Bot commented Mar 16, 2026

Here is the summary of changes.

You are about to add 1 region tag.

This comment is generated by snippet-bot.
If you find problems with this result, please file an issue at:
https://github.com/googleapis/repo-automation-bots/issues.
To update this comment, add snippet-bot:force-run label or use the checkbox below:

  • Refresh this comment

@mateustd-ciandt mateustd-ciandt force-pushed the python-callouts-extauthz-jwt branch 2 times, most recently from 8d2623b to ed83c66 Compare March 16, 2026 17:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants