Skip to content
Snippets Groups Projects
  1. Aug 23, 2021
  2. Jul 01, 2021
  3. Jun 09, 2021
  4. Apr 29, 2021
  5. Apr 27, 2021
  6. Apr 22, 2021
  7. Apr 13, 2021
  8. Apr 09, 2021
  9. Apr 08, 2021
  10. Apr 07, 2021
  11. Apr 06, 2021
  12. Mar 30, 2021
    • Jenkins for Software Heritage's avatar
    • Antoine Lambert's avatar
      django: Add OIDCSessionExpiredMiddleware · e5fd97a7
      Antoine Lambert authored
      That middleware detects when a user previously logged in using
      the OpenID Connect authentication backend got his session expired.
      
      In that case it will perform a redirection to a django view whose
      name must be set in the SWH_AUTH_SESSION_EXPIRED_REDIRECT_VIEW
      django setting (typically a logout view).
      
      Related to T3150
    • Antoine Lambert's avatar
      django: Add OIDC Bearer Token authentication backend for DRF views · 0c8c3ce7
      Antoine Lambert authored
      Add a generic Django REST Framework authentication backend enabling to
      authenticate a user using Keycloak and OpenID Connect bearer tokens.
      
      The backend can be easily plugged into a DRF application by:
      
        * adding "swh.auth.django.backends.OIDCBearerTokenAuthentication"
          to the REST_FRAMEWORK["DEFAULT_AUTHENTICATION_CLASSES"]
          django setting.
      
        * configuring Keycloak URL, realm and client by adding
          SWH_AUTH_SERVER_URL, SWH_AUTH_REALM_NAME and SWH_AUTH_CLIENT_ID
          in django settings
      
      Users will then be able to perform authenticated Web API calls by
      sending their refresh token in HTTP Authorization headers.
      
      Related to T3150
      0c8c3ce7
    • Antoine Lambert's avatar
      django: Add OIDC Authorization code PKCE authentication backend · 367ead11
      Antoine Lambert authored
      Add a generic Django authentication backend and related login / logout
      views enabling to authenticate a user using Keycloak and the OpenID
      Connect authorization code flow with PKCE ("Proof Key for Code Exchange").
      
      The backend can be easily plugged into any django application by:
      
       - adding "swh.auth.django.backends.OIDCAuthorizationCodePKCEBackend"
         to the AUTHENTICATION_BACKENDS django setting
      
       - configuring Keycloak by adding SWH_AUTH_SERVER_URL, SWH_AUTH_REALM_NAME
         and SWH_AUTH_CLIENT_ID in django settings
      
       - adding swh.auth.django.views.urlpatterns to the django application URLs
      
       - using the dedicated django views: "oidc-login" and "oidc-logout"
      
      Related to T3150
      367ead11
  13. Mar 26, 2021
  14. Mar 25, 2021
  15. Mar 24, 2021
  16. Mar 23, 2021
Loading