Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CIBA Customization Extensibility Points #1497

Merged
merged 6 commits into from
Jan 3, 2024
Merged

Conversation

josephdecock
Copy link
Member

This adds extensibility points to CIBA to allow for custom request and response parameters.

  • Adds a new custom backchannel authentication request validator hook, similar to AddCustomAuthorizeRequestValidator and AddCustomTokenRequestValidator
  • Adds a context dictionary to the ciba validation result, which then feeds into similar context dictionaries in the response to the client, notification to the user, and record in the database

@josephdecock
Copy link
Member Author

This PR began as #1361, but that PR didn't get merged for a long time, so I rebased it and created a new PR here. @gislikonrad - thanks for raising this issue and submitting the PR back in the summer! Do you think this new approach will meet your needs?

@brockallen brockallen added this to the 7.0.0 milestone Dec 19, 2023
@brockallen brockallen added the enhancement New feature or request label Dec 19, 2023
@brockallen
Copy link
Member

Two thoughts:

  1. I like the concept that it's a "context", but it's also "custom". So maybe a better name to indicate that it's custom? The token EP has "Custom", but maybe "CustomContext"?

  2. We don't have any tests for this new feature. We should (both for the new custom validator extensibility point, but also emitting custom results that flatten into the response payload).

Copy link
Contributor

@gislikonrad gislikonrad left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This would work for us at our organization. I just had some comments on the naming of the new properties in the backchannel authentication models and contexts.

Result -> ValidationResult makes the code clearer and avoids an awkward Result.Result construction
This is a dependency on an internal class that is never used
- Custom validators are invoked
- Custom input can be processed in custom validators
- Complex properties in the custom properties are flattened into the JSON of the response to the client
- Custom properties are passed to the login notification service
@brockallen brockallen merged commit d83623e into main Jan 3, 2024
5 checks passed
@brockallen brockallen deleted the joe/customizing-ciba branch January 3, 2024 15:24
@josephdecock josephdecock mentioned this pull request Jan 5, 2024
@josephdecock josephdecock linked an issue Jan 6, 2024 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add custom properties to CIBA response
3 participants