swagger-codegen-generators
swagger-codegen-generators copied to clipboard
[Python] API Key sharing between Configuration instances (port the 2.x fix)
Description
Swagger-codegen version
3.0.22
In 3.0.x the instances of the Configuration Python class generated still share the api_key. This has been fixed in 2.4: https://github.com/swagger-api/swagger-codegen/issues/9117
Steps to reproduce
I confirmed that, after creating 2 instances of Configuration changing the content of the api_key dict on one instance changes its content in the other:
>>> from my_client import Configuration
>>> c1 = Configuration()
>>> c1.api_key['Authorization'] = "c1 auth"
>>> c2 = Configuration()
>>> c2.api_key['Authorization'] = "c2 auth"
>>> for c in [c1, c2]:
... print(c.api_key)
...
{'Authorization': 'c2 auth'}
{'Authorization': 'c2 auth'}
Related issues/PRs
https://github.com/swagger-api/swagger-codegen/issues/9117
Suggest a fix/enhancement
The fix for https://github.com/swagger-api/swagger-codegen/issues/9117 (https://github.com/swagger-api/swagger-codegen/pull/9130) could conceivably be ported to 3.0.0.
This really should be fixed, it's a big security problem