ory / oathkeeper

A cloud native Identity & Access Proxy / API (IAP) and Access Control Decision API that authenticates, authorizes, and mutates incoming HTTP(s) requests. Inspired by the BeyondCorp / Zero Trust white paper. Written in Go.
https://www.ory.sh/?utm_source=github&utm_medium=banner&utm_campaign=hydra
Apache License 2.0
3.2k stars 349 forks source link

feat: add `delegate` authenticator #1153

Open yunier-rojas opened 4 months ago

yunier-rojas commented 4 months ago

Problem Summary

This merge request addresses issue #669 surrounding the behavior of the "noop" authentication method, which underwent changes in commit 6f8ab4f7d. Reverting these changes to restore the previous behavior is challenging due to the potential for breaking existing systems. To mitigate this risk, we propose implementing a new authenticator named "delegate" to replicate the original behavior of the "noop" method.

Ideal Solution

To address this issue, our proposed solution is to implement a new authenticator named "delegate" that replicates the original behavior of the "noop" method. This approach ensures that existing systems in production remain stable and unaffected by changes, while also providing users who prefer the old behavior with an option to utilize it. By introducing the "delegate" authenticator, we mitigate the risk of breaking changes while offering flexibility to users who require the previous behavior.

Changes Proposed

  1. New Authenticator Module: This MR adds a new authenticator module named "delegate" to replicate the original behavior of the "noop" method.

  2. Integration Tests: Integration tests will be added to validate the functionality of the "delegate" authenticator, ensuring compatibility and reliability.

  3. Documentation Updates: Documentation will be updated to include details about the new "delegate" authenticator, its configuration options, and usage examples.

Related Issues

https://github.com/ory/oathkeeper/issues/1152 https://github.com/ory/oathkeeper/issues/669

closes 1152

Related issue(s)

Checklist

Further Comments

codecov[bot] commented 4 months ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 77.98%. Comparing base (8fc9b7a) to head (2bbd810). Report is 2 commits behind head on master.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #1153 +/- ## ========================================== + Coverage 77.90% 77.98% +0.07% ========================================== Files 80 81 +1 Lines 3929 3942 +13 ========================================== + Hits 3061 3074 +13 Misses 595 595 Partials 273 273 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.