Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 13 Current »

Some ARCHBOM tickets marked as DONE have an unfinished label because they weren’t actually completed, but just closed.

So you want to touch JWTs? may be useful for anyone working on any of these challenges.

Easier to use

These changes should make authentication easier to use for engineers.

  • IN PROGRESS ARCHBOM-1218 - Getting issue details... STATUS

    • A fresh ticket is probably in order here. I’m not clear on the final proposed solution, and where we need monitoring along the way, but this definitely adds complexity to our authentication, and I think there is a simpler way.

    • ARCHBOM-1181 - Getting issue details... STATUS (“unfinished”)

      • Not sure if this has any additional useful context, or is redundant and should be forgotten.

  • IN FC-18 ARCHBOM-107 - Getting issue details... STATUS

    • AUTHENTICATION_CLASSES is a default setting for DRF endpoints.

    • This would enable the use of JwtAuthentication from most edx-platform DRF endpoints.

    • DRF endpoints that override the default should be reviewed to see if the override can be deleted, once there is a sane default.

    • Order is an open question: JwtAuthentication before or after SessionAuthentication?

      • Unfortunately, due to differences noted in DEPR(#165), order matters.

      • Also, order matters until ARCHBOM-1218 is implemented.

    • For rollout, propose to add a custom version of BasicAuthentication in edx-platform that adds some monitoring to see how and if it is used in Production.

      • It would be good to drop BasicAuthentication from the defaults if we don’t actually want it.

  • IN FC-18 https://github.com/openedx/edx-drf-extensions/issues/332

  • IN FC-18 ARCHBOM-1183 - Getting issue details... STATUS (“unfinished”)

  • https://github.com/openedx/public-engineering/issues/165

    • This may be complicated without further product input, but maybe the solution can be readied regardless.

  • https://github.com/openedx/edx-drf-extensions/issues/328

  • ARCHBOM-1074 - Getting issue details... STATUS (“unfinished”)

  • Adding an endpoint to LMS to expose the public signing keys. (Unticketed)

    • This would simplify key rotation. It came up at 2U for non-Open edX platform applications that may use the JWT cookie for SSO.

Simpler authentication

These changes should simplify authentication, which may affect engineers in certain cases, but possibly not as directly as the “Easier to use” category.

Authorization

The following tickets may be authorization related, and not really authentication related.

  • ARCHBOM-1170 - Getting issue details... STATUS (“unfinished”)

    • This is unblocked, because we no longer return expired JWTs for restricted applications.

  • ARCHBOM-1162 - Getting issue details... STATUS (“unfinished”)

    • Note: The code has since been updated to use, but override, the shared JwtAuthentication class to update global staff role during login.

Observability

Changes that might help with observability while monitoring other fixes. These should be kept in mind as we consider other dangerous changes that we with to monitor.

  • ARCHBOM-545 - Getting issue details... STATUS (“unfinished”)

    • I have since realized that MonitoringCustomMetricsMiddleware isn’t deployed by enough services, so might be better to just keep calling set_custom_attribute and hopefully the final call wins.

  • ARCHBOM-142 - Getting issue details... STATUS (“unfinished”)

  • ARCHBOM-158 - Getting issue details... STATUS (“unfinished”)

  • (Unticketed) It would be nice to have a failed_jwt_unauthenticated_user_id to know who may have been trying to authenticate.

Bugs?

  • ARCHBOM-2028 - Getting issue details... STATUS

  • ARCHBOM-2031 - Getting issue details... STATUS

  • ARCHBOM-1262 - Getting issue details... STATUS (“unfinished”)

  • ARCHBOM-543 - Getting issue details... STATUS (“unfinished”)

    • It is possible this may pass now that we are using a different library under the covers?

  • ARCHBOM-1152 - Getting issue details... STATUS

Resources

Above tickets were curated from the following:

  • No labels