Skip to content

Fix remove_url_auth leaving username-only credentials in URLs - #2417

Open
Shubham-Padkonde wants to merge 1 commit into
geopython:masterfrom
Shubham-Padkonde:fix/remove-url-auth-username-only
Open

Shubham-Padkonde wants to merge 1 commit into
geopython:masterfrom
Shubham-Padkonde:fix/remove-url-auth-username-only

Conversation

@Shubham-Padkonde

Copy link
Copy Markdown
Contributor

remove_url_auth removed the literal "{username}:{password}@" string, so a URL with only a username (e.g. "mqtt://TOKEN@broker:1883", a common way to pass a token) became "TOKEN:None@" and nothing was removed. The broker URL is published in the AsyncAPI document and in broker_safe_url, so the token was exposed. Rebuild the netloc without the userinfo instead of doing a string replace.

Overview

Related Issue / discussion

Additional information

Dependency policy (RFC2)

  • I have ensured that this PR meets RFC2 requirements

Updates to public demo

Contributions and licensing

(as per https://github.com/geopython/pygeoapi/blob/master/CONTRIBUTING.md#contributions-and-licensing)

  • I'd like to contribute [feature X|bugfix Y|docs|something else] to pygeoapi. I confirm that my contributions to pygeoapi will be compatible with the pygeoapi license guidelines at the time of contribution
  • I have already previously agreed to the pygeoapi Contributions and Licensing Guidelines

remove_url_auth removed the literal "{username}:{password}@" string, so a
URL with only a username (e.g. "mqtt://TOKEN@broker:1883", a common way
to pass a token) became "TOKEN:None@" and nothing was removed. The
broker URL is published in the AsyncAPI document and in broker_safe_url,
so the token was exposed. Rebuild the netloc without the userinfo
instead of doing a string replace.

This branch has not been deployed

No deployments
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.

1 participant