-
Notifications
You must be signed in to change notification settings - Fork 343
feat: Enable mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE is not set, if the MWID/X.509 cert sources detected #1848
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
feat: Enable mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE is not set, if the MWID/X.509 cert sources detected #1848
Conversation
84bf5ac to
b13eb7a
Compare
…f not set, if the MWID/X.509 cert sources detected Signed-off-by: Radhika Agrawal <[email protected]>
Signed-off-by: Radhika Agrawal <[email protected]>
Signed-off-by: Radhika Agrawal <[email protected]>
…or updates to docsting and indentation Signed-off-by: Radhika Agrawal <[email protected]>
…he json and return the exact value set by user, and not handling the case when user is setting value to an unsupported value Signed-off-by: Radhika Agrawal <[email protected]>
Signed-off-by: Radhika Agrawal <[email protected]>
Signed-off-by: Radhika Agrawal <[email protected]>
Signed-off-by: Radhika Agrawal <[email protected]>
…thod to catch exceptions and update docstring Signed-off-by: Radhika Agrawal <[email protected]>
902d039 to
09b6a1e
Compare
andyrzhao
left a comment
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.
LGTM overall. Please address other reviewer's comments. Thanks!
Signed-off-by: Radhika Agrawal <[email protected]>
andyrzhao
left a comment
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.
LGTM. Thanks!
daniel-sanche
left a comment
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.
Left a couple suggestions to consider, but LGTM
Signed-off-by: Radhika Agrawal <[email protected]>
63e678f
| return crypto.dump_privatekey(crypto.FILETYPE_PEM, pkey) | ||
|
|
||
|
|
||
| def check_use_client_cert(): |
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.
Please note: That here the function is emitting str instead of boolean because we want to also consider the value set by user for GOOGLE_API_USE_CLIENT_CERTIFICATE
… enables mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert sources detected (#1859) Add public wrapper for check_use_client_cert which enables mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert sources detected. Also, fix check_use_client_cert to return boolean value. Change #1848 added the check_use_client_cert method that helps know if client cert should be used for mTLS connection. However, that was in a private class, thus, created a public wrapper of the same function so that it can be used by python Client Libraries. Also, updated check_use_client_cert to return a boolean value instead of existing string value for better readability and future scope. --------- Signed-off-by: Radhika Agrawal <[email protected]> Co-authored-by: Daniel Sanche <[email protected]>
Librarian Version: v0.5.0 Language Image: us-central1-docker.pkg.dev/cloud-sdk-librarian-prod/images-prod/python-librarian-generator:latest <details><summary>google-auth: 2.43.0</summary> ## [2.43.0](v2.42.1...v2.43.0) (2025-11-05) ### Features * Add public wrapper for _mtls_helper.check_use_client_cert which enables mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert sources detected (#1859) ([1535ecc](1535eccb)) * Enable mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE is not set, if the MWID/X.509 cert sources detected (#1848) ([395e405](395e405b)) * onboard `google-auth` to librarian (#1838) ([c503eaa](c503eaa5)) </details>
The Python SDK will use a hybrid approach for mTLS enablement:
** This change also adds the helper method
check_use_client_certand it's unit test, which will be used for checking the criteria for setting the mTLS to true** This change is only for Auth-Library, other changes will be created for Client-Library use-cases.