#authlib
Вопрос:
Authlib имеет хорошую интеграцию с популярным модулем запросов. Например, для потока учетных данных клиента я мог бы сделать следующее:
from authlib.integrations.requests_client import OAuth2Session client = OAuth2Session( client_id="my_client_id", client_secret="my_client_secret", token_endpoint="https://url-of-identity-provider.com/protocol/openid-connect/token") client.get("https://protected-resource.com/")
Теперь я спрашиваю, как использовать эту интеграцию напрямую с поставщиком OpenID Connect. В моем случае провайдером будет https://url-of-identity-provider.com
тот, у которого есть своя конфигурация https://url-of-identity-provider.com/.well-known/openid-configuration
.
То, что я ищу, — это что-то вроде вышеперечисленного:
client = OAuth2Session( client_id=..., client_secret=..., server_metadata_url="https://url-of-identity-provider.com" ) client.get( "https://protected-resource.com" )
Или еще один пример того, как проанализировать token_url
конфигурацию openid connect (конечно, я мог бы сделать это сам, самостоятельно запросив конечную точку конфигурации и проанализировав ответ, но я не хочу этого делать, а скорее позволю authlib справиться с этим!).