Estoy usando oauth2_provider + rest_framework . He configurado varias aplicaciones cliente y se autentican y reciben tokens de acceso con éxito.
Me gustaría tener la aplicación del cliente en la solicitud (por ejemplo, request.client ). Tal vez debería crear algún tipo de middleware que lo configure, pero no estoy seguro de cuál es la forma correcta de hacerlo. ¿O tal vez esta funcionalidad ya la proporciona oauth2_provider / oauthlib y la he pasado por alto?
El cliente debe configurarse cuando:
Python v3.5.3, Django v1.10.6
oauth2_provider AccessToken tiene una clave externa para la aplicación que emitió ese token
Puede obtener el formulario de solicitud del token de acceso de esta manera: application = request.auth.application
La clase AbstractApplication tiene una clave externa para settings.AUTH_USER_MODEL https://github.com/evonove/django-oauth-toolkit/blob/0.12.0/oauth2_provider/models.py#L62
Entonces, si está utilizando la clase de Application predeterminada, puede obtener los clientes mediante request.user.oauth2_providers_applications